/// <summary> /// Use the message scheduler to schedule redelivery of a specific message type based upon the retry policy, via /// the delayed exchange feature of ActiveMQ. /// </summary> /// <param name="configurator"></param> /// <param name="configure"></param> public static void UseDelayedRedelivery <T>(this IPipeConfigurator <ConsumeContext <T> > configurator, Action <IRetryConfigurator> configure) where T : class { if (configurator == null) { throw new ArgumentNullException(nameof(configurator)); } var redeliverySpecification = new ActiveMqRedeliveryPipeSpecification <T>(); configurator.AddPipeSpecification(redeliverySpecification); var retrySpecification = new RedeliveryRetryPipeSpecification <T>(); configure?.Invoke(retrySpecification); configurator.AddPipeSpecification(retrySpecification); }
protected override void AddRedeliveryPipeSpecification <TMessage>(IConsumePipeConfigurator configurator) { var redeliverySpecification = new ActiveMqRedeliveryPipeSpecification <TMessage>(); configurator.AddPipeSpecification(redeliverySpecification); }