public static void CompensateActivityHost <TActivity, TLog>(this IReceiveEndpointConfigurator configurator, IContainer container,
                                                                    Action <ICompensateActivityConfigurator <TActivity, TLog> > configure = null)
            where TActivity : class, ICompensateActivity <TLog>
            where TLog : class
        {
            var compensateActivityScopeProvider = new StructureMapCompensateActivityScopeProvider <TActivity, TLog>(container);

            var factory = new ScopeCompensateActivityFactory <TActivity, TLog>(compensateActivityScopeProvider);

            configurator.CompensateActivityHost(factory, configure);
        }
Exemple #2
0
        public static void CompensateActivityHost <TActivity, TLog>(this IReceiveEndpointConfigurator configurator, IContext context)
            where TActivity : class, CompensateActivity <TLog>
            where TLog : class
        {
            var compensateActivityScopeProvider = new StructureMapCompensateActivityScopeProvider <TActivity, TLog>(context);

            var factory = new ScopeCompensateActivityFactory <TActivity, TLog>(compensateActivityScopeProvider);

            var specification = new CompensateActivityHostSpecification <TActivity, TLog>(factory);

            configurator.AddEndpointSpecification(specification);
        }