framework.data_management.DataSourceManager#

class framework.data_management.DataSourceManager[source]#

Bases: object

Unified data source management system.

Replaces both DataSourceRegistry and DataSourceIntegrationService with a cleaner architecture that supports core and application-specific data sources.

__init__()[source]#
register_provider(provider)[source]#

Register a data source provider.

Providers are queried in registration order (framework providers first, then application providers).

get_responding_providers(request)[source]#

Get all providers that should respond to the current request in registration order.

Parameters:

request (DataSourceRequest) – Data source request with requester information

Returns:

List of providers that should respond in registration order (framework first, then applications)

Return type:

List[DataSourceProvider]

async retrieve_all_context(request, timeout_seconds=30.0)[source]#

Retrieve context from all responding data sources.

Parameters:
  • request (DataSourceRequest) – Data source request with requester information

  • timeout_seconds (float) – Maximum time to wait for all data sources

Returns:

DataRetrievalResult containing all successfully retrieved data

Return type:

DataRetrievalResult

get_provider(provider_name)[source]#

Get a specific data source provider by name.

Parameters:

provider_name (str) – Name of the data source provider to retrieve

Returns:

DataSourceProvider if found, None otherwise

Return type:

DataSourceProvider | None

async retrieve_from_provider(provider_name, request)[source]#

Retrieve data from a specific provider by name.

Parameters:
  • provider_name (str) – Name of the data source provider

  • request (DataSourceRequest) – Data source request

Returns:

DataSourceContext if successful, None if provider not found or retrieval failed

Return type:

DataSourceContext | None