galaxy.work package

Submodules

galaxy.work.context module

class galaxy.work.context.WorkRequestContext(app, user=None, history=None, workflow_building_mode=False, url_builder=None, galaxy_session: GalaxySession | None = None)[source]

Bases: ProvidesHistoryContext

Stripped down implementation of Galaxy web transaction god object for work request handling outside of web threads - uses mix-ins shared with GalaxyWebTransaction to provide app, user, and history context convenience methods - but nothing related to HTTP handling, mako views, etc….

Things that only need app shouldn’t be consuming trans - but there is a need for actions potentially tied to users and histories and hopefully this can define that stripped down interface providing access to user and history information - but not dealing with web request and response objects.

__init__(app, user=None, history=None, workflow_building_mode=False, url_builder=None, galaxy_session: GalaxySession | None = None)[source]
property app

Provide access to the Galaxy app object.

property url_builder

Provide access to Galaxy URLs (if available).

Parameters:

qualified (bool) – if True, the fully qualified URL is returned, else a relative URL is returned (default False).

get_history(create=False)[source]
property history

Provide access to the user’s current history model object.

Return type:

Optional[galaxy.model.History]

get_user()[source]

Return the current user if logged in or None.

get_current_user_roles()[source]
set_user(user)[source]

Set the current user.

property user

Return the current user if logged in or None.

class galaxy.work.context.GalaxyAbstractRequest[source]

Bases: object

Abstract interface to provide access to some request properties.

abstract property base: str

Base URL of the request.

abstract property host: str

The host address.

abstract property is_secure: bool

Was this a secure (https) request.

Return cookie.

class galaxy.work.context.GalaxyAbstractResponse[source]

Bases: object

Abstract interface to provide access to some response utilities.

abstract property headers: dict

The response headers.

set_content_type(content_type: str)[source]

Sets the Content-Type header

get_content_type()[source]

Set a cookie.

class galaxy.work.context.SessionRequestContext(**kwargs)[source]

Bases: WorkRequestContext

Like WorkRequestContext, but provides access to request.

__init__(**kwargs)[source]
property host
property request: GalaxyAbstractRequest
property response: GalaxyAbstractResponse
get_galaxy_session()[source]
set_history(history)[source]
galaxy.work.context.proxy_work_context_for_history(trans: ProvidesHistoryContext, history: History | None = None, workflow_building_mode=False)[source]

Create a WorkContext for supplied context with potentially different history.

This provides semi-structured access to a transaction/work context with a supplied target history that is different from the user’s current history (which also might change during the request).