protected virtual void AddRedeliveryPipeSpecification <TMessage>(IConsumePipeConfigurator configurator)
            where TMessage : class
        {
            var redeliverySpecification = new ScheduleMessageRedeliveryPipeSpecification <TMessage>();

            configurator.AddPipeSpecification(redeliverySpecification);
        }
        void IHandlerConfigurationObserver.HandlerConfigured <T>(IHandlerConfigurator <T> configurator)
        {
            var redeliverySpecification = new ScheduleMessageRedeliveryPipeSpecification <T>();
            var retrySpecification      = new RedeliveryRetryPipeSpecification <T>();

            _configure?.Invoke(retrySpecification);

            configurator.AddPipeSpecification(redeliverySpecification);
            configurator.AddPipeSpecification(retrySpecification);
        }
        void ISagaConfigurationObserver.SagaMessageConfigured <T, TMessage>(ISagaMessageConfigurator <T, TMessage> configurator)
        {
            var redeliverySpecification = new ScheduleMessageRedeliveryPipeSpecification <TMessage>();
            var retrySpecification      = new RedeliveryRetryPipeSpecification <TMessage>();

            _configure?.Invoke(retrySpecification);

            _configurator.Message <TMessage>(x =>
            {
                x.AddPipeSpecification(redeliverySpecification);
                x.AddPipeSpecification(retrySpecification);
            });
        }
Exemplo n.º 4
0
        public void MessageConfigured <TMessage>(IConsumePipeConfigurator configurator)
            where TMessage : class
        {
            var redeliverySpecification = new ScheduleMessageRedeliveryPipeSpecification <TMessage>();

            configurator.AddPipeSpecification(redeliverySpecification);

            var retrySpecification = new RedeliveryRetryPipeSpecification <TMessage>();

            _configure?.Invoke(retrySpecification);

            configurator.AddPipeSpecification(retrySpecification);
        }
        void ISagaConfigurationObserver.SagaMessageConfigured <TSaga, TMessage>(ISagaMessageConfigurator <TSaga, TMessage> configurator)
        {
            Tuple <Type, Type> key = Tuple.Create(typeof(TSaga), typeof(TMessage));

            if (_messageTypes.Contains(key))
            {
                return;
            }

            _messageTypes.Add(key);

            var redeliverySpecification = new ScheduleMessageRedeliveryPipeSpecification <TMessage>();

            _configurator.AddPipeSpecification(redeliverySpecification);

            var retrySpecification = new RedeliveryRetryPipeSpecification <TMessage>();

            _configure?.Invoke(retrySpecification);

            _configurator.AddPipeSpecification(retrySpecification);
        }