Example #1
0
 public MessagesStorageActions(Table messages, Table pendingMessages, QueuesStorageActions queuesStorageActions, IUuidGenerator uuidGenerator)
 {
     this.messages = messages;
     this.pendingMessages = pendingMessages;
     this.queuesStorageActions = queuesStorageActions;
     this.uuidGenerator = uuidGenerator;
 }
Example #2
0
 protected ActionsBase(DocumentDatabase database, SizeLimitedConcurrentDictionary<string, TouchedDocumentInfo> recentTouches, IUuidGenerator uuidGenerator, ILog log)
 {
     Database = database;
     RecentTouches = recentTouches;
     UuidGenerator = uuidGenerator;
     Log = log;
 }
Example #3
0
 public StorageActionsAccessor(QueuesStorage queuesStroage, IUuidGenerator uuidGenerator)
 {
     Items = new Dictionary<object, List<object>>();
     Queues = new QueuesStorageActions(queuesStroage.Queues);
     Messages = new MessagesStorageActions(queuesStroage.Messages, queuesStroage.PendingMessages, Queues, uuidGenerator);
     General = new GeneralStorageActions(queuesStroage.Identity);
 }
Example #4
0
		public DocumentStorageActions(
			JET_INSTANCE instance,
			string database,
			TableColumnsCache tableColumnsCache,
			OrderedPartCollection<AbstractDocumentCodec> documentCodecs,
			IUuidGenerator uuidGenerator,
			IDocumentCacher cacher,
			TransactionalStorage transactionalStorage)
		{
			this.tableColumnsCache = tableColumnsCache;
			this.documentCodecs = documentCodecs;
			this.uuidGenerator = uuidGenerator;
			this.cacher = cacher;
			this.transactionalStorage = transactionalStorage;
			try
			{
				session = new Session(instance);
				transaction = new Transaction(session);
				Api.JetOpenDatabase(session, database, null, out dbid, OpenDatabaseGrbit.None);
			}
			catch (Exception)
			{
				Dispose();
				throw;
			}
		}
Example #5
0
 public QueueStorageActions(TableStorage tableStorage, IUuidGenerator generator, Reference<SnapshotReader> snapshot, Reference<WriteBatch> writeBatch, IBufferPool bufferPool)
     : base(snapshot, bufferPool)
 {
     this.tableStorage = tableStorage;
     this.writeBatch = writeBatch;
     this.generator = generator;
 }
 public DocumentsStorageActions(TableStorage storage, ITransactionStorageActions transactionStorageActions, IUuidGenerator generator, IEnumerable<AbstractDocumentCodec> documentCodecs)
 {
     this.storage = storage;
     this.transactionStorageActions = transactionStorageActions;
     this.generator = generator;
     this.documentCodecs = documentCodecs;
 }
        public MappedResultsStorageActions(TableStorage tableStorage, IUuidGenerator generator, OrderedPartCollection<AbstractDocumentCodec> documentCodecs, Reference<SnapshotReader> snapshot, Reference<WriteBatch> writeBatch, IBufferPool bufferPool)
			: base(snapshot, bufferPool)
		{
			this.tableStorage = tableStorage;
			this.generator = generator;
			this.documentCodecs = documentCodecs;
			this.writeBatch = writeBatch;
		}
        public IndexingStorageActions(TableStorage tableStorage, IUuidGenerator generator, Reference<SnapshotReader> snapshot, Reference<WriteBatch> writeBatch, IStorageActionsAccessor storageActionsAccessor, IBufferPool bufferPool)
			: base(snapshot, bufferPool)
		{
			this.tableStorage = tableStorage;
			this.generator = generator;
			this.writeBatch = writeBatch;
			this.currentStorageActionsAccessor = storageActionsAccessor;
		}
 public override void DeleteDocumentInTransaction(
     TransactionInformation transactionInformation,
     string key,
     Etag etag,
     Etag committedEtag,
     IUuidGenerator uuidGenerator)
 {
     throw new InvalidOperationException("DTC is not supported by " + storageName + " storage.");
 }
Example #10
0
 protected ActionsBase(DocumentDatabase database, SizeLimitedConcurrentDictionary<string, TouchedDocumentInfo> recentTouches, IUuidGenerator uuidGenerator, ILog log)
 {
     Database = database;
     RecentTouches = recentTouches;
     UuidGenerator = uuidGenerator;
     Log = log;
     TransactionalStorage = database.TransactionalStorage;
     WorkContext = database.WorkContext;
     IndexDefinitionStorage = database.IndexDefinitionStorage;
 }
        public MappedResultsStorageActions(TableStorage tableStorage, IUuidGenerator generator, OrderedPartCollection<AbstractDocumentCodec> documentCodecs, Reference<SnapshotReader> snapshot, 
			Reference<WriteBatch> writeBatch, IBufferPool bufferPool, IStorageActionsAccessor storageActionsAccessor, ConcurrentDictionary<int, RemainingReductionPerLevel> ScheduledReductionsPerViewAndLevel)
			: base(snapshot, bufferPool)
		{
			this.tableStorage = tableStorage;
			this.generator = generator;
			this.documentCodecs = documentCodecs;
			this.writeBatch = writeBatch;
	        this.storageActionsAccessor = storageActionsAccessor;
	        this.scheduledReductionsPerViewAndLevel = ScheduledReductionsPerViewAndLevel;
		}
Example #12
0
		public DocumentStorageActions(
			JET_INSTANCE instance,
			string database,
			TableColumnsCache tableColumnsCache,
			OrderedPartCollection<AbstractDocumentCodec> documentCodecs,
			IUuidGenerator uuidGenerator,
			IDocumentCacher cacher,
			EsentTransactionContext transactionContext,
			TransactionalStorage transactionalStorage)
		{
			this.tableColumnsCache = tableColumnsCache;
			this.documentCodecs = documentCodecs;
			this.uuidGenerator = uuidGenerator;
			this.cacher = cacher;
			this.transactionalStorage = transactionalStorage;
			this.transactionContext = transactionContext;

			try
			{
				if (transactionContext == null)
				{
					session = new Session(instance);
					transaction = new Transaction(session);
					sessionAndTransactionDisposer = () =>
					{
						if(transaction != null)
							transaction.Dispose();
						if(session != null)
							session.Dispose();
					};
				}
				else
				{
					session = transactionContext.Session;
					transaction = transactionContext.Transaction;
					var disposable = transactionContext.EnterSessionContext();
					sessionAndTransactionDisposer = disposable.Dispose;
				}
				Api.JetOpenDatabase(session, database, null, out dbid, OpenDatabaseGrbit.None);
			}
			catch (Exception ex)
			{
			    logger.WarnException("Error when trying to open a new DocumentStorageActions", ex);
			    try
			    {
			        Dispose();
			    }
			    catch (Exception e)
			    {
			        logger.WarnException("Error on dispose when the ctor threw an exception, resources may have leaked", e);
			    }
				throw;
			}
		}
 public override Etag AddDocumentInTransaction(
     string key,
     Etag etag,
     RavenJObject data,
     RavenJObject metadata,
     TransactionInformation transactionInformation,
     Etag committedEtag,
     IUuidGenerator uuidGenerator)
 {
     throw new InvalidOperationException("DTC is not supported by " + storageName + " storage.");
 }
Example #14
0
		public StorageActionsAccessor(TableStorage storage, IUuidGenerator generator, OrderedPartCollection<AbstractDocumentCodec> documentCodecs, IDocumentCacher documentCacher)
		{
			General = new GeneralStorageActions(storage);
			Attachments = new AttachmentsStorageActions(storage, generator);
			Transactions = new TransactionStorageActions(storage, generator, documentCodecs);
			Documents = new DocumentsStorageActions(storage, Transactions, generator, documentCodecs, documentCacher);
			Indexing = new IndexingStorageActions(storage);
			MappedResults = new MappedResultsStorageAction(storage, generator);
			Queue = new QueueStorageActions(storage, generator);
			Tasks = new TasksStorageActions(storage, generator);
			Staleness = new StalenessStorageActions(storage);
		}
 public StorageActionsAccessor(TableStorage storage, IUuidGenerator generator)
 {
     General = new GeneralStorageActions(storage);
     Attachments = new AttachmentsStorageActions(storage, generator);
     Transactions = new TransactionStorageActions(storage, generator);
     Documents = new DocumentsStorageActions(storage, Transactions, generator);
     Indexing = new IndexingStorageActions(storage);
     MappedResults = new MappedResultsStorageAction(storage, generator);
     Queue = new QueueStorageActions(storage, generator);
     Tasks = new TasksStorageActions(storage, generator);
     Staleness = new StalenessStorageActions(storage);
 }
Example #16
0
 public StorageActionsAccessor(TableStorage storage, IUuidGenerator generator, IEnumerable<AbstractDocumentCodec> documentCodecs)
 {
     this.documentCodecs = documentCodecs;
     General = new GeneralStorageActions(storage);
     Attachments = new AttachmentsStorageActions(storage, generator);
     Transactions = new TransactionStorageActions(storage, generator, documentCodecs);
     Documents = new DocumentsStorageActions(storage, Transactions, generator, documentCodecs);
     Indexing = new IndexingStorageActions(storage);
     MappedResults = new MappedResultsStorageAction(storage, generator);
     Queue = new QueueStorageActions(storage, generator);
     Tasks = new TasksStorageActions(storage, generator);
     Staleness = new StalenessStorageActions(storage);
 }
        public AttachmentsStorageActions(Table attachmentsTable,
                                         Reference<WriteBatch> writeBatch, 
                                         Reference<SnapshotReader> snapshot, 
                                         IUuidGenerator uuidGenerator, 
                                         TableStorage tableStorage,
                                         Raven.Storage.Voron.TransactionalStorage transactionalStorage, 
                                         IBufferPool bufferPool)
            :base(snapshot, bufferPool)
        {
            this.attachmentsTable = attachmentsTable;
            this.writeBatch = writeBatch;
            this.uuidGenerator = uuidGenerator;
            this.tableStorage = tableStorage;
            this.transactionalStorage = transactionalStorage;

            metadataIndex = tableStorage.Attachments.GetIndex(Tables.Attachments.Indices.Metadata);
        }
		public DocumentsStorageActions(IUuidGenerator uuidGenerator,
			OrderedPartCollection<AbstractDocumentCodec> documentCodecs,
			IDocumentCacher documentCacher,
			Reference<WriteBatch> writeBatch,
			Reference<SnapshotReader> snapshot,
            TableStorage tableStorage, 
            IBufferPool bufferPool)
			: base(snapshot, bufferPool)
		{
			this.uuidGenerator = uuidGenerator;
			this.documentCodecs = documentCodecs;
			this.documentCacher = documentCacher;
			this.writeBatch = writeBatch;
			this.tableStorage = tableStorage;

			metadataIndex = tableStorage.Documents.GetIndex(Tables.Documents.Indices.Metadata);
		}
Example #19
0
        /*[CLSCompliant(false)]
        [DebuggerHidden, DebuggerNonUserCode, DebuggerStepThrough]*/
        public DocumentStorageActions(
            JET_INSTANCE _instance,
            string _database,
            TableColumnsCache _tableColumnsCache,
            IEnumerable<AbstractDocumentCodec> _documentCodecs,
            IUuidGenerator _uuidGenerator)
        {
            this.tableColumnsCache = _tableColumnsCache;
            this.documentCodecs = _documentCodecs;
            this.uuidGenerator = _uuidGenerator;
            OnCommit = delegate {};

            try
            {
                session = new Session(_instance);
                transaction = new Transaction(session);
                Api.JetOpenDatabase(session, _database, null, out dbid, OpenDatabaseGrbit.None);
            }
            catch
            {
                Dispose();
                throw;
            }
        }
Example #20
0
 public DocumentStorageActions(
     JET_INSTANCE instance,
     string database,
     TableColumnsCache tableColumnsCache,
     OrderedPartCollection <AbstractDocumentCodec> documentCodecs,
     IUuidGenerator uuidGenerator,
     IDocumentCacher cacher,
     EsentTransactionContext transactionContext,
     TransactionalStorage transactionalStorage
     )
 {
     this.tableColumnsCache             = tableColumnsCache;
     this.documentCodecs                = documentCodecs;
     this.uuidGenerator                 = uuidGenerator;
     this.cacher                        = cacher;
     this.transactionalStorage          = transactionalStorage;
     this.transactionContext            = transactionContext;
     scheduledReductionsPerViewAndLevel = transactionalStorage.GetScheduledReductionsPerViewAndLevel();
     try
     {
         if (transactionContext == null)
         {
             session     = new Session(instance);
             transaction = new Transaction(session);
             sessionAndTransactionDisposer = () =>
             {
                 if (transaction != null)
                 {
                     transaction.Dispose();
                 }
                 if (session != null)
                 {
                     session.Dispose();
                 }
             };
         }
         else
         {
             session     = transactionContext.Session;
             transaction = transactionContext.Transaction;
             var disposable = transactionContext.EnterSessionContext();
             sessionAndTransactionDisposer = disposable.Dispose;
         }
         Api.JetOpenDatabase(session, database, null, out dbid, OpenDatabaseGrbit.None);
     }
     catch (Exception ex)
     {
         string location;
         try
         {
             location = new StackTrace(true).ToString();
         }
         catch (Exception)
         {
             location = "cannot get stack trace";
         }
         logger.WarnException("Error when trying to open a new DocumentStorageActions from \r\n" + location, ex);
         try
         {
             Dispose();
         }
         catch (Exception e)
         {
             logger.WarnException("Error on dispose when the ctor threw an exception, resources may have leaked", e);
         }
         throw;
     }
 }
Example #21
0
 protected ActionsBase(DocumentDatabase database, SizeLimitedConcurrentDictionary <string, TouchedDocumentInfo> recentTouches, IUuidGenerator uuidGenerator, ILog log)
 {
     Database               = database;
     RecentTouches          = recentTouches;
     UuidGenerator          = uuidGenerator;
     Log                    = log;
     TransactionalStorage   = database.TransactionalStorage;
     WorkContext            = database.WorkContext;
     IndexDefinitionStorage = database.IndexDefinitionStorage;
 }
Example #22
0
 public void Init(IUuidGenerator generator, InMemoryRavenConfiguration configuration)
 {
     this.configuration = configuration;
 }
Example #23
0
		public void Initialize(IUuidGenerator generator, OrderedPartCollection<AbstractDocumentCodec> documentCodecs)
		{
		    if (generator == null) throw new ArgumentNullException("generator");
		    if (documentCodecs == null) throw new ArgumentNullException("documentCodecs");

		    uuidGenerator = generator;
		    _documentCodecs = documentCodecs;

		    StorageEnvironmentOptions options = configuration.RunInMemory ?
				CreateMemoryStorageOptionsFromConfiguration(configuration) :
		        CreateStorageOptionsFromConfiguration(configuration);

		    tableStorage = new TableStorage(options, bufferPool);
			var schemaCreator = new SchemaCreator(configuration, tableStorage, Output, Log);
			schemaCreator.CreateSchema();
			schemaCreator.SetupDatabaseIdAndSchemaVersion();
			schemaCreator.UpdateSchemaIfNecessary();

		    SetupDatabaseId();
		}
Example #24
0
 public AttachmentsStorageActions(TableStorage storage, IUuidGenerator generator)
 {
     this.storage   = storage;
     this.generator = generator;
 }
Example #25
0
        public void Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection<AbstractDocumentCodec> documentCodecs)
        {
            try
            {
                DocumentCodecs = documentCodecs;
                generator = uuidGenerator;

                InstanceParameters instanceParameters = new TransactionalStorageConfigurator(configuration, this).ConfigureInstance(instance, path);

                if (configuration.RunInUnreliableYetFastModeThatIsNotSuitableForProduction)
                    instanceParameters.Recovery = false;

                log.Info(@"Esent Settings:
  MaxVerPages      = {0}
  CacheSizeMax     = {1}
  DatabasePageSize = {2}", instanceParameters.MaxVerPages, SystemParameters.CacheSizeMax,
                         SystemParameters.DatabasePageSize);

                Api.JetInit(ref instance);

                EnsureDatabaseIsCreatedAndAttachToDatabase();

                SetIdFromDb();

                tableColumnsCache.InitColumDictionaries(instance, database);
            }
            catch (Exception e)
            {
                Dispose();
                var fileAccessException = e as EsentFileAccessDeniedException;
                if (fileAccessException == null)
                    throw new InvalidOperationException("Could not open transactional storage: " + database, e);
                throw new InvalidOperationException("Could not write to location: " + path + ". Make sure you have read/write permissions for this path.", e);
            }
        }
Example #26
0
			public void InitializeTransactionalStorage(IUuidGenerator uuidGenerator)
			{
				string storageEngineTypeName = configuration.SelectStorageEngineAndFetchTypeName();
				database.TransactionalStorage = configuration.CreateTransactionalStorage(storageEngineTypeName, database.WorkContext.HandleWorkNotifications);
				database.TransactionalStorage.Initialize(uuidGenerator, database.DocumentCodecs);
			}
Example #27
0
 public TransactionStorageActions(TableStorage storage, IUuidGenerator generator, OrderedPartCollection <AbstractDocumentCodec> documentCodecs)
 {
     this.storage        = storage;
     this.generator      = generator;
     this.documentCodecs = documentCodecs;
 }
Example #28
0
 public CoursesCounterIncrementer(ICoursesCounterRepository repository, IUuidGenerator uuidGenerator)
 {
     this.repository    = repository;
     this.uuidGenerator = uuidGenerator;
 }
Example #29
0
 public QueueStorageActions(TableStorage storage, IUuidGenerator generator)
 {
     this.storage   = storage;
     this.generator = generator;
 }
		public MappedResultsStorageAction(TableStorage storage, IUuidGenerator generator, OrderedPartCollection<AbstractDocumentCodec> documentCodecs)
		{
			this.storage = storage;
			this.generator = generator;
			this.documentCodecs = documentCodecs;
		}
 public MappedResultsStorageAction(TableStorage storage, IUuidGenerator generator)
 {
     this.storage   = storage;
     this.generator = generator;
 }
Example #32
0
 public QueryActions(DocumentDatabase database, SizeLimitedConcurrentDictionary <string, TouchedDocumentInfo> recentTouches, IUuidGenerator uuidGenerator, ILog log)
     : base(database, recentTouches, uuidGenerator, log)
 {
 }
Example #33
0
 public void Init(IUuidGenerator generator)
 {
 }
Example #34
0
		public void Init(IUuidGenerator generator)
		{
			uuidGenerator = generator;
		}
Example #35
0
		public bool Initialize(IUuidGenerator generator, OrderedPartCollection<AbstractDocumentCodec> documentCodecs)
		{
			DocumentCodecs = documentCodecs;
			uuidGenerator = generator;
			if (configuration.RunInMemory  == false && Directory.Exists(configuration.DataDirectory) == false)
				Directory.CreateDirectory(configuration.DataDirectory);

			persistenceSource = configuration.RunInMemory
						  ? (IPersistentSource)new MemoryPersistentSource()
						  : new FileBasedPersistentSource(configuration.DataDirectory, "Raven", configuration.TransactionMode == TransactionMode.Safe);

			tableStroage = new TableStorage(persistenceSource);

			idleTimer = new Timer(MaybeOnIdle, null, TimeSpan.FromSeconds(30), TimeSpan.FromSeconds(30));

			tableStroage.Initialze();

			if (persistenceSource.CreatedNew)
			{
				Id = Guid.NewGuid();
				Batch(accessor => tableStroage.Details.Put("id", Id.ToByteArray()));
			}
			else
			{
				using(tableStroage.BeginTransaction())
				{
				var readResult = tableStroage.Details.Read("id");
				Id = new Guid(readResult.Data());
			}
			}

			return persistenceSource.CreatedNew;
		}
Example #36
0
		public QueueStorageActions(TableStorage storage, IUuidGenerator generator)
		{
			this.storage = storage;
			this.generator = generator;
		}
Example #37
0
 public void Init(IUuidGenerator generator, InMemoryRavenConfiguration configuration)
 {
 }
Example #38
0
		public void Init(IUuidGenerator generator)
		{
		}
Example #39
0
 public void Init(IUuidGenerator generator)
 {
     uuidGenerator = generator;
 }
Example #40
0
		public bool Initialize(IUuidGenerator uuidGenerator)
		{
			try
			{
				generator = uuidGenerator;
				var instanceParameters = new TransactionalStorageConfigurator(configuration).ConfigureInstance(instance, path);

				if (configuration.RunInUnreliableYetFastModeThatIsNotSuitableForProduction)
				{
					instanceParameters = new InstanceParameters(instance)
					{
						CircularLog = true,
						Recovery = false,
						NoInformationEvent = false,
						CreatePathIfNotExist = true,
						TempDirectory = Path.Combine(path, "temp"),
						SystemDirectory = Path.Combine(path, "system"),
						LogFileDirectory = Path.Combine(path, "logs"),
						MaxVerPages = 256,
						BaseName = "RVN",
						EventSource = "Raven",
						LogBuffers = 8192,
						LogFileSize = 256,
						MaxSessions = TransactionalStorageConfigurator.MaxSessions,
						MaxCursors = 1024,
						DbExtensionSize = 128,
						AlternateDatabaseRecoveryDirectory = path
					};
				}

				log.Info(@"Esent Settings:
  MaxVerPages      = {0}
  CacheSizeMax     = {1}
  DatabasePageSize = {2}", instanceParameters.MaxVerPages, SystemParameters.CacheSizeMax, SystemParameters.DatabasePageSize);

				Api.JetInit(ref instance);

				var newDb = EnsureDatabaseIsCreatedAndAttachToDatabase();

				SetIdFromDb();

				tableColumnsCache.InitColumDictionaries(instance, database);

				return newDb;
			}
			catch (Exception e)
			{
				Dispose();
				throw new InvalidOperationException("Could not open transactional storage: " + database, e);
			}
		}
Example #41
0
 public TransactionStorageActions(TableStorage storage, IUuidGenerator generator, IEnumerable <AbstractDocumentCodec> documentCodecs)
 {
     this.storage        = storage;
     this.generator      = generator;
     this.documentCodecs = documentCodecs;
 }
Example #42
0
        public bool Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection <AbstractDocumentCodec> documentCodecs)
        {
            try
            {
                DocumentCodecs = documentCodecs;
                generator      = uuidGenerator;

                InstanceParameters instanceParameters;
                if (configuration.RunInUnreliableYetFastModeThatIsNotSuitableForProduction)
                {
                    instanceParameters = new InstanceParameters(instance)
                    {
                        CircularLog          = true,
                        Recovery             = false,
                        NoInformationEvent   = false,
                        CreatePathIfNotExist = true,
                        TempDirectory        = Path.Combine(path, "temp"),
                        SystemDirectory      = Path.Combine(path, "system"),
                        LogFileDirectory     = Path.Combine(path, "logs"),
                        MaxVerPages          = 256,
                        BaseName             = "RVN",
                        EventSource          = "Raven",
                        LogBuffers           = 8192,
                        LogFileSize          = 256,
                        MaxSessions          = TransactionalStorageConfigurator.MaxSessions,
                        MaxCursors           = 1024,
                        DbExtensionSize      = 128,
                        AlternateDatabaseRecoveryDirectory = path
                    };
                }
                else
                {
                    instanceParameters = new TransactionalStorageConfigurator(configuration).ConfigureInstance(instance, path);
                }

                log.Info(@"Esent Settings:
  MaxVerPages      = {0}
  CacheSizeMax     = {1}
  DatabasePageSize = {2}", instanceParameters.MaxVerPages, SystemParameters.CacheSizeMax, SystemParameters.DatabasePageSize);

                Api.JetInit(ref instance);

                var newDb = EnsureDatabaseIsCreatedAndAttachToDatabase();

                SetIdFromDb();

                tableColumnsCache.InitColumDictionaries(instance, database);

                return(newDb);
            }
            catch (Exception e)
            {
                Dispose();
                var fileAccessExeption = e as EsentFileAccessDeniedException;
                if (fileAccessExeption == null)
                {
                    throw new InvalidOperationException("Could not open transactional storage: " + database, e);
                }
                throw new InvalidOperationException("Could not write to location: " + path + ". Make sure you have read/write permissions for this path.", e);
            }
        }
Example #43
0
 public MappedResultsStorageAction(TableStorage storage, IUuidGenerator generator, OrderedPartCollection <AbstractDocumentCodec> documentCodecs)
 {
     this.storage        = storage;
     this.generator      = generator;
     this.documentCodecs = documentCodecs;
 }
Example #44
0
 protected ActionsBase(DocumentDatabase database, SizeLimitedConcurrentDictionary <string, TouchedDocumentInfo> recentTouches, IUuidGenerator uuidGenerator, ILog log)
 {
     Database      = database;
     RecentTouches = recentTouches;
     UuidGenerator = uuidGenerator;
     Log           = log;
 }
Example #45
0
 public DocumentActions(DocumentDatabase database, IUuidGenerator uuidGenerator, ILog log)
     : base(database, uuidGenerator, log)
 {
 }
Example #46
0
 public NotificationActions(DocumentDatabase database, SizeLimitedConcurrentDictionary<string, TouchedDocumentInfo> recentTouches, IUuidGenerator uuidGenerator, ILog log)
     : base(database, recentTouches, uuidGenerator, log)
 {
 }
 public MessagesStorageActions(Table messages, Table pendingMessages, QueuesStorageActions queuesStorageActions, IUuidGenerator uuidGenerator)
 {
     this.messages             = messages;
     this.pendingMessages      = pendingMessages;
     this.queuesStorageActions = queuesStorageActions;
     this.uuidGenerator        = uuidGenerator;
 }