Example #1
0
        protected override void ConfigureMessagePipe(IPipeConfigurator <ConsumeContext <TMessage> > configurator, ISagaRepository <TInstance> repository,
                                                     IPipe <SagaConsumeContext <TInstance, TMessage> > sagaPipe)
        {
            if (_messageFilter != null)
            {
                configurator.UseFilter(_messageFilter);
            }

            configurator.UseFilter(_sagaFilterFactory(repository, _policy, sagaPipe));
        }
Example #2
0
 /// <summary>
 /// Configures the command processing pipeline
 /// </summary>
 private static void CommandsHandlingConfiguration(
     IServiceProvider provider,
     IPipeConfigurator <ICommandHandlingContext> cfg)
 {
     //Using standard GreenPipes filters
     cfg.UseInlineFilter(async(context, next) =>
     {
         //Pre-processing logic
         await next.Send(context);
         //Post-processing logic
     });
     cfg.UseRetry(retry =>
     {
         retry
         .Interval(3, TimeSpan.FromSeconds(1))
         .Handle <OptimisticLockException>();
     });
     cfg.UseFilter(new SomeCommandFilter(provider.GetService <ISingletonService>()));
 }
 protected override void ConfigureMessagePipe(IPipeConfigurator <ConsumeContext <TMessage> > configurator, ISagaRepository <TSaga> repository,
                                              IPipe <SagaConsumeContext <TSaga, TMessage> > sagaPipe)
 {
     configurator.UseFilter(new CorrelationIdMessageFilter <TMessage>(_correlationIdSelector));
     configurator.UseFilter(new CorrelatedSagaFilter <TSaga, TMessage>(repository, _policy, sagaPipe));
 }
 protected override void ConfigureSagaPipe(IPipeConfigurator <SagaConsumeContext <TSaga, TMessage> > configurator)
 {
     configurator.UseFilter(_consumeFilter);
 }
 protected override void ConfigureMessagePipe(IPipeConfigurator <ConsumeContext <TMessage> > configurator, ISagaRepository <TSaga> repository,
                                              IPipe <SagaConsumeContext <TSaga, TMessage> > sagaPipe)
 {
     configurator.UseFilter(new QuerySagaFilter <TSaga, TMessage>(repository, _policy, _queryFactory, sagaPipe));
 }