Example #1
0
        static IConsumingService CreateService(
            IRabbitMqConnectionFactory connectionFactory,
            IMessageHandlingPipelineExecutingService messageHandlingPipelineExecutingService)
        {
            var guid = Guid.NewGuid();
            var connectionOptionContainer = new RabbitMqConnectionOptionsContainer
            {
                Guid    = guid,
                Options = new RabbitMqConnectionOptions
                {
                    ConsumerOptions = new RabbitMqClientOptions()
                }
            };
            var loggerMock = new Mock <ILogger <QueueService> >();

            return(new QueueService(
                       guid,
                       connectionFactory,
                       new List <RabbitMqConnectionOptionsContainer> {
                connectionOptionContainer
            },
                       messageHandlingPipelineExecutingService,
                       new List <RabbitMqExchange>(),
                       loggerMock.Object));
        }
        private static BaseBatchMessageHandler CreateBatchMessageHandler(
            string queueName,
            ushort prefetchCount,
            TimeSpan?handlingPeriod,
            IRabbitMqConnectionFactory connectionFactory,
            IStubCaller caller,
            IEnumerable <IBatchMessageHandlingMiddleware> middlewares)
        {
            var connectionOptions  = new BatchConsumerConnectionOptions(typeof(StubBaseBatchMessageHandler), new RabbitMqServiceOptions());
            var loggingServiceMock = new Mock <ILoggingService>();

            return(new StubBaseBatchMessageHandler(
                       caller,
                       connectionFactory,
                       new List <BatchConsumerConnectionOptions> {
                connectionOptions
            },
                       middlewares,
                       loggingServiceMock.Object)
            {
                QueueName = queueName,
                PrefetchCount = prefetchCount,
                MessageHandlingPeriod = handlingPeriod
            });
        }
Example #3
0
 protected BatchMessageHandler(
     IRabbitMqConnectionFactory rabbitMqConnectionFactory,
     IEnumerable <BatchConsumerConnectionOptions> batchConsumerConnectionOptions,
     ILogger <BatchMessageHandler> logger)
     : base(rabbitMqConnectionFactory, batchConsumerConnectionOptions, logger)
 {
 }
Example #4
0
        public DefaultQueueMessageSender(ILogger <DefaultQueueMessageSender> logger,
                                         IOptions <RabbitMqOptions> options,
                                         IMessageFactory messageFactory,
                                         IRabbitMqConnectionFactory connectionFactory)
        {
            if (logger == null)
            {
                throw new ArgumentNullException(nameof(logger));
            }
            if (options == null)
            {
                throw new ArgumentNullException(nameof(options));
            }
            if (messageFactory == null)
            {
                throw new ArgumentNullException(nameof(messageFactory));
            }
            if (connectionFactory == null)
            {
                throw new ArgumentNullException(nameof(connectionFactory));
            }

            _logger            = logger;
            _options           = options;
            _messageFactory    = messageFactory;
            _connectionFactory = connectionFactory;
        }
        static BaseBatchMessageHandler CreateBatchMessageHandler(
            string queueName,
            ushort prefetchCount,
            IRabbitMqConnectionFactory connectionFactory,
            IStubCaller caller)
        {
            var connectionOptions = new BatchConsumerConnectionOptions
            {
                Type          = typeof(StubBaseBatchMessageHandler),
                ClientOptions = new RabbitMqClientOptions()
            };
            var loggerMock = new Mock <ILogger <StubBaseBatchMessageHandler> >();

            return(new StubBaseBatchMessageHandler(
                       caller,
                       connectionFactory,
                       new List <BatchConsumerConnectionOptions> {
                connectionOptions
            },
                       loggerMock.Object)
            {
                QueueName = queueName,
                PrefetchCount = prefetchCount
            });
        }
Example #6
0
        public DefaultQueueMessageReceiver(IOptions <RabbitMqOptions> options,
                                           IRabbitMqConnectionFactory connectionFactory,
                                           IEventContextFactory eventContextFactory,
                                           ILogger <DefaultQueueMessageReceiver> logger,
                                           IServiceScopeFactory serviceScopeFactory)
        {
            if (options == null)
            {
                throw new ArgumentNullException(nameof(options));
            }
            if (connectionFactory == null)
            {
                throw new ArgumentNullException(nameof(connectionFactory));
            }
            if (eventContextFactory == null)
            {
                throw new ArgumentNullException(nameof(eventContextFactory));
            }
            if (logger == null)
            {
                throw new ArgumentNullException(nameof(logger));
            }
            if (serviceScopeFactory == null)
            {
                throw new ArgumentNullException(nameof(serviceScopeFactory));
            }

            _options             = options;
            _connectionFactory   = connectionFactory;
            _eventContextFactory = eventContextFactory;
            _logger = logger;
            _serviceScopeFactory = serviceScopeFactory;
            _stoppingCts         = new CancellationTokenSource();
        }
Example #7
0
 public RabbitMqClient(IResponseProcessor responseProcessor, IQueueConfiguration queueConfiguration, ILogger <RabbitMqClient <TResponseProcessor> > logger, IRabbitMqConnectionFactory rabbitMqConnectionFactory)
 {
     _responseProcessor         = responseProcessor ?? throw new ArgumentNullException(nameof(responseProcessor));
     _queueConfiguration        = queueConfiguration ?? throw new ArgumentNullException(nameof(queueConfiguration));
     _logger                    = logger ?? throw new ArgumentNullException(nameof(logger));
     _rabbitMqConnectionFactory = rabbitMqConnectionFactory ?? throw new ArgumentNullException(nameof(rabbitMqConnectionFactory));
 }
Example #8
0
 public RabbitConsumePersistenceService(IDispatchToEventSubscribers dispatchToEventSubscribers, EnvironmentConfiguration environmentConfiguration, IEventJsonSerializer eventJsonSerializer, IRabbitMqConfiguration rabbitMqConfiguration, IRabbitMqConnectionFactory rabbitMqConnectionFactory)
 {
     _dispatchToEventSubscribers = dispatchToEventSubscribers;
     _environmentConfiguration   = environmentConfiguration;
     _eventJsonSerializer        = eventJsonSerializer;
     _rabbitMqConfiguration      = rabbitMqConfiguration;
     _rabbitMqConnectionFactory  = rabbitMqConnectionFactory;
 }
Example #9
0
 public RabbitOrderService(
     IRabbitMqConnectionFactory factory,
     IQueueService queueService
     )
 {
     _factory      = factory;
     _queueService = queueService;
 }
 public AnotherCustomBatchMessageHandler(
     IRabbitMqConnectionFactory rabbitMqConnectionFactory,
     IEnumerable <BatchConsumerConnectionOptions> batchConsumerConnectionOptions,
     ILogger <AnotherCustomBatchMessageHandler> logger)
     : base(rabbitMqConnectionFactory, batchConsumerConnectionOptions, logger)
 {
     _logger = logger;
 }
Example #11
0
 public StubBaseBatchMessageHandler(
     IStubCaller caller,
     IRabbitMqConnectionFactory rabbitMqConnectionFactory,
     IEnumerable <BatchConsumerConnectionOptions> batchConsumerConnectionOptions,
     ILogger <StubBaseBatchMessageHandler> logger)
     : base(rabbitMqConnectionFactory, batchConsumerConnectionOptions, logger)
 {
     _caller = caller;
 }
 public CustomBatchMessageHandler(
     IRabbitMqConnectionFactory rabbitMqConnectionFactory,
     IEnumerable <BatchConsumerConnectionOptions> batchConsumerConnectionOptions,
     IEnumerable <IBatchMessageHandlingMiddleware> batchMessageHandlingMiddlewares,
     ILoggingService loggingService,
     ILogger <CustomBatchMessageHandler> logger)
     : base(rabbitMqConnectionFactory, batchConsumerConnectionOptions, batchMessageHandlingMiddlewares, loggingService)
 {
     _logger = logger;
 }
 public StubBaseBatchMessageHandler(
     IStubCaller caller,
     IRabbitMqConnectionFactory rabbitMqConnectionFactory,
     IEnumerable <BatchConsumerConnectionOptions> batchConsumerConnectionOptions,
     IEnumerable <IBatchMessageHandlingMiddleware> batchMessageHandlingMiddlewares,
     ILoggingService loggingService)
     : base(rabbitMqConnectionFactory, batchConsumerConnectionOptions, batchMessageHandlingMiddlewares, loggingService)
 {
     _caller = caller;
 }
 public ConsumingWithScopeBatchMessageHandler(
     IRabbitMqConnectionFactory rabbitMqConnectionFactory,
     IEnumerable <BatchConsumerConnectionOptions> batchConsumerConnectionOptions,
     IEnumerable <IBatchMessageHandlingMiddleware> batchMessageHandlingMiddlewares,
     ILoggingService loggingService,
     IServiceScopeFactory scopeFactory)
     : base(rabbitMqConnectionFactory, batchConsumerConnectionOptions, batchMessageHandlingMiddlewares, loggingService)
 {
     _scopeFactory = scopeFactory;
 }
Example #15
0
 public ConsumingWithProviderBatchMessageHandler(
     IRabbitMqConnectionFactory rabbitMqConnectionFactory,
     IEnumerable <BatchConsumerConnectionOptions> batchConsumerConnectionOptions,
     IEnumerable <IBatchMessageHandlingMiddleware> batchMessageHandlingMiddlewares,
     ILoggingService loggingService,
     IServiceProvider provider)
     : base(rabbitMqConnectionFactory, batchConsumerConnectionOptions, batchMessageHandlingMiddlewares, loggingService)
 {
     _dbContext = provider.GetRequiredService <ApplicationDbContext>();
 }
Example #16
0
 public RabbitMqPublisher(
     ILog log,
     IRabbitMqConnectionFactory connectionFactory,
     IRabbitMqConfiguration configuration,
     ITransientFaultHandler <IRabbitMqRetryStrategy> transientFaultHandler)
 {
     _log = log;
     _connectionFactory     = connectionFactory;
     _configuration         = configuration;
     _transientFaultHandler = transientFaultHandler;
 }
 public RabbitMqPublisher(
     ILog log,
     IRabbitMqConnectionFactory connectionFactory,
     IRabbitMqConfiguration configuration,
     ITransientFaultHandler<IRabbitMqRetryStrategy> transientFaultHandler)
 {
     _log = log;
     _connectionFactory = connectionFactory;
     _configuration = configuration;
     _transientFaultHandler = transientFaultHandler;
 }
 public RabbitMqSubscriber(
     ILog log,
     IRabbitMqConnectionFactory connectionFactory,
     IRabbitMqConfiguration configuration,
     ITransientFaultHandler <IRabbitMqRetryStrategy> transientFaultHandler,
     IRabbitMqMessageFactory rabbitMqMessageFactory
     )
 {
     _log = log;
     _connectionFactory      = connectionFactory;
     _configuration          = configuration;
     _transientFaultHandler  = transientFaultHandler;
     _rabbitMqMessageFactory = rabbitMqMessageFactory;
 }
 public ChannelDeclarationService(
     IProducingService producingService,
     IConsumingService consumingService,
     IRabbitMqConnectionFactory rabbitMqConnectionFactory,
     IOptions <RabbitMqConnectionOptions> connectionOptions,
     IEnumerable <RabbitMqExchange> exchanges,
     ILoggingService loggingService)
 {
     _producingService          = producingService;
     _consumingService          = consumingService;
     _rabbitMqConnectionFactory = rabbitMqConnectionFactory;
     _connectionOptions         = connectionOptions.Value;
     _exchanges      = exchanges;
     _loggingService = loggingService;
 }
        public RabbitMqManagementClient(IRabbitMqConnectionFactory connectionFactory,
                                        IRabbitMqManagementApiClient client,
                                        IOptions<RabbitMqOptions> options)
        {
            if (connectionFactory == null)
                throw new ArgumentNullException(nameof(connectionFactory));
            if (client == null)
                throw new ArgumentNullException(nameof(client));
            if (options == null)
                throw new ArgumentNullException(nameof(options));

            _connectionFactory = connectionFactory;
            _client = client;
            _options = options;
        }
        protected BaseBatchMessageHandler(
            IRabbitMqConnectionFactory rabbitMqConnectionFactory,
            IEnumerable <BatchConsumerConnectionOptions> batchConsumerConnectionOptions,
            ILogger <BaseBatchMessageHandler> logger)
        {
            var optionsContainer = batchConsumerConnectionOptions.FirstOrDefault(x => x.Type == GetType());

            if (optionsContainer is null)
            {
                throw new ArgumentNullException($"Client connection options for {nameof(BaseBatchMessageHandler)} has not been found.", nameof(batchConsumerConnectionOptions));
            }

            _clientOptions             = optionsContainer.ClientOptions ?? throw new ArgumentNullException($"Consumer client options is null for {nameof(BaseBatchMessageHandler)}.", nameof(optionsContainer.ClientOptions));
            _rabbitMqConnectionFactory = rabbitMqConnectionFactory;
            _logger = logger;
        }
 public RabbitMqSubscriber(
     ILog log,
     IRabbitMqConnectionFactory connectionFactory,
     IRabbitMqConfiguration configuration,
     IRabbitMqMessageFactory rabbitMqMessageFactory,
     IEventJsonSerializer eventJsonSerializer,
     IDispatchToEventSubscribers dispatchToEventSubscribers
     )
 {
     _log = log;
     _connectionFactory          = connectionFactory;
     _configuration              = configuration;
     _rabbitMqMessageFactory     = rabbitMqMessageFactory;
     _eventJsonSerializer        = eventJsonSerializer;
     _dispatchToEventSubscribers = dispatchToEventSubscribers;
 }
        protected BaseBatchMessageHandler(
            IRabbitMqConnectionFactory rabbitMqConnectionFactory,
            IEnumerable <BatchConsumerConnectionOptions> batchConsumerConnectionOptions,
            IEnumerable <IBatchMessageHandlingMiddleware> batchMessageHandlingMiddlewares,
            ILoggingService loggingService)
        {
            var optionsContainer = batchConsumerConnectionOptions.FirstOrDefault(x => x.Type == GetType());

            if (optionsContainer is null)
            {
                throw new ArgumentNullException($"Client connection options for {nameof(BaseBatchMessageHandler)} has not been found.", nameof(batchConsumerConnectionOptions));
            }

            _serviceOptions                  = optionsContainer.ServiceOptions;
            _rabbitMqConnectionFactory       = rabbitMqConnectionFactory;
            _batchMessageHandlingMiddlewares = batchMessageHandlingMiddlewares;
            _loggingService                  = loggingService;
        }
Example #24
0
        public QueueService(
            Guid guid,
            IRabbitMqConnectionFactory rabbitMqConnectionFactory,
            IEnumerable <RabbitMqConnectionOptionsContainer> connectionOptionsContainers,
            IMessageHandlingPipelineExecutingService messageHandlingPipelineExecutingService,
            IEnumerable <RabbitMqExchange> exchanges,
            ILogger <QueueService> logger)
        {
            var optionsContainer = connectionOptionsContainers.FirstOrDefault(x => x.Guid == guid);

            if (optionsContainer is null)
            {
                throw new ArgumentException($"Connection options container for {nameof(QueueService)} with the guid {guid} is not found.", nameof(connectionOptionsContainers));
            }

            _rabbitMqConnectionFactory = rabbitMqConnectionFactory;
            _messageHandlingPipelineExecutingService = messageHandlingPipelineExecutingService;
            _exchanges = exchanges;
            _logger    = logger;

            ConfigureConnectionInfrastructure(optionsContainer);
            StartClient();
        }
Example #25
0
 public SendSmsMessage(IOptions <RabbitMqConnectionData> rabbitMqConnectionData,
                       IRabbitMqConnectionFactory factory)
 {
     _rabbitMqConnectionData = rabbitMqConnectionData.Value;
     _factory = factory;
 }
Example #26
0
 public MockReceiverService(IRabbitMqConnectionFactory connectionFactory, ILogger <MockReceiverService> logger)
 {
     _connectionFactory = connectionFactory;
     _logger            = logger;
 }
Example #27
0
 public RabbitMqSender(IRabbitMqConnectionFactory connectionFactory, IRabbitMqSettings settings)
 {
     _connectionFactory = connectionFactory;
     _settings          = settings;
 }
 public ServiceBusConnectionFactory(IRabbitMqConnectionFactory connectionFactory)
 {
     _connectionFactory = connectionFactory;
 }