private static void AddConsumerList(IServiceCollection services, IConfiguration configuration) { var consumerDictionary = configuration.GetSection("ConsumerQueueList").GetChildren() .ToDictionary(x => x.Key, section => section.Value); var consumerQueueList = new ConsumerQueuesList() { ConsumerQueueList = consumerDictionary }; services.AddSingleton(consumerQueueList); }
protected BaseAsyncRabbitMqConsumer(IQueueConnectionFactory connectionFactory, ILogger <TSelf> logger, ConsumerQueuesList consumerQueuesList, IMediator mediator) { Logger = logger; Mediator = mediator; Model = connectionFactory.CreateConnection(true).CreateModel(); Consumer = new AsyncEventingBasicConsumer(Model); Consumer.Received += ConsumerOnReceived; // ReSharper disable once VirtualMemberCallInConstructor QueueName = consumerQueuesList[ConsumerHandlerType]; }
public AsyncEmailConsumer(IQueueConnectionFactory connectionFactory, ConsumerQueuesList consumerQueueList, ILogger <AsyncEmailConsumer> logger, IMediator mediator) : base(connectionFactory, logger, consumerQueueList, mediator) { }