protected override bool TryAdd(Ptr ptr, IQueueItem item) { var copy = item.Copy(); QueueList[ptr] = copy; if (CoverMode == CoverMode.Persistent) { if (CommitMode == CommitMode.OnDisk) { if (m_db.TryAdd(ptr.Identifier, copy)) { OnTryAdd(ptr, item, true); return(true); } } else //if (CommitMode == CommitMode.OnMemory) { return(PersistItemAdd(ptr, copy)); } return(false); } else //if (CommitMode == CommitMode.OnMemory) { return(true); } }
protected override bool TryAdd(Ptr ptr, IQueueItem item) { var copy = item.Copy(); QueueList[ptr] = copy; if (CoverMode == CoverMode.FileStream) { if (CommitMode == PersistCommitMode.OnDisk) { if (m_fs.Enqueue(item).MessageState == MessageState.Received) { OnTryAdd(ptr, item, true); return(true); } } else //if (CommitMode == CommitMode.OnMemory) { return(PersistItemAdd(copy)); } return(false); } else //if (CommitMode == CommitMode.OnMemory) { return(true); } }
protected override bool TryAdd(Ptr ptr, IQueueItem item) { var res = m_db.TryAdd(ptr.Identifier, item.Copy()); OnTryAdd(ptr, item, res); return(res); }
protected bool TryAdd(Ptr ptr, IQueueItem item) { var copy = item.Copy(); if (m_db.TryAdd(ptr.Identifier, copy)) { OnTryAdd(ptr, item, true); return(true); } return(false); }
protected override bool TryAdd(Ptr ptr, IQueueItem item) { QueueList[ptr] = item.Copy(); return(true); }