Ejemplo n.º 1
0
 public QueueSubscribedReactorWrapper(
     IMessageAdapterWithSubscribing messageAdapter, int reconnectTimeout, bool?serviceHealthDependent,
     IHealthCheckingService healthCheckingService, IMessagingCallContextAccessor messagingCallContextAccessor) : base(messageAdapter,
                                                                                                                      reconnectTimeout,
                                                                                                                      serviceHealthDependent,
                                                                                                                      healthCheckingService,
                                                                                                                      messagingCallContextAccessor,
                                                                                                                      Mock.Of <ILogger>())
 {
 }
Ejemplo n.º 2
0
 private static QueueSubscribedReactorWrapper GetReactor(
     bool?serviceHealthDependent = true,
     IMessageAdapterWithSubscribing messageAdapter = null,
     IHealthCheckingService healthService          = null,
     IMessagingCallContextAccessor messagingCallContextAccessor = null)
 => new QueueSubscribedReactorWrapper(
     messageAdapter ?? Given.MessageAdapter.Please <IMessageAdapterWithSubscribing>(),
     100,
     serviceHealthDependent,
     healthService ?? Mock.Of <IHealthCheckingService>(),
     messagingCallContextAccessor ?? Mock.Of <IMessagingCallContextAccessor>());
 /// <inheritdoc />
 public QueueSubscribeAndReplyReactor(
     IMessageAdapterWithSubscribing messageAdapter, IEnumerable <IRepliableMessageProcessor> messageProcessors,
     IEnumerable <IRepliableMessageProcessorAsync> asyncMessageProcessor, int reconnectTimeout, string pollingId,
     bool?serviceHealthDependent, IHealthCheckingService healthCheckingService,
     IMessagingCallContextAccessor messagingCallContextAccessor) : base(messageAdapter, reconnectTimeout, pollingId,
                                                                        serviceHealthDependent, healthCheckingService,
                                                                        messagingCallContextAccessor)
 {
     _messageProcessors      = messageProcessors.ThrowIfNull(nameof(messageProcessors));
     _asyncMessageProcessors = asyncMessageProcessor.ThrowIfNull(nameof(asyncMessageProcessor));
 }
Ejemplo n.º 4
0
        /// <summary>
        ///   Базовый класс для реактора, работающего на основе шаблона "Наблюдатель"
        /// </summary>
        /// <exception cref="ArgumentOutOfRangeException"></exception>
        protected QueueSubscribedReactorBase(
            IMessageAdapterWithSubscribing messageAdapter, int reconnectTimeout, string pollingId, bool?serviceHealthDependent,
            IHealthCheckingService healthCheckingService, IMessagingCallContextAccessor messagingCallContextAccessor)
        {
            adapter = messageAdapter.ThrowIfNull(nameof(messageAdapter));
            _messagingCallContextAccessor = messagingCallContextAccessor.ThrowIfNull(nameof(messagingCallContextAccessor));
            _healthCheckingService        = healthCheckingService.ThrowIfNull(nameof(serviceHealthDependent));
            if (reconnectTimeout <= 0)
            {
                throw new ArgumentOutOfRangeException(nameof(reconnectTimeout));
            }

            _hasDiagnosticErrors    = false;
            _serviceHealthDependent = serviceHealthDependent ?? false;

            _reconnectPolling = new Polling(reconnectTimeout, pollingId);
        }
Ejemplo n.º 5
0
 /// <inheritdoc />
 public QueueSubscribedReactor(
     IMessageAdapterWithSubscribing messageAdapter,
     IEnumerable <IMessageProcessor> messageProcessors,
     IEnumerable <IMessageProcessorAsync> asyncMessageProcessor,
     int reconnectTimeout,
     bool?serviceHealthDependent,
     IHealthCheckingService healthCheckingService,
     IMessagingCallContextAccessor messagingCallContextAccessor,
     ILogger <QueueSubscribedReactor> logger) : base(messageAdapter,
                                                     reconnectTimeout,
                                                     serviceHealthDependent,
                                                     healthCheckingService,
                                                     messagingCallContextAccessor,
                                                     logger)
 {
     _messageProcessors      = messageProcessors;
     _asyncMessageProcessors = asyncMessageProcessor;
 }
Ejemplo n.º 6
0
        /// <summary>
        ///   Базовый класс для реактора, работающего на основе шаблона "Наблюдатель"
        /// </summary>
        /// <exception cref="ArgumentOutOfRangeException"></exception>
        protected QueueSubscribedReactorBase(
            IMessageAdapterWithSubscribing messageAdapter,
            int reconnectTimeout,
            bool?serviceHealthDependent,
            IHealthCheckingService healthCheckingService,
            IMessagingCallContextAccessor messagingCallContextAccessor,
            ILogger logger)
        {
            _logger = logger;
            adapter = messageAdapter;
            _messagingCallContextAccessor = messagingCallContextAccessor;
            _healthCheckingService        = healthCheckingService;
            if (reconnectTimeout <= 0)
            {
                throw new ArgumentOutOfRangeException(nameof(reconnectTimeout));
            }

            _hasDiagnosticErrors    = false;
            _serviceHealthDependent = serviceHealthDependent ?? false;

            _reconnectTimeout = reconnectTimeout;
        }
Ejemplo n.º 7
0
 public QueueSubscribedReactorBuilder WithMessageAdapter(Func <MessageAdapterBuilder, IMessageAdapterWithSubscribing> builder)
 {
     _messageAdapter = builder(new MessageAdapterBuilder());
     return(this);
 }
Ejemplo n.º 8
0
 public QueueSubscribedReactorBuilder WithMessageAdapter(IMessageAdapterWithSubscribing adapter)
 {
     _messageAdapter = adapter;
     return(this);
 }