コード例 #1
0
        public static ConsumerTestHarness <T> Consumer <T>(this BusTestHarness harness)
            where T : class, IConsumer, new()
        {
            var consumerFactory = new DefaultConstructorConsumerFactory <T>();

            return(new ConsumerTestHarness <T>(harness, consumerFactory));
        }
コード例 #2
0
        public static ConsumerTestHarness <T> Consumer <T>(this BusTestHarness harness, Action <IConsumerConfigurator <T> > configure,
                                                           string queueName = null)
            where T : class, IConsumer, new()
        {
            var consumerFactory = new DefaultConstructorConsumerFactory <T>();

            return(new ConsumerTestHarness <T>(harness, consumerFactory, configure, queueName));
        }
コード例 #3
0
        public static ConnectHandle ConnectConsumer <T>(this IConsumePipeConnector filter,
                                                        params IPipeSpecification <ConsumerConsumeContext <T> >[] pipeSpecifications)
            where T : class, new()
        {
            var consumerFactory = new DefaultConstructorConsumerFactory <T>();

            IConsumerConnector connector = ConsumerConnectorCache.GetConsumerConnector <T>();

            return(connector.ConnectConsumer(filter, consumerFactory, pipeSpecifications));
        }
コード例 #4
0
        /// <summary>
        /// Subscribes a consumer with a default constructor to the endpoint
        /// </summary>
        /// <typeparam name="TConsumer">The consumer type</typeparam>
        /// <param name="configurator"></param>
        /// <param name="configure"></param>
        /// <returns></returns>
        public static void Consumer<TConsumer>(this IReceiveEndpointConfigurator configurator, Action<IConsumerConfigurator<TConsumer>> configure = null)
            where TConsumer : class, IConsumer, new()
        {
            if (_log.IsDebugEnabled)
                _log.DebugFormat("Subscribing Consumer: {0} (using default constructor)", TypeMetadataCache<TConsumer>.ShortName);

            var consumerFactory = new DefaultConstructorConsumerFactory<TConsumer>();

            var consumerConfigurator = new ConsumerConfigurator<TConsumer>(consumerFactory, configurator);

            configure?.Invoke(consumerConfigurator);

            configurator.AddEndpointSpecification(consumerConfigurator);
        }
コード例 #5
0
        /// <summary>
        /// Subscribes a consumer with a default constructor to the endpoint
        /// </summary>
        /// <typeparam name="TConsumer">The consumer type</typeparam>
        /// <param name="configurator"></param>
        /// <param name="configure"></param>
        /// <returns></returns>
        public static void Consumer <TConsumer>(this IReceiveEndpointConfigurator configurator, Action <IConsumerConfigurator <TConsumer> > configure = null)
            where TConsumer : class, IConsumer, new()
        {
            if (configurator == null)
            {
                throw new ArgumentNullException(nameof(configurator));
            }

            LogContext.Debug?.Log("Subscribing Consumer: {ConsumerType} (using default constructor)", TypeMetadataCache <TConsumer> .ShortName);

            var consumerFactory = new DefaultConstructorConsumerFactory <TConsumer>();

            var consumerConfigurator = new ConsumerConfigurator <TConsumer>(consumerFactory, configurator);

            configure?.Invoke(consumerConfigurator);

            configurator.AddEndpointSpecification(consumerConfigurator);
        }