void IHandlerConfigurationObserver.HandlerConfigured <T>(IHandlerConfigurator <T> configurator) { var redeliverySpecification = new DelayedRedeliveryPipeSpecification <T>(); var retrySpecification = new RedeliveryRetryPipeSpecification <T>(); _configure?.Invoke(retrySpecification); configurator.AddPipeSpecification(redeliverySpecification); configurator.AddPipeSpecification(retrySpecification); }
void IConsumerConfigurationObserver.ConsumerMessageConfigured <T, TMessage>(IConsumerMessageConfigurator <T, TMessage> configurator) { var redeliverySpecification = new DelayedRedeliveryPipeSpecification <TMessage>(); var retrySpecification = new RedeliveryRetryPipeSpecification <TMessage>(); _configure?.Invoke(retrySpecification); _configurator.Message <TMessage>(x => { x.AddPipeSpecification(redeliverySpecification); x.AddPipeSpecification(retrySpecification); }); }
void ISagaConfigurationObserver.SagaMessageConfigured <T, TMessage>(ISagaMessageConfigurator <T, TMessage> configurator) { var redeliverySpecification = new ScheduledRedeliveryPipeSpecification <TMessage>(); var retrySpecification = new RedeliveryRetryPipeSpecification <TMessage>(); _configure?.Invoke(retrySpecification); _configurator.Message <TMessage>(x => { x.AddPipeSpecification(redeliverySpecification); x.AddPipeSpecification(retrySpecification); }); }
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); }
public void MessageConfigured <TMessage>(IConsumePipeConfigurator configurator) where TMessage : class { AddRedeliveryPipeSpecification <TMessage>(configurator); if (typeof(TMessage) == typeof(RoutingSlip)) { return; } 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); }