示例#1
0
 public static void RegisterSaga <TSaga, TData>(this IUnityContainer container, Func <object, ISagaInstance <TSaga, TData> > factory, ISagaDescriptor descriptor, Func <ISnapshotsPersistencePolicy> snapShotsPolicy = null)
     where TSaga : Saga <TData>
     where TData : class, ISagaState
 {
     SagaConfiguration.Instance <TSaga, TData>(factory, descriptor)
     .Register(container);
 }
示例#2
0
 public static void RegisterSaga <TSaga, TData, TFactory, TStartMessage>(this IUnityContainer container, ISagaDescriptor descriptor)
     where TSaga : Saga <TData>
     where TData : class, ISagaState
     where TFactory : ISagaFactory <ISagaInstance <TSaga, TData>, SagaDataAggregate <TData> >,
 ISagaFactory <ISagaInstance <TSaga, TData>, TStartMessage>, new()
 {
     SagaConfiguration.Instance <TSaga, TData, TFactory, TStartMessage>(descriptor)
     .Register(container);
 }
示例#3
0
        public static void RegisterStateSaga <TSaga, TState, TFactory, TStartMessage>(this IUnityContainer container, ISagaDescriptor descriptor)
            where TFactory : ISagaFactory <TSaga, TState>,
        ISagaFactory <TSaga, TStartMessage>,
        new()

            where TSaga : class, ISagaInstance
            where TState : AggregateBase
        {
            container.Register(SagaConfiguration.State <TSaga, TState, TFactory, TStartMessage>(descriptor));
        }