/// <summary>
 /// Sample class to handle load a <see cref="Projector{TQueryModel}"/> given an identity
 /// and a given event value.
 /// </summary>
 /// <param name="factory"></param>
 /// <param name="eventStore"></param>
 /// <param name="snapshotPersister"></param>
 public QueryModelRepository(
     IProjectorFactory factory,
     IStoreEvents eventStore,
     ISnapshotPersister snapshotPersister)
 {
     _factory           = factory;
     _eventStore        = eventStore;
     _snapshotPersister = snapshotPersister;
 }
 public CachedSnapshotManager(
     ISnapshotPersister persister,
     ISnapshotPersistenceStrategy snapshotPersistenceStrategy,
     Boolean cacheEnabled            = true,
     CacheItemPolicy cacheItemPolicy = null)
 {
     _cache     = new MemoryCache("CachedSnapshotManager");
     _persister = persister;
     _snapshotPersistenceStrategy = snapshotPersistenceStrategy;
     _standardCachePolicy         = cacheItemPolicy ?? new CacheItemPolicy()
     {
         SlidingExpiration = TimeSpan.FromMinutes(10)
     };
     _cacheEnabled = cacheEnabled;
 }
 public void SetUp()
 {
     _persister = Substitute.For <ISnapshotPersister>();
     sut        = new QueryModelRepository(_factory, _eventStore, _persister);
 }
Exemple #4
0
 public void SetUp()
 {
     _persister = NSubstitute.Substitute.For <ISnapshotPersister>();
     _snapshotPersistenceStrategy = new NumberOfCommitsShapshotPersistenceStrategy(NumberOfCommitsBeforeSnapshot);
     _sut = new CachedSnapshotManager(_persister, _snapshotPersistenceStrategy);
 }