wire_gen.go 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  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. "github.com/go-nunu/nunu-layout-advanced/internal/job"
  9. "github.com/go-nunu/nunu-layout-advanced/internal/middleware"
  10. "github.com/go-nunu/nunu-layout-advanced/internal/repository"
  11. "github.com/go-nunu/nunu-layout-advanced/internal/server"
  12. "github.com/go-nunu/nunu-layout-advanced/internal/service"
  13. "github.com/go-nunu/nunu-layout-advanced/pkg/app"
  14. "github.com/go-nunu/nunu-layout-advanced/pkg/jwt"
  15. "github.com/go-nunu/nunu-layout-advanced/pkg/limiter"
  16. "github.com/go-nunu/nunu-layout-advanced/pkg/log"
  17. "github.com/go-nunu/nunu-layout-advanced/pkg/server/http"
  18. "github.com/go-nunu/nunu-layout-advanced/pkg/sid"
  19. "github.com/google/wire"
  20. "github.com/spf13/viper"
  21. )
  22. // Injectors from wire.go:
  23. func NewWire(viperViper *viper.Viper, logger *log.Logger) (*app.App, func(), error) {
  24. jwtJWT := jwt.NewJwt(viperViper)
  25. limiterLimiter := limiter.NewLimiter(viperViper)
  26. handlerFunc := middleware.NewRateLimitMiddleware(limiterLimiter)
  27. handlerHandler := handler.NewHandler(logger)
  28. db := repository.NewDB(viperViper, logger)
  29. client := repository.NewMongoClient(viperViper)
  30. database := repository.NewMongoDB(client, viperViper)
  31. rabbitMQ, cleanup := repository.NewRabbitMQ(viperViper, logger)
  32. repositoryRepository := repository.NewRepository(logger, db, client, database, rabbitMQ)
  33. transaction := repository.NewTransaction(repositoryRepository)
  34. sidSid := sid.NewSid()
  35. serviceService := service.NewService(transaction, logger, sidSid, jwtJWT)
  36. userRepository := repository.NewUserRepository(repositoryRepository)
  37. userService := service.NewUserService(serviceService, userRepository)
  38. userHandler := handler.NewUserHandler(handlerHandler, userService)
  39. gameShieldRepository := repository.NewGameShieldRepository(repositoryRepository)
  40. parserService := service.NewParserService(serviceService)
  41. crawlerService := service.NewCrawlerService(serviceService, parserService, viperViper)
  42. gameShieldPublicIpRepository := repository.NewGameShieldPublicIpRepository(repositoryRepository)
  43. gameShieldUserIpRepository := repository.NewGameShieldUserIpRepository(repositoryRepository)
  44. gameShieldPublicIpService := service.NewGameShieldPublicIpService(serviceService, gameShieldPublicIpRepository, gameShieldUserIpRepository)
  45. duedateService := service.NewDuedateService(serviceService, gameShieldRepository)
  46. gameShieldBackendRepository := repository.NewGameShieldBackendRepository(repositoryRepository)
  47. hostRepository := repository.NewHostRepository(repositoryRepository)
  48. hostService := service.NewHostService(serviceService, hostRepository)
  49. formatterService := service.NewFormatterService(serviceService, gameShieldPublicIpService, gameShieldBackendRepository, hostService)
  50. requiredService := service.NewRequiredService(serviceService, crawlerService, viperViper)
  51. gameShieldSdkIpRepository := repository.NewGameShieldSdkIpRepository(repositoryRepository)
  52. gameShieldSdkIpService := service.NewGameShieldSdkIpService(serviceService, gameShieldSdkIpRepository)
  53. gameShieldService := service.NewGameShieldService(serviceService, gameShieldRepository, crawlerService, gameShieldPublicIpService, duedateService, formatterService, parserService, requiredService, viperViper, gameShieldSdkIpService)
  54. gameShieldHandler := handler.NewGameShieldHandler(handlerHandler, gameShieldService, crawlerService)
  55. gameShieldBackendService := service.NewGameShieldBackendService(serviceService, gameShieldBackendRepository, gameShieldRepository, crawlerService, gameShieldPublicIpService, duedateService, formatterService, parserService, requiredService, viperViper, gameShieldService, hostService)
  56. gameShieldBackendHandler := handler.NewGameShieldBackendHandler(handlerHandler, gameShieldBackendService)
  57. webForwardingRepository := repository.NewWebForwardingRepository(repositoryRepository)
  58. globalLimitRepository := repository.NewGlobalLimitRepository(repositoryRepository)
  59. tcpforwardingRepository := repository.NewTcpforwardingRepository(repositoryRepository)
  60. udpForWardingRepository := repository.NewUdpForWardingRepository(repositoryRepository)
  61. wafFormatterService := service.NewWafFormatterService(serviceService, globalLimitRepository, hostRepository, requiredService, parserService, tcpforwardingRepository, udpForWardingRepository, webForwardingRepository, hostService)
  62. aoDunService := service.NewAoDunService(serviceService, viperViper)
  63. webForwardingService := service.NewWebForwardingService(serviceService, requiredService, webForwardingRepository, crawlerService, parserService, wafFormatterService, aoDunService, rabbitMQ)
  64. webForwardingHandler := handler.NewWebForwardingHandler(handlerHandler, webForwardingService)
  65. webLimitRepository := repository.NewWebLimitRepository(repositoryRepository)
  66. webLimitService := service.NewWebLimitService(serviceService, webLimitRepository, requiredService, parserService, crawlerService, hostService)
  67. webLimitHandler := handler.NewWebLimitHandler(handlerHandler, webLimitService)
  68. tcpforwardingService := service.NewTcpforwardingService(serviceService, tcpforwardingRepository, parserService, requiredService, crawlerService, globalLimitRepository, hostRepository, wafFormatterService)
  69. tcpforwardingHandler := handler.NewTcpforwardingHandler(handlerHandler, tcpforwardingService)
  70. udpForWardingService := service.NewUdpForWardingService(serviceService, udpForWardingRepository, requiredService, parserService, crawlerService, globalLimitRepository, hostRepository, wafFormatterService)
  71. udpForWardingHandler := handler.NewUdpForWardingHandler(handlerHandler, udpForWardingService)
  72. tcpLimitRepository := repository.NewTcpLimitRepository(repositoryRepository)
  73. tcpLimitService := service.NewTcpLimitService(serviceService, tcpLimitRepository, requiredService, parserService, crawlerService, hostService)
  74. tcpLimitHandler := handler.NewTcpLimitHandler(handlerHandler, tcpLimitService)
  75. udpLimitRepository := repository.NewUdpLimitRepository(repositoryRepository)
  76. udpLimitService := service.NewUdpLimitService(serviceService, udpLimitRepository, requiredService, crawlerService, parserService, hostService)
  77. udpLimitHandler := handler.NewUdpLimitHandler(handlerHandler, udpLimitService)
  78. gatewayGroupRepository := repository.NewGatewayGroupRepository(repositoryRepository)
  79. gatewayGroupService := service.NewGatewayGroupService(serviceService, gatewayGroupRepository, requiredService, parserService)
  80. globalLimitService := service.NewGlobalLimitService(serviceService, globalLimitRepository, duedateService, crawlerService, viperViper, requiredService, parserService, hostService, tcpLimitService, udpLimitService, webLimitService, gatewayGroupService, hostRepository, gatewayGroupRepository)
  81. globalLimitHandler := handler.NewGlobalLimitHandler(handlerHandler, globalLimitService)
  82. httpServer := server.NewHTTPServer(logger, viperViper, jwtJWT, limiterLimiter, handlerFunc, userHandler, gameShieldHandler, gameShieldBackendHandler, webForwardingHandler, webLimitHandler, tcpforwardingHandler, udpForWardingHandler, tcpLimitHandler, udpLimitHandler, globalLimitHandler)
  83. jobJob := job.NewJob(transaction, logger, sidSid, rabbitMQ)
  84. userJob := job.NewUserJob(jobJob, userRepository)
  85. whitelistJob := job.NewWhitelistJob(jobJob, aoDunService)
  86. jobServer := server.NewJobServer(logger, userJob, whitelistJob)
  87. appApp := newApp(httpServer, jobServer)
  88. return appApp, func() {
  89. cleanup()
  90. }, nil
  91. }
  92. // wire.go:
  93. var repositorySet = wire.NewSet(repository.NewDB, repository.NewMongoClient, repository.NewMongoDB, repository.NewRabbitMQ, repository.NewRepository, repository.NewTransaction, repository.NewUserRepository, repository.NewGameShieldRepository, repository.NewGameShieldPublicIpRepository, repository.NewWebForwardingRepository, repository.NewTcpforwardingRepository, repository.NewUdpForWardingRepository, repository.NewGameShieldUserIpRepository, repository.NewWebLimitRepository, repository.NewTcpLimitRepository, repository.NewUdpLimitRepository, repository.NewGameShieldBackendRepository, repository.NewGameShieldSdkIpRepository, repository.NewHostRepository, repository.NewGlobalLimitRepository, repository.NewGatewayGroupRepository, repository.NewGateWayGroupIpRepository)
  94. var serviceSet = wire.NewSet(service.NewService, service.NewAoDunService, service.NewUserService, service.NewGameShieldService, service.NewGameShieldPublicIpService, service.NewDuedateService, service.NewFormatterService, service.NewParserService, service.NewRequiredService, service.NewCrawlerService, service.NewWebForwardingService, service.NewTcpforwardingService, service.NewUdpForWardingService, service.NewGameShieldUserIpService, service.NewWebLimitService, service.NewTcpLimitService, service.NewUdpLimitService, service.NewGameShieldBackendService, service.NewGameShieldSdkIpService, service.NewHostService, service.NewGlobalLimitService, service.NewGatewayGroupService, service.NewWafFormatterService, service.NewGateWayGroupIpService)
  95. var handlerSet = wire.NewSet(handler.NewHandler, handler.NewUserHandler, handler.NewGameShieldHandler, handler.NewGameShieldPublicIpHandler, handler.NewWebForwardingHandler, handler.NewTcpforwardingHandler, handler.NewUdpForWardingHandler, handler.NewGameShieldUserIpHandler, handler.NewWebLimitHandler, handler.NewTcpLimitHandler, handler.NewUdpLimitHandler, handler.NewGameShieldBackendHandler, handler.NewGameShieldSdkIpHandler, handler.NewHostHandler, handler.NewGlobalLimitHandler, handler.NewGatewayGroupHandler, handler.NewGateWayGroupIpHandler)
  96. var jobSet = wire.NewSet(job.NewJob, job.NewUserJob, job.NewWhitelistJob)
  97. // 限流器依赖集
  98. var limiterSet = wire.NewSet(limiter.NewLimiter, middleware.NewRateLimitMiddleware)
  99. var serverSet = wire.NewSet(server.NewHTTPServer, server.NewJobServer)
  100. // build App
  101. func newApp(
  102. httpServer *http.Server,
  103. jobServer *server.JobServer,
  104. ) *app.App {
  105. return app.NewApp(app.WithServer(httpServer, jobServer), app.WithName("demo-server"))
  106. }