wire.go 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. //go:build wireinject
  2. // +build wireinject
  3. package wire
  4. import (
  5. "github.com/go-nunu/nunu-layout-advanced/internal/job"
  6. "github.com/go-nunu/nunu-layout-advanced/internal/repository"
  7. "github.com/go-nunu/nunu-layout-advanced/internal/repository/admin"
  8. flexCdn2 "github.com/go-nunu/nunu-layout-advanced/internal/repository/api/flexCdn"
  9. waf2 "github.com/go-nunu/nunu-layout-advanced/internal/repository/api/waf"
  10. "github.com/go-nunu/nunu-layout-advanced/internal/server"
  11. "github.com/go-nunu/nunu-layout-advanced/internal/service"
  12. admin2 "github.com/go-nunu/nunu-layout-advanced/internal/service/admin"
  13. "github.com/go-nunu/nunu-layout-advanced/internal/service/api/flexCdn"
  14. "github.com/go-nunu/nunu-layout-advanced/internal/service/api/gameShield"
  15. "github.com/go-nunu/nunu-layout-advanced/internal/service/api/waf"
  16. "github.com/go-nunu/nunu-layout-advanced/internal/service/api/waf/common"
  17. "github.com/go-nunu/nunu-layout-advanced/internal/service/api/waf/tcp"
  18. "github.com/go-nunu/nunu-layout-advanced/internal/service/api/waf/udp"
  19. "github.com/go-nunu/nunu-layout-advanced/internal/service/api/waf/web"
  20. "github.com/go-nunu/nunu-layout-advanced/internal/task"
  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/log"
  24. "github.com/go-nunu/nunu-layout-advanced/pkg/sid"
  25. "github.com/google/wire"
  26. "github.com/spf13/viper"
  27. )
  28. var repositorySet = wire.NewSet(
  29. repository.NewDB,
  30. repository.NewRedis,
  31. repository.NewMongoClient,
  32. repository.NewCasbinEnforcer,
  33. repository.NewMongoDB,
  34. repository.NewRabbitMQ,
  35. repository.NewRepository,
  36. repository.NewTransaction,
  37. repository.NewShardingManager,
  38. admin.NewUserRepository,
  39. repository.NewGameShieldRepository,
  40. repository.NewGameShieldBackendRepository,
  41. repository.NewGameShieldPublicIpRepository,
  42. repository.NewHostRepository,
  43. repository.NewGameShieldUserIpRepository,
  44. repository.NewGameShieldSdkIpRepository,
  45. waf2.NewWebForwardingRepository,
  46. waf2.NewTcpforwardingRepository,
  47. waf2.NewUdpForWardingRepository,
  48. waf2.NewGlobalLimitRepository,
  49. repository.NewGatewayGroupRepository,
  50. repository.NewGateWayGroupIpRepository,
  51. flexCdn2.NewCdnRepository,
  52. repository.NewExpiredRepository,
  53. flexCdn2.NewProxyRepository,
  54. waf2.NewGatewayipRepository,
  55. repository.NewLogRepository,
  56. flexCdn2.NewCcRepository,
  57. flexCdn2.NewCcIpListRepository,
  58. admin.NewWafLogRepository,
  59. )
  60. var taskSet = wire.NewSet(
  61. task.NewTask,
  62. task.NewUserTask,
  63. task.NewGameShieldTask,
  64. task.NewWafTask,
  65. )
  66. var jobSet = wire.NewSet(
  67. job.NewJob,
  68. job.NewUserJob,
  69. job.NewWhitelistJob,
  70. job.NewWafLogJob,
  71. job.NewShardingJob,
  72. )
  73. var serverSet = wire.NewSet(
  74. server.NewTaskServer,
  75. server.NewJobServer,
  76. )
  77. var serviceSet = wire.NewSet(
  78. service.NewService,
  79. service.NewAoDunService,
  80. gameShield.NewGameShieldService,
  81. service.NewCrawlerService,
  82. service.NewGameShieldPublicIpService,
  83. service.NewDuedateService,
  84. service.NewFormatterService,
  85. service.NewParserService,
  86. service.NewRequiredService,
  87. service.NewHostService,
  88. gameShield.NewGameShieldBackendService,
  89. service.NewGameShieldSdkIpService,
  90. service.NewGameShieldUserIpService,
  91. common.NewWafFormatterService,
  92. flexCdn.NewCdnService,
  93. service.NewRequestService,
  94. tcp.NewAidedTcpService,
  95. tcp.NewTcpforwardingService,
  96. udp.NewAidedUdpService,
  97. udp.NewUdpForWardingService,
  98. web.NewAidedWebService,
  99. web.NewWebForwardingService,
  100. flexCdn.NewProxyService,
  101. flexCdn.NewSslCertService,
  102. flexCdn.NewWebsocketService,
  103. waf.NewCcService,
  104. common.NewGatewayipService,
  105. service.NewLogService,
  106. waf.NewCcIpListService,
  107. waf.NewBuildAudunService,
  108. waf.NewZzybgpService,
  109. waf.NewWaflogService,
  110. admin2.NewWafLogService,
  111. admin2.NewWafLogDataCleanService,
  112. admin2.NewWafOperationsService,
  113. service.NewShardingService,
  114. )
  115. // build App
  116. func newApp(
  117. task *server.TaskServer,
  118. jobServer *server.JobServer,
  119. ) *app.App {
  120. return app.NewApp(
  121. app.WithServer(task, jobServer),
  122. app.WithName("demo-task"),
  123. )
  124. }
  125. func NewWire(*viper.Viper, *log.Logger) (*app.App, func(), error) {
  126. panic(wire.Build(
  127. repositorySet,
  128. taskSet,
  129. jobSet,
  130. serverSet,
  131. serviceSet,
  132. newApp,
  133. sid.NewSid,
  134. jwt.NewJwt,
  135. ))
  136. }