Ejemplo n.º 1
0
        //TODO: Pluggable naming convention provider? Or maybe some config file options?
        //protected const string KeyPrefix = "nsb:queue:";

        protected string GetMessageIdQueueName(Address address)
        {
            return(_keyNameProvider.GetMessageIdQueueName(address));
            //return GetBaseQueueName(address) + ":ids";
        }
Ejemplo n.º 2
0
        public bool DeleteQueue(Address address)
        {
            using (var client = GetClient())
            {
                bool exists = client.Exists(_keyNameProvider.GetMessageIdQueueName(address)) > 0;

                using (var tran = client.CreateTransaction())
                {
                    tran.QueueCommand(c => c.Remove(_keyNameProvider.GetClaimedMessageIdListName(address)));            //LREM the messageId
                    tran.QueueCommand(c => c.Remove(_keyNameProvider.GetMessageHashName(address)));                     //LREM the messageId
                    tran.QueueCommand(c => c.Remove(_keyNameProvider.GetMessageIdQueueName(address)));                  //LREM the messageId

                    tran.Commit();
                }

                return(exists);
            }
        }