wire.go 905 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  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/repository/admin"
  7. "github.com/go-nunu/nunu-layout-advanced/internal/server"
  8. "github.com/go-nunu/nunu-layout-advanced/pkg/app"
  9. "github.com/go-nunu/nunu-layout-advanced/pkg/log"
  10. "github.com/google/wire"
  11. "github.com/spf13/viper"
  12. )
  13. var repositorySet = wire.NewSet(
  14. repository.NewDB,
  15. //repository.NewRedis,
  16. repository.NewRepository,
  17. admin.NewUserRepository,
  18. )
  19. var serverSet = wire.NewSet(
  20. server.NewMigrateServer,
  21. )
  22. // build App
  23. func newApp(
  24. migrateServer *server.MigrateServer,
  25. ) *app.App {
  26. return app.NewApp(
  27. app.WithServer(migrateServer),
  28. app.WithName("demo-migrate"),
  29. )
  30. }
  31. func NewWire(*viper.Viper, *log.Logger) (*app.App, func(), error) {
  32. panic(wire.Build(
  33. repositorySet,
  34. serverSet,
  35. newApp,
  36. ))
  37. }