application.queries.handlers.list_providers_handler¶
src.application.queries.handlers.list_providers_handler
¶
ListProviderConnections query handler.
Handles requests to list provider connections for a user. Returns DTO list (not domain entities) to prevent leaking domain to presentation.
Architecture: - Application layer handler (orchestrates data retrieval) - Returns Result[DTO, str] (explicit error handling) - NO domain events (queries are side-effect free)
Reference
- docs/architecture/cqrs-pattern.md
Classes¶
ProviderConnectionListResult
dataclass
¶
Provider connection list result DTO.
Contains list of connections with summary counts.
Attributes:
| Name | Type | Description |
|---|---|---|
connections |
list[ProviderConnectionResult]
|
List of connection DTOs. |
total_count |
int
|
Total number of connections. |
active_count |
int
|
Number of ACTIVE connections. |
Source code in src/application/queries/handlers/list_providers_handler.py
ListProviderConnectionsHandler
¶
Handler for ListProviderConnections query.
Retrieves all provider connections for a user, optionally filtered to active only.
Dependencies (injected via constructor): - ProviderConnectionRepository: For data retrieval
Source code in src/application/queries/handlers/list_providers_handler.py
Functions¶
__init__
¶
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
connection_repo
|
ProviderConnectionRepository
|
Provider connection repository. |
required |
Source code in src/application/queries/handlers/list_providers_handler.py
handle
async
¶
Handle ListProviderConnections query.
Retrieves connections from repository and maps to DTOs.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
query
|
ListProviderConnections
|
ListProviderConnections query with user ID and filters. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
Success |
ProviderConnectionListResult
|
List of connection DTOs. |
Result[ProviderConnectionListResult, str]
|
Never returns Failure (empty list is valid result). |