示例#1
0
        public SendTests()
        {
            IServiceCollection services = new ServiceCollection();

            services.AddSaga(cfg =>
            {
#if SQL_SERVER
                cfg.UseSqlServer(new SqlServerOptions()
                {
                    ConnectionString = "data source=.;initial catalog=sagatest;uid=dba;pwd=sql;"
                });
                cfg.UseDistributedLock(new SqlServerLockingOptions()
                {
                    ConnectionString = "data source=.;initial catalog=sagatest;uid=dba;pwd=sql;"
                });
#endif
            });

            IServiceProvider serviceProvider = services.BuildServiceProvider();

            sagaPersistance = serviceProvider.
                              GetRequiredService <ISagaPersistance>();

            sagaCoordinator = serviceProvider.
                              GetRequiredService <ISagaCoordinator>();
        }
示例#2
0
 public ExecuteStepCommandHandler(
     ISagaPersistance sagaPersistance,
     IServiceProvider serviceProvider,
     IDateTimeProvider dateTimeProvider, ILogger logger)
 {
     this.sagaPersistance  = sagaPersistance;
     this.serviceProvider  = serviceProvider;
     this.dateTimeProvider = dateTimeProvider;
     this.logger           = logger;
 }
 public SagaCoordinator(ISagaRegistrator sagaRegistrator, ISagaPersistance sagaPersistance,
                        IMessageBus messageBus, IDateTimeProvider dateTimeProvider,
                        IServiceProvider serviceProvider, ILogger logger)
 {
     this.sagaRegistrator  = sagaRegistrator;
     this.sagaPersistance  = sagaPersistance;
     this.messageBus       = messageBus;
     this.dateTimeProvider = dateTimeProvider;
     this.serviceProvider  = serviceProvider;
     this.logger           = logger;
 }