43 lines
1.0 KiB
Go
43 lines
1.0 KiB
Go
package handler
|
|
|
|
import (
|
|
"github.com/vaultdrop/backend/internal/auth"
|
|
"github.com/vaultdrop/backend/internal/service"
|
|
)
|
|
|
|
type Handler struct {
|
|
Resource *ResourceHandler
|
|
OCR *OCRHandler
|
|
Health *HealthHandler
|
|
Auth *auth.AuthHandler
|
|
Share *ShareHandler
|
|
Device *DeviceHandler
|
|
Sync *SyncHandler
|
|
}
|
|
|
|
func New(
|
|
resourceSvc *service.ResourceService,
|
|
ocrSvc *service.OCRService,
|
|
urlSvc *service.URLService,
|
|
authHandler *auth.AuthHandler,
|
|
conversionSvc *service.ConversionService,
|
|
rebacSvc *service.RebacService,
|
|
placementSvc *service.PlacementService,
|
|
syncSvc *service.SyncService,
|
|
) *Handler {
|
|
return &Handler{
|
|
Resource: &ResourceHandler{
|
|
resources: resourceSvc,
|
|
urls: urlSvc,
|
|
ocr: ocrSvc,
|
|
conversion: conversionSvc,
|
|
},
|
|
OCR: &OCRHandler{ocr: ocrSvc, resources: resourceSvc},
|
|
Health: &HealthHandler{ocr: ocrSvc},
|
|
Auth: authHandler,
|
|
Share: &ShareHandler{rebac: rebacSvc},
|
|
Device: &DeviceHandler{placement: placementSvc},
|
|
Sync: &SyncHandler{sync: syncSvc},
|
|
}
|
|
}
|