Files
gb28181/internal/app/wire_gen.go
T
2026-04-10 22:20:14 +08:00

70 lines
2.2 KiB
Go

// Code generated by Wire. DO NOT EDIT.
//go:generate go run -mod=mod github.com/google/wire/cmd/wire
//go:build !wireinject
// +build !wireinject
package app
import (
"github.com/gowvp/owl/internal/conf"
"github.com/gowvp/owl/internal/core/metadata/metadataapi"
"github.com/gowvp/owl/internal/data"
"github.com/gowvp/owl/internal/web/api"
"github.com/gowvp/owl/pkg/gbs"
"github.com/ixugo/goddd/domain/version/versionapi"
"log/slog"
"net/http"
)
// Injectors from wire.go:
func wireApp(bc *conf.Bootstrap, log *slog.Logger) (http.Handler, func(), error) {
db, err := data.SetupDB(bc)
if err != nil {
return nil, nil, err
}
core := versionapi.NewVersionCore(db)
versionapiAPI := versionapi.New(core)
smsCore := api.NewSMSCore(db, bc)
smsAPI := api.NewSmsAPI(smsCore)
storer := api.NewIPCStore(db)
uniqueidCore := api.NewUniqueID(db)
adapter := api.NewGBAdapter(storer, uniqueidCore)
server, cleanup := gbs.NewServer(bc, adapter, smsCore)
ipcBundle := api.NewIPCCoreWithProtocols(storer, uniqueidCore, adapter, smsCore, server, bc)
recordingStorer := api.NewRecordingStore(db)
smsProvider := api.NewSMSProviderAdapter(smsCore)
recordingCore := api.NewRecordingCore(recordingStorer, bc, smsProvider)
webHookAPI := api.NewWebHookAPI(smsCore, bc, server, ipcBundle, recordingCore)
ipcapi := api.NewIPCAPI(ipcBundle, recordingCore)
configAPI := api.NewConfigAPI(db, bc)
userAPI := api.NewUserAPI(bc)
eventCore := api.NewEventCore(db, bc)
aiWebhookAPI := api.NewAIWebhookAPIWithDeps(bc, eventCore, ipcBundle)
eventAPI := api.NewEventAPI(eventCore, bc)
recordingAPI := api.NewRecordingAPI(recordingCore, bc)
metadataCore := metadataapi.NewMetadataCore(db)
metadataAPI := metadataapi.NewMetadataAPI(metadataCore)
usecase := &api.Usecase{
Conf: bc,
DB: db,
Version: versionapiAPI,
SMSAPI: smsAPI,
WebHookAPI: webHookAPI,
UniqueID: uniqueidCore,
GB28181API: ipcapi,
ConfigAPI: configAPI,
SipServer: server,
UserAPI: userAPI,
AIWebhookAPI: aiWebhookAPI,
EventAPI: eventAPI,
RecordingAPI: recordingAPI,
MetadataAPI: metadataAPI,
}
handler := api.NewHTTPHandler(usecase)
return handler, func() {
cleanup()
}, nil
}