// 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 wirex import ( "context" "github.com/guxuan/hailin_service/internal/mods" "github.com/guxuan/hailin_service/internal/mods/rbac" "github.com/guxuan/hailin_service/internal/mods/rbac/api" "github.com/guxuan/hailin_service/internal/mods/rbac/biz" "github.com/guxuan/hailin_service/internal/mods/rbac/dal" "github.com/guxuan/hailin_service/pkg/util" ) // Injectors from wire.go: func BuildInjector(ctx context.Context) (*Injector, func(), error) { db, cleanup, err := InitDB(ctx) if err != nil { return nil, nil, err } cacher, cleanup2, err := InitCacher(ctx) if err != nil { cleanup() return nil, nil, err } auther, cleanup3, err := InitAuth(ctx) if err != nil { cleanup2() cleanup() return nil, nil, err } trans := &util.Trans{ DB: db, } menu := &dal.Menu{ DB: db, } menuResource := &dal.MenuResource{ DB: db, } roleMenu := &dal.RoleMenu{ DB: db, } bizMenu := &biz.Menu{ Cache: cacher, Trans: trans, MenuDAL: menu, MenuResourceDAL: menuResource, RoleMenuDAL: roleMenu, } apiMenu := &api.Menu{ MenuBIZ: bizMenu, } role := &dal.Role{ DB: db, } userRole := &dal.UserRole{ DB: db, } bizRole := &biz.Role{ Cache: cacher, Trans: trans, RoleDAL: role, RoleMenuDAL: roleMenu, UserRoleDAL: userRole, } apiRole := &api.Role{ RoleBIZ: bizRole, } user := &dal.User{ DB: db, } bizUser := &biz.User{ Cache: cacher, Trans: trans, UserDAL: user, UserRoleDAL: userRole, } apiUser := &api.User{ UserBIZ: bizUser, } login := &biz.Login{ Cache: cacher, Auth: auther, UserDAL: user, UserRoleDAL: userRole, MenuDAL: menu, UserBIZ: bizUser, } apiLogin := &api.Login{ LoginBIZ: login, } logger := &dal.Logger{ DB: db, } bizLogger := &biz.Logger{ LoggerDAL: logger, } apiLogger := &api.Logger{ LoggerBIZ: bizLogger, } banner := &dal.Banner{ DB: db, } bizBanner := &biz.Banner{ Cache: cacher, Trans: trans, BannerDAL: banner, } apiBanner := &api.Banner{ BannerBIZ: bizBanner, } article := &dal.Article{ DB: db, } bizArticle := &biz.Article{ Cache: cacher, Trans: trans, ArticleDAL: article, } apiArticle := &api.Article{ ArticleBIZ: bizArticle, } video := &dal.Video{ DB: db, } bizVideo := &biz.Video{ Cache: cacher, Trans: trans, VideoDAL: video, } apiVideo := &api.Video{ VideoBIZ: bizVideo, } upload := &biz.Upload{ Cache: cacher, Trans: trans, } apiUpload := &api.Upload{ UploadBIZ: upload, } job := &dal.Job{ DB: db, } jobArea := &dal.JobArea{ DB: db, } bizJob := &biz.Job{ Cache: cacher, Trans: trans, JobDAL: job, JobAreaDAL: jobArea, } apiJob := &api.Job{ JobBIZ: bizJob, } web := &api.Web{ ArticleBIZ: bizArticle, JobBIZ: bizJob, } webSite := &dal.WebSite{ DB: db, } bizWebSite := &biz.WebSite{ Cache: cacher, Trans: trans, WebSiteDAL: webSite, } apiWebSite := &api.WebSite{ WebSiteBIZ: bizWebSite, } team := &dal.Team{ DB: db, } bizTeam := &biz.Team{ Cache: cacher, Trans: trans, TeamDAL: team, } apiTeam := &api.Team{ TeamBIZ: bizTeam, } memorabilia := &dal.Memorabilia{ DB: db, } bizMemorabilia := &biz.Memorabilia{ Cache: cacher, Trans: trans, MemorabiliaDAL: memorabilia, } apiMemorabilia := &api.Memorabilia{ MemorabiliaBIZ: bizMemorabilia, } product := &dal.Product{ DB: db, } productCategory := &dal.ProductCategory{ DB: db, } bizProduct := &biz.Product{ Cache: cacher, Trans: trans, ProductDAL: product, ProductCategoryDAL: productCategory, } apiProduct := &api.Product{ ProductBIZ: bizProduct, } casbinx := &rbac.Casbinx{ Cache: cacher, MenuDAL: menu, MenuResourceDAL: menuResource, RoleDAL: role, } rbacRBAC := &rbac.RBAC{ DB: db, MenuAPI: apiMenu, RoleAPI: apiRole, UserAPI: apiUser, LoginAPI: apiLogin, LoggerAPI: apiLogger, BannerAPI: apiBanner, ArticleAPI: apiArticle, VideoAPI: apiVideo, UploadAPI: apiUpload, JobAPI: apiJob, WebAPI: web, WebSiteAPI: apiWebSite, TeamAPI: apiTeam, MemorabiliaAPI: apiMemorabilia, ProductAPI: apiProduct, Casbinx: casbinx, } modsMods := &mods.Mods{ RBAC: rbacRBAC, } injector := &Injector{ DB: db, Cache: cacher, Auth: auther, M: modsMods, } return injector, func() { cleanup3() cleanup2() cleanup() }, nil }