/// <inheritdoc /> public MessageBroker(ILogger logger, MessageBusConfig messageBusConfig, IQueueFactory queueFactory, IProcessInformation processInformation, IQueueNameUtility queueNameUtility) { _logger = logger; _messageBusConfig = messageBusConfig; _queueFactory = queueFactory; _processInformation = processInformation; _queueNameUtility = queueNameUtility; _messageBrokerQueue = _queueFactory.CreateLocale(MessageBrokerConfig.LocaleQueueName, true, LocaleQueueMode.Durable, true, AccessMode.Send); }
/// <summary> /// Build Message Bus /// </summary> /// <returns></returns> public IMessageBus Build() { var messageBusConfig = new MessageBusConfig { ServiceName = ServiceName }; var queueFactory = new QueueFactory(_logger); var queueNameUtility = new QueueNameUtility(messageBusConfig.ServiceName); var messageBroker = new MessageBroker(_logger, messageBusConfig, queueFactory, _processInformation, queueNameUtility); var queueHandlerFactory = new QueueHandlerFactory(_logger, queueFactory); return(new MessageBus(_logger, messageBroker, queueHandlerFactory, queueNameUtility)); }