/// <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);
        }
Пример #2
0
        /// <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);
        }