Warning

This document is for an old release of Galaxy. You can alternatively view this page in the latest release if it exists or view the top of the latest release's documentation.

Source code for galaxy.webapps.galaxy.api.trs_consumer

"""Proxy requests to GA4GH TRS servers (e.g. Dockstore).

Information on TRS can be found at https://github.com/ga4gh/tool-registry-service-schemas.
"""

from galaxy.web import expose_api
from galaxy.workflow.trs_proxy import TrsProxy
from . import (
    BaseGalaxyAPIController,
    depends,
)


[docs]class TrsConsumeAPIController(BaseGalaxyAPIController): """Controller for TRS proxying.""" _trs_proxy: TrsProxy = depends(TrsProxy)
[docs] @expose_api def get_servers(self, trans, *args, **kwd): return self._trs_proxy.get_servers()
[docs] @expose_api def get_tool(self, trans, *args, **kwd): return self._trs_proxy.get_server(kwd.pop("trs_server")).get_tool(**kwd)
[docs] @expose_api def get_versions(self, trans, *args, **kwd): return self._trs_proxy.get_server(kwd.pop("trs_server")).get_versions(**kwd)
[docs] @expose_api def get_version(self, trans, *args, **kwd): return self._trs_proxy.get_server(kwd.pop("trs_server")).get_version(**kwd)