public PersistenceTestsConfiguration() { var statefulService = (StatefulService)TestContext.CurrentContext.Test.Properties.Get("StatefulService"); stateManager = statefulService.StateManager; SynchronizedStorage = new SynchronizedStorage(stateManager); SynchronizedStorageAdapter = new SynchronizedStorageAdapter(); var sagaInfoCache = new SagaInfoCache(); sagaInfoCache.Initialize(SagaMetadataCollection); SagaStorage = new SagaPersister(sagaInfoCache); var sagaIdGenerator = new SagaIdGenerator(); sagaIdGenerator.Initialize(sagaInfoCache); SagaIdGenerator = sagaIdGenerator; OutboxStorage = new OutboxStorage(statefulService.StateManager); }
public async Task Configure(CancellationToken cancellationToken = default) { var statefulService = (StatefulService)TestContext.CurrentContext.Test.Properties.Get("StatefulService"); stateManager = statefulService.StateManager; var timeout = SessionTimeout ?? TimeSpan.FromSeconds(4); SynchronizedStorage = new SynchronizedStorage(stateManager, timeout); SynchronizedStorageAdapter = new SynchronizedStorageAdapter(); var sagaInfoCache = new SagaInfoCache(); sagaInfoCache.Initialize(SagaMetadataCollection); SagaStorage = new SagaPersister(sagaInfoCache); var sagaIdGenerator = new SagaIdGenerator(); sagaIdGenerator.Initialize(sagaInfoCache); SagaIdGenerator = sagaIdGenerator; OutboxStorage = new OutboxStorage(statefulService.StateManager, timeout); await stateManager.RegisterOutboxStorage((OutboxStorage)OutboxStorage, cancellationToken).ConfigureAwait(false); }