Warning

This document is for an in-development version 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.

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 url_path: str

Base with optional prefix added.

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) WorkRequestContext[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).