public ProjectionEngine(IProjector projector, IFilterableDatabase database, ITransactionalDatabase transactionalDatabase, IServiceProvider serviceProvider, ILogger <ProjectionEngine> logger = default) { if (projector == null) { throw new ArgumentNullException(nameof(projector)); } if (database == null) { throw new ArgumentNullException(nameof(database)); } if (transactionalDatabase == null) { throw new ArgumentNullException(nameof(transactionalDatabase)); } if (serviceProvider == null) { throw new ArgumentNullException(nameof(serviceProvider)); } _projector = projector; _database = database; _transactionalDatabase = transactionalDatabase; _serviceProvider = serviceProvider; _logger = logger; }
public EntryStateStorageFactory(IFilterableDatabase database) { if (database == null) { throw new ArgumentNullException(nameof(database)); } _dataStore = database; }
public TransactionStateStorage(IFilterableDatabase database) { if (database == null) { throw new ArgumentNullException(nameof(database)); } _database = database; }
public StreamPersistence(IFilterableDatabase database /*, ISnapshotProcessor snapshotProcessor*/) { if (database == null) { throw new ArgumentNullException(nameof(database)); } //if (snapshotProcessor == null) // throw new ArgumentNullException(nameof(snapshotProcessor)); _database = database; //_snapshotProcessor = snapshotProcessor; }
public CoordinationStorage(IFilterableDatabase database, IStoredSessionManager storedSessionManager, IStoredEntryManager storedEntryManager) { if (database == null) { throw new ArgumentNullException(nameof(database)); } if (storedSessionManager == null) { throw new ArgumentNullException(nameof(storedSessionManager)); } if (storedEntryManager == null) { throw new ArgumentNullException(nameof(storedEntryManager)); } _database = database; _storedSessionManager = storedSessionManager; _storedEntryManager = storedEntryManager; }
public TargetScopedProjectionEngine(IFilterableDatabase database) { _targetMetadataCache = new Dictionary <ProjectionTargetDescriptor, ProjectionTargetMetadataCacheEntry>(); _database = database; }
private static CoordinationStorage BuildCoordinationStorage(IServiceProvider serviceProvider, IFilterableDatabase database) { Assert(serviceProvider != null); Assert(database != null); var storedSessionManager = serviceProvider.GetRequiredService <IStoredSessionManager>(); var storedEntryManager = serviceProvider.GetRequiredService <IStoredEntryManager>(); return(new CoordinationStorage(database, storedSessionManager, storedEntryManager)); }
public static ICoordinationBuilder UseDatabase(this ICoordinationBuilder builder, IFilterableDatabase database) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (database == null) { throw new ArgumentNullException(nameof(database)); } builder.Services.UseCoordinationStorage(p => BuildCoordinationStorage(p, database)); return(builder); }