ccproxy.api.dependencies¶
ccproxy.api.dependencies
¶
Shared dependencies for CCProxy API Server.
get_cached_settings
¶
Get cached settings from app state.
This avoids recomputing settings on every request by using the settings instance computed during application startup.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
request
|
Request
|
FastAPI request object |
required |
Returns:
Type | Description |
---|---|
Settings
|
Settings instance from app state |
Raises:
Type | Description |
---|---|
RuntimeError
|
If settings are not available in app state |
Source code in ccproxy/api/dependencies.py
get_cached_claude_service
¶
Get cached ClaudeSDKService from app state.
This avoids recreating the ClaudeSDKService on every request by using the service instance created during application startup.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
request
|
Request
|
FastAPI request object |
required |
Returns:
Type | Description |
---|---|
ClaudeSDKService
|
ClaudeSDKService instance from app state |
Raises:
Type | Description |
---|---|
RuntimeError
|
If ClaudeSDKService is not available in app state |
Source code in ccproxy/api/dependencies.py
get_claude_service
¶
Get Claude SDK service instance.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
settings
|
SettingsDep
|
Application settings dependency |
required |
Returns:
Type | Description |
---|---|
ClaudeSDKService
|
Claude SDK service instance |
Source code in ccproxy/api/dependencies.py
get_credentials_manager
¶
Get credentials manager instance.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
settings
|
SettingsDep
|
Application settings dependency |
required |
Returns:
Type | Description |
---|---|
CredentialsManager
|
Credentials manager instance |
Source code in ccproxy/api/dependencies.py
get_proxy_service
¶
Get proxy service instance.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
request
|
Request
|
FastAPI request object (for app state access) |
required |
settings
|
SettingsDep
|
Application settings dependency |
required |
credentials_manager
|
Annotated[CredentialsManager, Depends(get_credentials_manager)]
|
Credentials manager dependency |
required |
Returns:
Type | Description |
---|---|
ProxyService
|
Proxy service instance |
Source code in ccproxy/api/dependencies.py
get_observability_metrics
¶
Get observability metrics instance.
Returns:
Type | Description |
---|---|
PrometheusMetrics
|
PrometheusMetrics instance |
get_log_storage
async
¶
Get log storage from app state.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
request
|
Request
|
FastAPI request object |
required |
Returns:
Type | Description |
---|---|
SimpleDuckDBStorage | None
|
SimpleDuckDBStorage instance if available, None otherwise |
Source code in ccproxy/api/dependencies.py
get_duckdb_storage
async
¶
Get DuckDB storage from app state (backward compatibility).
Parameters:
Name | Type | Description | Default |
---|---|---|---|
request
|
Request
|
FastAPI request object |
required |
Returns:
Type | Description |
---|---|
SimpleDuckDBStorage | None
|
SimpleDuckDBStorage instance if available, None otherwise |