public OutboundMessageInterceptor Create(IOutboundMessageInterceptor messageInterceptor) { var scope = new OutboundMessageInterceptorConfiguratorScope(); _sink.Inspect(scope); return ConfigureInterceptor(scope.InsertAfter, messageInterceptor); }
static OutboundMessageInterceptor ConfigureInterceptor( Func<IPipelineSink<ISendContext>, IPipelineSink<ISendContext>> insertAfter, IOutboundMessageInterceptor messageInterceptor) { if (insertAfter == null) throw new PipelineException("Unable to insert filter into pipeline for message type " + typeof (object).FullName); var interceptor = new OutboundMessageInterceptor(insertAfter, messageInterceptor); return interceptor; }
static OutboundMessageInterceptor ConfigureInterceptor( Func <IPipelineSink <ISendContext>, IPipelineSink <ISendContext> > insertAfter, IOutboundMessageInterceptor messageInterceptor) { if (insertAfter == null) { throw new PipelineException("Unable to insert filter into pipeline for message type " + typeof(object).FullName); } var interceptor = new OutboundMessageInterceptor(insertAfter, messageInterceptor); return(interceptor); }
public static void AddOutboundInterceptor(this ServiceBusConfigurator configurator, IOutboundMessageInterceptor interceptor) { var builderConfigurator = new PostCreateBusBuilderConfigurator(bus => { var interceptorConfigurator = new OutboundMessageInterceptorConfigurator(bus.OutboundPipeline); interceptorConfigurator.Create(interceptor); }); configurator.AddBusConfigurator(builderConfigurator); }