provenaclient.utils.config

Created Date: Tuesday May 28th 2024 +1000 Author: Peter Baker —– Last Modified: Tuesday May 28th 2024 11:18:32 am +1000 Modified By: Peter Baker —– Description: Defines the primary config object for the Provena Client - notably the endpoints. —– HISTORY: Date By Comments ———- — ———————————————————

Classes

APIOverrides

EndpointConfig

Config

Functions

optional_override_prefixor(→ str)

Helper function which performs the API prefixing while being override aware.

Module Contents

provenaclient.utils.config.optional_override_prefixor(domain: str, prefix: str, override: str | None) str[source]

Helper function which performs the API prefixing while being override aware.

If override supplied - uses it directly.

If not, prefixes with protocol and prefix suitably.

Parameters:
  • domain (str) – The domain base

  • prefix (str) – The API prefix

  • override (Optional[str]) – The optional override

Returns:

The URL

Return type:

str

class provenaclient.utils.config.APIOverrides[source]

Bases: pydantic.BaseModel

datastore_api_endpoint_override: str | None = None
auth_api_endpoint_override: str | None = None
registry_api_endpoint_override: str | None = None
prov_api_endpoint_override: str | None = None
search_api_endpoint_override: str | None = None
search_service_endpoint_override: str | None = None
handle_service_api_endpoint_override: str | None = None
jobs_service_api_endpoint_override: str | None = None
keycloak_endpoint_override: str | None = None
class provenaclient.utils.config.EndpointConfig[source]

Bases: pydantic.BaseModel

domain: str
realm_name: str
api_overrides: APIOverrides
class provenaclient.utils.config.Config(domain: str, realm_name: str, api_overrides: APIOverrides = APIOverrides())[source]
_api_config: EndpointConfig
property search_api_endpoint: str

Generate the search api endpoint based on the provided domain, prefix and possible override value.

Returns:

A string containing the search api endpoint.

Return type:

str

property jobs_service_api_endpoint: str

Generate the job api endpoint based on the provided domain, prefix and possible override value.

Returns:

A string containing the job api endpoint.

Return type:

str

property handle_service_api_endpoint: str

Generate the handle_service api endpoint based on the provided domain, prefix and possible override value.

Returns:

A string containing the handle_service api endpoint.

Return type:

str

property search_service_endpoint: str

Generate the search_service api endpoint based on the provided domain, prefix and possible override value.

Returns:

A string containing the search_service api endpoint.

Return type:

str

property auth_api_endpoint: str

Generate the auth api endpoint based on the provided domain, prefix and possible override value.

Returns:

A string containing the auth api endpoint.

Return type:

str

property prov_api_endpoint: str

Generate the prov api endpoint based on the provided domain, prefix and possible override value.

Returns:

A string containing the prov api endpoint.

Return type:

str

property datastore_api_endpoint: str

Generate the datastore api endpoint based on the provided domain, prefix and possible override value.

Returns:

A string containing the datastore api endpoint.

Return type:

str

property registry_api_endpoint: str

Generate the registry api endpoint based on the provided domain, prefix and possible override value.

Returns:

A string containing the registry api endpoint.

Return type:

str

property keycloak_endpoint: str

Generate the keycloak realm endpoint using domain, realm_name and possible override value.

Returns:

A string containing the keycloak realm endpoint.

Return type:

str