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); }
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); }
public bool Initialize(IUuidGenerator generator) { 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); queuesStroage = new QueuesStorage(persistenceSource); idleTimer = new Timer(MaybeOnIdle, null, TimeSpan.FromSeconds(30), TimeSpan.FromSeconds(30)); queuesStroage.Initialze(); if (persistenceSource.CreatedNew) { Id = Guid.NewGuid(); Batch(accessor => queuesStroage.Details.Put("id", Id.ToByteArray())); } else { var readResult = queuesStroage.Details.Read("id"); Id = new Guid(readResult.Data()); } return(persistenceSource.CreatedNew); }
public bool Initialize(IUuidGenerator generator) { 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); queuesStroage = new QueuesStorage(persistenceSource); idleTimer = new Timer(MaybeOnIdle, null, TimeSpan.FromSeconds(30), TimeSpan.FromSeconds(30)); queuesStroage.Initialze(); if (persistenceSource.CreatedNew) { Id = Guid.NewGuid(); Batch(accessor => queuesStroage.Details.Put("id", Id.ToByteArray())); } else { var readResult = queuesStroage.Details.Read("id"); Id = new Guid(readResult.Data()); } return persistenceSource.CreatedNew; }