Ejemplo n.º 1
0
 private static String BuildMessage(IPersistentQueue queue, IPersistentQueueItem invalidQueueItem)
 {
     return(String.Format("Queue Item of type {0} stores data to a table named \"{1}\". Queue of type {2} stores data to a table names \"{3}\"",
                          invalidQueueItem.GetType(),
                          invalidQueueItem.TableName(),
                          queue.GetType(),
                          queue.TableName()));
 }
Ejemplo n.º 2
0
 public virtual void Delete(IPersistentQueueItem item)
 {
     if (item is QueueItemType)
     {
         store.Delete(item);
     }
     else
     {
         throw new QueueStorageMismatchException(this, item);
     }
 }
Ejemplo n.º 3
0
 public virtual void Invalidate(IPersistentQueueItem item, int invisibleTimeout = 30000)
 {
     if (item is QueueItemType)
     {
         item.InvisibleUntil = DateTime.Now.AddMilliseconds(invisibleTimeout);
         store.Update(item);
     }
     else
     {
         throw new QueueStorageMismatchException(this, item);
     }
 }
Ejemplo n.º 4
0
 /// <summary>
 /// Removes the record from the queue, optionally removing it from the database.
 /// </summary>
 public virtual void Delete(IPersistentQueueItem item, bool removeFromDB)
 {
     if (removeFromDB)
     {
         base.Delete(item);
     }
     else
     {
         var fqItem = (FilterQueueItem)item;
         fqItem.DeleteTime = DateTime.Now;
         store.Update(fqItem);
     }
 }
Ejemplo n.º 5
0
 public QueueStorageMismatchException(IPersistentQueue queue, IPersistentQueueItem invalidQueueItem)
     : base(BuildMessage(queue, invalidQueueItem))
 {
 }
Ejemplo n.º 6
0
 /// <summary>
 /// Removes the record from the queue without removing it from the database
 /// </summary>
 public override void Delete(IPersistentQueueItem item)
 {
     this.Delete(item, false);
 }