public static EventActivityBinder <TInstance> Produce <TInstance, TMessage>(this EventActivityBinder <TInstance> source, EventHubNameProvider <TInstance> nameProvider, Task <TMessage> message, Action <EventHubSendContext <TMessage> > contextCallback = null) where TInstance : class, SagaStateMachineInstance where TMessage : class { return(source.Add(new ProduceActivity <TInstance, TMessage>(nameProvider, x => message, contextCallback))); }
public ProduceActivity(EventHubNameProvider <TInstance> nameProvider, AsyncEventMessageFactory <TInstance, TMessage> messageFactory, Action <EventHubSendContext <TMessage> > contextCallback) { _nameProvider = nameProvider; _asyncMessageFactory = messageFactory; _pipe = contextCallback != null?Pipe.Execute(contextCallback) : Pipe.Empty <EventHubSendContext <TMessage> >(); }
public static EventActivityBinder <TInstance, TData> Produce <TInstance, TData, TMessage>(this EventActivityBinder <TInstance, TData> source, EventHubNameProvider <TInstance, TData> nameProvider, AsyncEventMessageFactory <TInstance, TData, TMessage> messageFactory, Action <EventHubSendContext <TMessage> > contextCallback = null) where TInstance : class, SagaStateMachineInstance where TData : class where TMessage : class { return(source.Add(new ProduceActivity <TInstance, TData, TMessage>(nameProvider, messageFactory, contextCallback))); }