Example #1
0
        public bool Inspect <TComponent, TMessage>(SelectedContextConsumerMessageSink <TComponent, TMessage> sink)
            where TMessage : class
            where TComponent : class, Consumes <IConsumeContext <TMessage> > .Selected
        {
            Append(string.Format("Conditionally Consumed by Component {0} ({1} w/Context)", GetComponentName <TComponent>(),
                                 GetMessageName <TMessage>()));

            return(true);
        }
Example #2
0
        public UnsubscribeAction Connect <T>(IInboundPipelineConfigurator configurator, IConsumerFactory <T> factory)
            where T : class
        {
            var consumerFactory = factory as IConsumerFactory <TConsumer>;

            if (consumerFactory == null)
            {
                throw new ArgumentException("The consumer factory is of an invalid type: " +
                                            typeof(T).ToShortTypeName());
            }

            var sink = new SelectedContextConsumerMessageSink <TConsumer, TMessage>(consumerFactory);

            return(configurator.Pipeline.ConnectToRouter(sink, () => configurator.SubscribedTo <TMessage>()));
        }