leaf-library-3/cmd/wire_gen.go

76 lines
3.7 KiB
Go
Raw Normal View History

2024-12-05 17:44:29 +00:00
// 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 cmd
import (
"github.com/google/wire"
"leafdev.top/Leaf/leaf-library-3/internal/api"
"leafdev.top/Leaf/leaf-library-3/internal/api/grpc"
"leafdev.top/Leaf/leaf-library-3/internal/api/grpc/interceptor"
"leafdev.top/Leaf/leaf-library-3/internal/api/grpc/v1/documents"
"leafdev.top/Leaf/leaf-library-3/internal/api/http"
2024-12-06 18:44:32 +00:00
"leafdev.top/Leaf/leaf-library-3/internal/api/http/controller"
2024-12-05 17:44:29 +00:00
"leafdev.top/Leaf/leaf-library-3/internal/base"
"leafdev.top/Leaf/leaf-library-3/internal/base/conf"
"leafdev.top/Leaf/leaf-library-3/internal/base/logger"
"leafdev.top/Leaf/leaf-library-3/internal/base/milvus"
"leafdev.top/Leaf/leaf-library-3/internal/base/orm"
"leafdev.top/Leaf/leaf-library-3/internal/base/redis"
"leafdev.top/Leaf/leaf-library-3/internal/base/s3"
"leafdev.top/Leaf/leaf-library-3/internal/base/server"
"leafdev.top/Leaf/leaf-library-3/internal/batch"
"leafdev.top/Leaf/leaf-library-3/internal/dao"
"leafdev.top/Leaf/leaf-library-3/internal/router"
2024-12-06 15:38:22 +00:00
"leafdev.top/Leaf/leaf-library-3/internal/services"
"leafdev.top/Leaf/leaf-library-3/internal/services/auth"
2024-12-06 18:44:32 +00:00
"leafdev.top/Leaf/leaf-library-3/internal/services/collection"
"leafdev.top/Leaf/leaf-library-3/internal/services/document"
2024-12-06 15:38:22 +00:00
"leafdev.top/Leaf/leaf-library-3/internal/services/jwks"
"leafdev.top/Leaf/leaf-library-3/internal/services/stream"
2024-12-06 18:44:32 +00:00
"leafdev.top/Leaf/leaf-library-3/internal/services/workspace"
2024-12-05 17:44:29 +00:00
)
// Injectors from wire.go:
func CreateApp() (*base.Application, error) {
config := conf.NewConfig()
loggerLogger := logger.NewZapLogger(config)
2024-12-06 18:44:32 +00:00
db := orm.NewGORM(config, loggerLogger)
query := dao.NewQuery(db)
service := workspace.NewService(config, query)
2024-12-05 17:44:29 +00:00
jwksJWKS := jwks.NewJWKS(config, loggerLogger)
2024-12-06 18:44:32 +00:00
authService := auth.NewService(config, jwksJWKS, loggerLogger)
workspaceController := controller.NewWorkspaceController(service, authService)
collectionService := collection.NewService(config, query)
collectionController := controller.NewCollectionController(collectionService, service, authService)
documentService := document.NewService(config, query)
documentController := controller.NewDocumentController(documentService, collectionService, service, authService)
handlers := http.NewHandler(workspaceController, collectionController, documentController)
middleware := http.NewMiddleware(config, loggerLogger, authService)
2024-12-05 17:44:29 +00:00
routerApi := router.NewApiRoute(handlers, middleware)
swaggerRouter := router.NewSwaggerRoute()
httpServer := server.NewHTTPServer(config, routerApi, swaggerRouter, middleware, loggerLogger)
handler := documents.NewHandler(query)
2024-12-06 18:44:32 +00:00
interceptorAuth := interceptor.NewAuth(authService, loggerLogger, config)
2024-12-05 17:44:29 +00:00
interceptorLogger := interceptor.NewLogger(loggerLogger)
grpcInterceptor := grpc.NewInterceptor(interceptorAuth, interceptorLogger)
grpcHandlers := grpc.NewHandler(handler, grpcInterceptor)
apiApi := api.NewApi(grpcHandlers, handlers)
streamService := stream.NewService(config)
2024-12-06 18:44:32 +00:00
servicesService := services.NewService(loggerLogger, jwksJWKS, authService, streamService, service, collectionService, documentService)
2024-12-05 17:44:29 +00:00
redisRedis := redis.NewRedis(config)
batchBatch := batch.NewBatch(loggerLogger)
s3S3 := s3.NewS3(config)
client := milvus.NewService(config, loggerLogger)
2024-12-06 15:38:22 +00:00
application := base.NewApplication(config, httpServer, apiApi, loggerLogger, servicesService, redisRedis, batchBatch, s3S3, db, query, client)
2024-12-05 17:44:29 +00:00
return application, nil
}
// wire.go:
2024-12-06 15:38:22 +00:00
var ProviderSet = wire.NewSet(conf.NewConfig, logger.NewZapLogger, orm.NewGORM, dao.NewQuery, redis.NewRedis, s3.NewS3, milvus.NewService, batch.NewBatch, services.Provide, api.Provide, router.Provide, server.NewHTTPServer, base.NewApplication)