File size: 1,461 Bytes
aac350d
 
 
 
 
 
 
 
23d337e
aac350d
 
 
 
 
 
 
 
 
 
 
 
 
23d337e
aac350d
 
 
 
 
 
 
 
 
 
23d337e
aac350d
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
"""
Services layer β€” business logic between the REST API and the
orchestrator.

Each service owns one concern:
  - DetectionService     β€” detect-only jobs
  - RecognitionService   β€” recognize-against-gallery jobs
  - SearchService        β€” scrape + reverse-image-search jobs
  - AnalysisService      β€” image-analysis / metadata / forensics jobs
  - JobService           β€” full-pipeline orchestration + persistence
  - ProviderService      β€” list/get provider info
  - CacheService         β€” cache inspection + invalidation
  - HealthService        β€” system + per-provider health
  - ExportService        β€” export job results (JSON)

All services receive their dependencies via constructor.  The DI
container in api/deps.py wires them up once at app startup.
"""

from services.detection_service import DetectionService
from services.recognition_service import RecognitionService
from services.search_service import SearchService
from services.analysis_service import AnalysisService
from services.job_service import JobService
from services.provider_service import ProviderService
from services.cache_service import CacheService
from services.health_service import HealthService
from services.export_service import ExportService

__all__ = [
    "DetectionService",
    "RecognitionService",
    "SearchService",
    "AnalysisService",
    "JobService",
    "ProviderService",
    "CacheService",
    "HealthService",
    "ExportService",
]