/// <summary> /// Adds a callback filter to the send pipeline /// </summary> /// <param name="configurator"></param> /// <param name="callback">The callback to invoke</param> public static void UseSendExecute <T>(this ISendPipeConfigurator configurator, Action <SendContext <T> > callback) where T : class { var specification = new DelegatePipeSpecification <SendContext <T> >(callback); configurator.AddPipeSpecification(specification); }
/// <summary> /// Executes a synchronous method on the pipe /// </summary> /// <typeparam name="TContext">The context type</typeparam> /// <param name="configurator">The pipe configurator</param> /// <param name="callback">The callback to invoke</param> public static void UseExecute <TContext>(this IPipeConfigurator <TContext> configurator, Action <TContext> callback) where TContext : class, PipeContext { if (configurator == null) { throw new ArgumentNullException(nameof(configurator)); } var pipeBuilderConfigurator = new DelegatePipeSpecification <TContext>(callback); configurator.AddPipeSpecification(pipeBuilderConfigurator); }
/// <summary> /// Adds a callback filter to the send pipeline /// </summary> /// <param name="configurator"></param> /// <param name="callback">The callback to invoke</param> public static void UseSendExecute(this ISendPipeConfigurator configurator, Action <SendContext> callback) { var specification = new DelegatePipeSpecification <SendContext>(callback); configurator.AddPipeSpecification(specification); }