// 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 main import ( "geo/internal/biz" "geo/internal/config" "geo/internal/data/impl" "geo/internal/server" "geo/internal/server/router" "geo/internal/service" "geo/utils" "geo/utils/utils_oss" "github.com/gofiber/fiber/v2/log" ) // Injectors from wire.go: // InitializeApp 初始化应用程序 func InitializeApp(configConfig *config.Config, allLogger log.AllLogger) (*server.Servers, func(), error) { db, cleanup := utils.NewGormDb(configConfig) tokenImpl := impl.NewTokenImpl(db) userImpl := impl.NewUserImpl(db) platImpl := impl.NewPlatImpl(db) publishImpl := impl.NewPublishImpl(db) loginRelationImpl := impl.NewLoginRelationImpl(db) publishBiz := biz.NewPublishBiz(configConfig, publishImpl, userImpl, platImpl, tokenImpl, loginRelationImpl) authBiz := biz.NewAuthBiz(configConfig, tokenImpl, userImpl) productImpl := impl.NewProductImpl(db) productSourceImpl := impl.NewProductSourceImpl(db) client, err := utils_oss.NewClient(configConfig) if err != nil { cleanup() return nil, nil, err } productBiz := biz.NewProductBiz(productImpl, productSourceImpl, configConfig, client) appService := service.NewAppService(configConfig, tokenImpl, userImpl, platImpl, publishBiz, authBiz, loginRelationImpl, productBiz) loginService := service.NewLoginService(configConfig, publishBiz, authBiz) articleTypeImpl := impl.NewArticleTypeImpl(db) aiBiz := biz.NewAiBiz(platImpl, articleTypeImpl) publishService := service.NewPublishService(configConfig, publishBiz, authBiz, db, aiBiz) collectImpl := impl.NewCollectImpl(db) collectTaskImpl := impl.NewCollectTaskImpl(db) productService := service.NewProductService(configConfig, productImpl, authBiz, productBiz, aiBiz, collectImpl, collectTaskImpl) productSourceService := service.NewProductSourceService(configConfig, productImpl, authBiz, aiBiz, productBiz, productSourceImpl, publishBiz, articleTypeImpl) appModule := router.NewAppModule(configConfig, appService, loginService, publishService, productService, productSourceService) routerServer := router.NewRouterServer(appModule) app := server.NewHTTPServer(routerServer) servers := server.NewServers(configConfig, app) return servers, func() { cleanup() }, nil }