public static InstanceSubscriptionConfigurator CompensateActivityHost <TActivity, TLog>( this SubscriptionBusServiceConfigurator configurator, CompensateActivityFactory <TLog> factory) where TActivity : CompensateActivity <TLog> where TLog : class { var host = new CompensateActivityHost <TActivity, TLog>(factory); return(configurator.Instance(host)); }
public static InstanceSubscriptionConfigurator CompensateActivityHost <TActivity, TLog>( this SubscriptionBusServiceConfigurator configurator, Func <TLog, TActivity> controllerFactory) where TActivity : CompensateActivity <TLog> where TLog : class { var factory = new FactoryMethodCompensateActivityFactory <TActivity, TLog>(controllerFactory); var host = new CompensateActivityHost <TActivity, TLog>(factory); return(configurator.Instance(host)); }
public void Configure(IReceiveEndpointBuilder builder) { _activityPipeConfigurator.UseFilter(new CompensateActivityFilter <TActivity, TLog>(_observers)); IPipe <CompensateActivityContext <TActivity, TLog> > compensateActivityPipe = _activityPipeConfigurator.Build(); _compensatePipeConfigurator.UseFilter(new CompensateActivityFactoryFilter <TActivity, TLog>(_activityFactory, compensateActivityPipe)); IPipe <CompensateContext <TLog> > compensatePipe = _compensatePipeConfigurator.Build(); var host = new CompensateActivityHost <TActivity, TLog>(compensatePipe); _routingSlipConfigurator.UseFilter(host); builder.ConnectConsumePipe(_routingSlipConfigurator.Build()); }