| """ |
| FastAPI dependency injection helpers. |
| |
| Routes use these to pull services off the request-scoped container. |
| """ |
|
|
| from __future__ import annotations |
|
|
| from fastapi import Request |
|
|
| from api.container import ServiceContainer |
|
|
|
|
| def get_container(request: Request) -> ServiceContainer: |
| """Returns the app-wide ServiceContainer.""" |
| return request.app.state.container |
|
|
|
|
| |
| def get_settings(request: Request): |
| return get_container(request).settings |
|
|
|
|
| def get_detection_service(request: Request): |
| return get_container(request).detection_service |
|
|
|
|
| def get_recognition_service(request: Request): |
| return get_container(request).recognition_service |
|
|
|
|
| def get_search_service(request: Request): |
| return get_container(request).search_service |
|
|
|
|
| def get_analysis_service(request: Request): |
| return get_container(request).analysis_service |
|
|
|
|
| def get_job_service(request: Request): |
| return get_container(request).job_service |
|
|
|
|
| def get_osint_service(request: Request): |
| return get_container(request).osint_service |
|
|
|
|
| def get_face_intelligence_service(request: Request): |
| return get_container(request).face_intelligence_service |
|
|
|
|
| def get_face_index_service(request: Request): |
| return get_container(request).face_index_service |
|
|
|
|
| def get_forensic_metadata_service(request: Request): |
| return get_container(request).forensic_metadata_service |
|
|
|
|
| def get_object_intelligence_service(request: Request): |
| return get_container(request).object_intelligence_service |
|
|
|
|
| def get_location_intelligence_service(request: Request): |
| return get_container(request).location_intelligence_service |
|
|
|
|
| def get_correlation_engine_service(request: Request): |
| return get_container(request).correlation_engine_service |
|
|
|
|
| def get_provider_service(request: Request): |
| return get_container(request).provider_service |
|
|
|
|
| def get_cache_service(request: Request): |
| return get_container(request).cache_service |
|
|
|
|
| def get_health_service(request: Request): |
| return get_container(request).health_service |
|
|
|
|
| def get_export_service(request: Request): |
| return get_container(request).export_service |
|
|
|
|
| def get_metrics(request: Request): |
| return get_container(request).metrics |
|
|