public bool Inspect <TComponent, TMessage>(ConsumerMessageSink <TComponent, TMessage> sink) where TMessage : class where TComponent : class, Consumes <TMessage> .All { Append(string.Format("Consumed by Component {0} ({1})", GetComponentName <TComponent>(), GetMessageName <TMessage>())); return(true); }
public bool Inspect <TComponent, TMessage>(ConsumerMessageSink <TComponent, TMessage> sink) where TComponent : class, Consumes <TMessage> .All where TMessage : class { if (typeof(TMessage) == typeof(T)) { Result = Result.Concat(new[] { sink as IPipelineSink <T> }); return(false); } return(true); }
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 ConsumerMessageSink <TConsumer, TMessage>(consumerFactory); return(configurator.Pipeline.ConnectToRouter(sink, () => configurator.SubscribedTo <TMessage>())); }