wire.go 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. //go:build wireinject
  2. // +build wireinject
  3. package wire
  4. import (
  5. "github.com/go-nunu/nunu-layout-advanced/internal/repository"
  6. "github.com/go-nunu/nunu-layout-advanced/internal/server"
  7. "github.com/go-nunu/nunu-layout-advanced/internal/job"
  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.NewMongoDB,
  22. repository.NewRabbitMQ,
  23. repository.NewRepository,
  24. repository.NewTransaction,
  25. repository.NewUserRepository,
  26. repository.NewGameShieldRepository,
  27. repository.NewGameShieldBackendRepository,
  28. repository.NewGameShieldPublicIpRepository,
  29. repository.NewHostRepository,
  30. repository.NewGameShieldUserIpRepository,
  31. repository.NewGameShieldSdkIpRepository,
  32. )
  33. var taskSet = wire.NewSet(
  34. task.NewTask,
  35. task.NewUserTask,
  36. task.NewGameShieldTask,
  37. )
  38. var jobSet = wire.NewSet(
  39. job.NewJob,
  40. job.NewUserJob,
  41. job.NewWhitelistJob,
  42. )
  43. var serverSet = wire.NewSet(
  44. server.NewTaskServer,
  45. server.NewJobServer,
  46. )
  47. var serviceSet = wire.NewSet(
  48. service.NewService,
  49. service.NewAoDunService,
  50. service.NewGameShieldService,
  51. service.NewCrawlerService,
  52. service.NewGameShieldPublicIpService,
  53. service.NewDuedateService,
  54. service.NewFormatterService,
  55. service.NewParserService,
  56. service.NewRequiredService,
  57. service.NewHostService,
  58. service.NewGameShieldBackendService,
  59. service.NewGameShieldSdkIpService,
  60. service.NewGameShieldUserIpService,
  61. )
  62. // build App
  63. func newApp(
  64. task *server.TaskServer,
  65. jobServer *server.JobServer,
  66. ) *app.App {
  67. return app.NewApp(
  68. app.WithServer(task, jobServer),
  69. app.WithName("demo-task"),
  70. )
  71. }
  72. func NewWire(*viper.Viper, *log.Logger) (*app.App, func(), error) {
  73. panic(wire.Build(
  74. repositorySet,
  75. taskSet,
  76. jobSet,
  77. serverSet,
  78. serviceSet,
  79. newApp,
  80. sid.NewSid,
  81. jwt.NewJwt,
  82. ))
  83. }