github.com/imyousuf/webhook-broker@v0.1.2/wire_gen.go (about) 1 // Code generated by Wire. DO NOT EDIT. 2 3 //go:generate wire 4 //+build !wireinject 5 6 package main 7 8 import ( 9 "github.com/imyousuf/webhook-broker/config" 10 "github.com/imyousuf/webhook-broker/controllers" 11 "github.com/imyousuf/webhook-broker/dispatcher" 12 "github.com/imyousuf/webhook-broker/storage" 13 ) 14 15 // Injectors from wire.go: 16 17 func GetAppVersion() config.AppVersion { 18 appVersion := config.GetVersion() 19 return appVersion 20 } 21 22 func GetHTTPServer(cliConfig *config.CLIConfig) (*HTTPServiceContainer, error) { 23 configConfig, err := config.GetConfigurationFromCLIConfig(cliConfig) 24 if err != nil { 25 return nil, err 26 } 27 serverLifecycleListenerImpl := NewServerListener() 28 migrationConfig := GetMigrationConfig(cliConfig) 29 dataAccessor, err := storage.GetNewDataAccessor(configConfig, migrationConfig, configConfig) 30 if err != nil { 31 return nil, err 32 } 33 appRepository := newAppRepository(dataAccessor) 34 statusController := controllers.NewStatusController(appRepository) 35 producerRepository := newProducerRepository(dataAccessor) 36 producerController := controllers.NewProducerController(producerRepository) 37 producersController := controllers.NewProducersController(producerRepository, producerController) 38 channelRepository := newChannelRepository(dataAccessor) 39 consumerRepository := newConsumerRepository(dataAccessor) 40 messageRepository := newMessageRepository(dataAccessor) 41 deliveryJobRepository := newDeliveryJobRepository(dataAccessor) 42 messageController := controllers.NewMessageController(messageRepository, deliveryJobRepository) 43 dlqController := controllers.NewDLQController(messageController, deliveryJobRepository, consumerRepository) 44 consumerController := controllers.NewConsumerController(channelRepository, consumerRepository, dlqController) 45 consumersController := controllers.NewConsumersController(consumerController, consumerRepository) 46 messagesController := controllers.NewMessagesController(messageController, messageRepository) 47 lockRepository := newLockRepository(dataAccessor) 48 configuration := &dispatcher.Configuration{ 49 DeliveryJobRepo: deliveryJobRepository, 50 ConsumerRepo: consumerRepository, 51 LockRepo: lockRepository, 52 BrokerConfig: configConfig, 53 ConsumerConnectionConfig: configConfig, 54 MsgRepo: messageRepository, 55 } 56 messageDispatcher := dispatcher.NewMessageDispatcher(configuration) 57 broadcastController := controllers.NewBroadcastController(channelRepository, messageRepository, producerRepository, messageDispatcher) 58 channelController := controllers.NewChannelController(consumersController, messagesController, broadcastController, channelRepository) 59 channelsController := controllers.NewChannelsController(channelRepository, channelController) 60 controllersControllers := &controllers.Controllers{ 61 StatusController: statusController, 62 ProducersController: producersController, 63 ProducerController: producerController, 64 ChannelController: channelController, 65 ConsumerController: consumerController, 66 ConsumersController: consumersController, 67 BroadcastController: broadcastController, 68 MessageController: messageController, 69 MessagesController: messagesController, 70 DLQController: dlqController, 71 ChannelsController: channelsController, 72 } 73 router := controllers.NewRouter(controllersControllers) 74 server := controllers.ConfigureAPI(configConfig, serverLifecycleListenerImpl, router) 75 httpServiceContainer := &HTTPServiceContainer{ 76 Configuration: configConfig, 77 Server: server, 78 DataAccessor: dataAccessor, 79 Listener: serverLifecycleListenerImpl, 80 Dispatcher: messageDispatcher, 81 } 82 return httpServiceContainer, nil 83 }