wire.go 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  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/server"
  8. "github.com/go-nunu/nunu-layout-advanced/internal/service"
  9. "github.com/go-nunu/nunu-layout-advanced/internal/task"
  10. "github.com/go-nunu/nunu-layout-advanced/pkg/app"
  11. "github.com/go-nunu/nunu-layout-advanced/pkg/jwt"
  12. "github.com/go-nunu/nunu-layout-advanced/pkg/log"
  13. "github.com/go-nunu/nunu-layout-advanced/pkg/sid"
  14. "github.com/google/wire"
  15. "github.com/spf13/viper"
  16. )
  17. var repositorySet = wire.NewSet(
  18. repository.NewDB,
  19. repository.NewRedis,
  20. repository.NewMongoClient,
  21. repository.NewCasbinEnforcer,
  22. repository.NewMongoDB,
  23. repository.NewRabbitMQ,
  24. repository.NewRepository,
  25. repository.NewTransaction,
  26. repository.NewUserRepository,
  27. repository.NewGameShieldRepository,
  28. repository.NewGameShieldBackendRepository,
  29. repository.NewGameShieldPublicIpRepository,
  30. repository.NewHostRepository,
  31. repository.NewGameShieldUserIpRepository,
  32. repository.NewGameShieldSdkIpRepository,
  33. repository.NewWebForwardingRepository,
  34. repository.NewTcpforwardingRepository,
  35. repository.NewUdpForWardingRepository,
  36. repository.NewWebLimitRepository,
  37. repository.NewTcpLimitRepository,
  38. repository.NewUdpLimitRepository,
  39. repository.NewGlobalLimitRepository,
  40. repository.NewGatewayGroupRepository,
  41. repository.NewGateWayGroupIpRepository,
  42. repository.NewCdnRepository,
  43. repository.NewExpiredRepository,
  44. )
  45. var taskSet = wire.NewSet(
  46. task.NewTask,
  47. task.NewUserTask,
  48. task.NewGameShieldTask,
  49. task.NewWafTask,
  50. )
  51. var jobSet = wire.NewSet(
  52. job.NewJob,
  53. job.NewUserJob,
  54. job.NewWhitelistJob,
  55. )
  56. var serverSet = wire.NewSet(
  57. server.NewTaskServer,
  58. server.NewJobServer,
  59. )
  60. var serviceSet = wire.NewSet(
  61. service.NewService,
  62. service.NewAoDunService,
  63. service.NewGameShieldService,
  64. service.NewCrawlerService,
  65. service.NewGameShieldPublicIpService,
  66. service.NewDuedateService,
  67. service.NewFormatterService,
  68. service.NewParserService,
  69. service.NewRequiredService,
  70. service.NewHostService,
  71. service.NewGameShieldBackendService,
  72. service.NewGameShieldSdkIpService,
  73. service.NewGameShieldUserIpService,
  74. service.NewWafFormatterService,
  75. service.NewCdnService,
  76. service.NewRequestService,
  77. )
  78. // build App
  79. func newApp(
  80. task *server.TaskServer,
  81. jobServer *server.JobServer,
  82. ) *app.App {
  83. return app.NewApp(
  84. app.WithServer(task, jobServer),
  85. app.WithName("demo-task"),
  86. )
  87. }
  88. func NewWire(*viper.Viper, *log.Logger) (*app.App, func(), error) {
  89. panic(wire.Build(
  90. repositorySet,
  91. taskSet,
  92. jobSet,
  93. serverSet,
  94. serviceSet,
  95. newApp,
  96. sid.NewSid,
  97. jwt.NewJwt,
  98. ))
  99. }