wire_gen.go 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. // Code generated by Wire. DO NOT EDIT.
  2. //go:generate go run -mod=mod github.com/google/wire/cmd/wire
  3. //go:build !wireinject
  4. // +build !wireinject
  5. package wire
  6. import (
  7. "github.com/go-nunu/nunu-layout-advanced/internal/handler"
  8. admin3 "github.com/go-nunu/nunu-layout-advanced/internal/handler/admin"
  9. waf3 "github.com/go-nunu/nunu-layout-advanced/internal/handler/api/waf"
  10. "github.com/go-nunu/nunu-layout-advanced/internal/middleware"
  11. "github.com/go-nunu/nunu-layout-advanced/internal/repository"
  12. "github.com/go-nunu/nunu-layout-advanced/internal/repository/admin"
  13. "github.com/go-nunu/nunu-layout-advanced/internal/repository/api/flexCdn"
  14. "github.com/go-nunu/nunu-layout-advanced/internal/repository/api/waf"
  15. "github.com/go-nunu/nunu-layout-advanced/internal/server"
  16. "github.com/go-nunu/nunu-layout-advanced/internal/service"
  17. admin2 "github.com/go-nunu/nunu-layout-advanced/internal/service/admin"
  18. flexCdn2 "github.com/go-nunu/nunu-layout-advanced/internal/service/api/flexCdn"
  19. "github.com/go-nunu/nunu-layout-advanced/internal/service/api/gameShield"
  20. waf2 "github.com/go-nunu/nunu-layout-advanced/internal/service/api/waf"
  21. "github.com/go-nunu/nunu-layout-advanced/pkg/app"
  22. "github.com/go-nunu/nunu-layout-advanced/pkg/jwt"
  23. "github.com/go-nunu/nunu-layout-advanced/pkg/limiter"
  24. "github.com/go-nunu/nunu-layout-advanced/pkg/log"
  25. "github.com/go-nunu/nunu-layout-advanced/pkg/server/http"
  26. "github.com/go-nunu/nunu-layout-advanced/pkg/sid"
  27. "github.com/google/wire"
  28. "github.com/spf13/viper"
  29. )
  30. // Injectors from wire.go:
  31. func NewWire(viperViper *viper.Viper, logger *log.Logger) (*app.App, func(), error) {
  32. jwtJWT := jwt.NewJwt(viperViper)
  33. db := repository.NewDB(viperViper, logger)
  34. syncedEnforcer := repository.NewCasbinEnforcer(viperViper, logger, db)
  35. limiterLimiter := limiter.NewLimiter(viperViper)
  36. handlerFunc := middleware.NewRateLimitMiddleware(limiterLimiter)
  37. handlerHandler := handler.NewHandler(logger)
  38. client := repository.NewRedis(viperViper)
  39. qmgoClient := repository.NewMongoClient(viperViper)
  40. database := repository.NewMongoDB(qmgoClient, viperViper)
  41. rabbitMQ, cleanup := repository.NewRabbitMQ(viperViper, logger)
  42. repositoryRepository := repository.NewRepository(logger, db, client, qmgoClient, database, rabbitMQ, syncedEnforcer)
  43. transaction := repository.NewTransaction(repositoryRepository)
  44. sidSid := sid.NewSid()
  45. serviceService := service.NewService(transaction, logger, sidSid, jwtJWT)
  46. userRepository := admin.NewUserRepository(repositoryRepository)
  47. userService := admin2.NewUserService(serviceService, userRepository)
  48. userHandler := admin3.NewUserHandler(handlerHandler, userService)
  49. gameShieldRepository := repository.NewGameShieldRepository(repositoryRepository)
  50. parserService := service.NewParserService(serviceService)
  51. crawlerService := service.NewCrawlerService(serviceService, parserService, viperViper)
  52. gameShieldPublicIpRepository := repository.NewGameShieldPublicIpRepository(repositoryRepository)
  53. gameShieldUserIpRepository := repository.NewGameShieldUserIpRepository(repositoryRepository)
  54. gameShieldPublicIpService := service.NewGameShieldPublicIpService(serviceService, gameShieldPublicIpRepository, gameShieldUserIpRepository)
  55. duedateService := service.NewDuedateService(serviceService, gameShieldRepository)
  56. gameShieldBackendRepository := repository.NewGameShieldBackendRepository(repositoryRepository)
  57. hostRepository := repository.NewHostRepository(repositoryRepository)
  58. hostService := service.NewHostService(serviceService, hostRepository)
  59. formatterService := service.NewFormatterService(serviceService, gameShieldPublicIpService, gameShieldBackendRepository, hostService)
  60. requiredService := service.NewRequiredService(serviceService, crawlerService, viperViper)
  61. gameShieldSdkIpRepository := repository.NewGameShieldSdkIpRepository(repositoryRepository)
  62. gameShieldSdkIpService := service.NewGameShieldSdkIpService(serviceService, gameShieldSdkIpRepository)
  63. gameShieldService := gameShield.NewGameShieldService(serviceService, gameShieldRepository, crawlerService, gameShieldPublicIpService, duedateService, formatterService, parserService, requiredService, viperViper, gameShieldSdkIpService)
  64. gameShieldHandler := handler.NewGameShieldHandler(handlerHandler, gameShieldService, crawlerService)
  65. gameShieldBackendService := gameShield.NewGameShieldBackendService(serviceService, gameShieldBackendRepository, gameShieldRepository, crawlerService, gameShieldPublicIpService, duedateService, formatterService, parserService, requiredService, viperViper, gameShieldService, hostService)
  66. gameShieldBackendHandler := handler.NewGameShieldBackendHandler(handlerHandler, gameShieldBackendService)
  67. webForwardingRepository := waf.NewWebForwardingRepository(repositoryRepository)
  68. globalLimitRepository := waf.NewGlobalLimitRepository(repositoryRepository)
  69. tcpforwardingRepository := waf.NewTcpforwardingRepository(repositoryRepository)
  70. udpForWardingRepository := waf.NewUdpForWardingRepository(repositoryRepository)
  71. gatewayipRepository := waf.NewGatewayipRepository(repositoryRepository)
  72. logRepository := repository.NewLogRepository(repositoryRepository)
  73. logService := service.NewLogService(serviceService, logRepository)
  74. gatewayipService := waf2.NewGatewayipService(serviceService, gatewayipRepository, hostService, logService)
  75. requestService := service.NewRequestService(serviceService)
  76. cdnRepository := flexCdn.NewCdnRepository(repositoryRepository)
  77. cdnService := flexCdn2.NewCdnService(serviceService, viperViper, requestService, cdnRepository)
  78. wafFormatterService := waf2.NewWafFormatterService(serviceService, globalLimitRepository, hostRepository, requiredService, parserService, tcpforwardingRepository, udpForWardingRepository, webForwardingRepository, rabbitMQ, hostService, gatewayipRepository, gatewayipService, cdnService)
  79. aoDunService := service.NewAoDunService(serviceService, viperViper)
  80. proxyRepository := flexCdn.NewProxyRepository(repositoryRepository)
  81. proxyService := flexCdn2.NewProxyService(serviceService, proxyRepository, cdnService)
  82. sslCertService := flexCdn2.NewSslCertService(serviceService, webForwardingRepository, cdnService)
  83. websocketService := flexCdn2.NewWebsocketService(serviceService, cdnService, webForwardingRepository)
  84. ccRepository := flexCdn.NewCcRepository(repositoryRepository)
  85. ccService := flexCdn2.NewCcService(serviceService, ccRepository, webForwardingRepository, cdnService)
  86. webForwardingService := waf2.NewWebForwardingService(serviceService, requiredService, webForwardingRepository, crawlerService, parserService, wafFormatterService, aoDunService, rabbitMQ, gatewayipService, globalLimitRepository, cdnService, proxyService, sslCertService, websocketService, ccService)
  87. webForwardingHandler := waf3.NewWebForwardingHandler(handlerHandler, webForwardingService)
  88. tcpforwardingService := waf2.NewTcpforwardingService(serviceService, tcpforwardingRepository, parserService, requiredService, crawlerService, globalLimitRepository, hostRepository, wafFormatterService, cdnService, proxyService)
  89. tcpforwardingHandler := waf3.NewTcpforwardingHandler(handlerHandler, tcpforwardingService)
  90. udpForWardingService := waf2.NewUdpForWardingService(serviceService, udpForWardingRepository, requiredService, parserService, crawlerService, globalLimitRepository, hostRepository, wafFormatterService, cdnService, proxyService)
  91. udpForWardingHandler := waf3.NewUdpForWardingHandler(handlerHandler, udpForWardingService)
  92. allowAndDenyIpRepository := waf.NewAllowAndDenyIpRepository(repositoryRepository)
  93. allowAndDenyIpService := waf2.NewAllowAndDenyIpService(serviceService, allowAndDenyIpRepository, wafFormatterService, gatewayipService)
  94. globalLimitService := waf2.NewGlobalLimitService(serviceService, globalLimitRepository, duedateService, crawlerService, viperViper, requiredService, parserService, hostService, hostRepository, cdnService, cdnRepository, tcpforwardingRepository, udpForWardingRepository, webForwardingRepository, allowAndDenyIpService, allowAndDenyIpRepository, tcpforwardingService, udpForWardingService, webForwardingService, gatewayipRepository, gatewayipService)
  95. globalLimitHandler := waf3.NewGlobalLimitHandler(handlerHandler, globalLimitService)
  96. adminRepository := admin.NewAdminRepository(repositoryRepository)
  97. adminService := admin2.NewAdminService(serviceService, adminRepository)
  98. adminHandler := admin3.NewAdminHandler(handlerHandler, adminService)
  99. gatewayGroupRepository := repository.NewGatewayGroupRepository(repositoryRepository)
  100. gatewayGroupService := service.NewGatewayGroupService(serviceService, gatewayGroupRepository, requiredService, parserService, requestService)
  101. gatewayGroupHandler := handler.NewGatewayGroupHandler(handlerHandler, gatewayGroupService)
  102. gateWayGroupIpRepository := repository.NewGateWayGroupIpRepository(repositoryRepository)
  103. gateWayGroupIpService := service.NewGateWayGroupIpService(serviceService, gateWayGroupIpRepository, gatewayGroupRepository, requestService)
  104. gateWayGroupIpHandler := handler.NewGateWayGroupIpHandler(handlerHandler, gateWayGroupIpService)
  105. gatewayIpAdminRepository := admin.NewGatewayIpAdminRepository(repositoryRepository)
  106. gatewayIpAdminService := admin2.NewGatewayIpAdminService(serviceService, gatewayIpAdminRepository, viperViper, requestService)
  107. gatewayIpAdminHandler := admin3.NewGatewayIpAdminHandler(handlerHandler, gatewayIpAdminService)
  108. allowAndDenyIpHandler := waf3.NewAllowAndDenyIpHandler(handlerHandler, allowAndDenyIpService)
  109. ccHandler := handler.NewCcHandler(handlerHandler, ccService)
  110. httpServer := server.NewHTTPServer(logger, viperViper, jwtJWT, syncedEnforcer, limiterLimiter, handlerFunc, userHandler, gameShieldHandler, gameShieldBackendHandler, webForwardingHandler, tcpforwardingHandler, udpForWardingHandler, globalLimitHandler, adminHandler, gatewayGroupHandler, gateWayGroupIpHandler, gatewayIpAdminHandler, allowAndDenyIpHandler, ccHandler, logService)
  111. appApp := newApp(httpServer)
  112. return appApp, func() {
  113. cleanup()
  114. }, nil
  115. }
  116. // wire.go:
  117. var repositorySet = wire.NewSet(repository.NewDB, repository.NewRedis, repository.NewCasbinEnforcer, repository.NewMongoClient, repository.NewMongoDB, repository.NewRabbitMQ, repository.NewRepository, repository.NewTransaction, admin.NewAdminRepository, admin.NewUserRepository, repository.NewGameShieldRepository, repository.NewGameShieldPublicIpRepository, waf.NewWebForwardingRepository, waf.NewTcpforwardingRepository, waf.NewUdpForWardingRepository, repository.NewGameShieldUserIpRepository, repository.NewGameShieldBackendRepository, repository.NewGameShieldSdkIpRepository, repository.NewHostRepository, waf.NewGlobalLimitRepository, repository.NewGatewayGroupRepository, repository.NewGateWayGroupIpRepository, flexCdn.NewCdnRepository, waf.NewAllowAndDenyIpRepository, flexCdn.NewProxyRepository, flexCdn.NewCcRepository, repository.NewExpiredRepository, repository.NewLogRepository, waf.NewGatewayipRepository, admin.NewGatewayIpAdminRepository, flexCdn.NewCcIpListRepository)
  118. var serviceSet = wire.NewSet(service.NewService, admin2.NewUserService, admin2.NewGatewayIpAdminService, admin2.NewAdminService, gameShield.NewGameShieldService, service.NewAoDunService, service.NewGameShieldPublicIpService, service.NewDuedateService, service.NewFormatterService, service.NewParserService, service.NewRequiredService, service.NewCrawlerService, waf2.NewWebForwardingService, waf2.NewTcpforwardingService, waf2.NewUdpForWardingService, service.NewGameShieldUserIpService, gameShield.NewGameShieldBackendService, service.NewGameShieldSdkIpService, service.NewHostService, waf2.NewGlobalLimitService, service.NewGatewayGroupService, waf2.NewWafFormatterService, service.NewGateWayGroupIpService, service.NewRequestService, flexCdn2.NewCdnService, waf2.NewAllowAndDenyIpService, flexCdn2.NewProxyService, flexCdn2.NewSslCertService, flexCdn2.NewWebsocketService, flexCdn2.NewCcService, service.NewLogService, waf2.NewGatewayipService, flexCdn2.NewCcIpListService)
  119. var handlerSet = wire.NewSet(handler.NewHandler, admin3.NewUserHandler, admin3.NewAdminHandler, admin3.NewGatewayIpAdminHandler, handler.NewGameShieldHandler, handler.NewGameShieldPublicIpHandler, waf3.NewWebForwardingHandler, waf3.NewTcpforwardingHandler, waf3.NewUdpForWardingHandler, handler.NewGameShieldUserIpHandler, handler.NewGameShieldBackendHandler, handler.NewGameShieldSdkIpHandler, handler.NewHostHandler, waf3.NewGlobalLimitHandler, handler.NewGatewayGroupHandler, handler.NewGateWayGroupIpHandler, waf3.NewAllowAndDenyIpHandler, handler.NewCcHandler, waf3.NewGatewayipHandler)
  120. // 限流器依赖集
  121. var limiterSet = wire.NewSet(limiter.NewLimiter, middleware.NewRateLimitMiddleware)
  122. var serverSet = wire.NewSet(server.NewHTTPServer)
  123. // build App
  124. func newApp(
  125. httpServer *http.Server,
  126. ) *app.App {
  127. return app.NewApp(app.WithServer(httpServer), app.WithName("demo-server"))
  128. }