Ejemplo n.º 1
0
        public void Acknowledge(Message message)
        {
            //Only ACK if ReceiveMode is Peek
            if (_receiveMode.Equals(ReceiveMode.PeekLock))
            {
                try
                {
                    EnsureSubscription();
                    var lockToken = message.Header.Bag[_lockTokenKey].ToString();

                    if (string.IsNullOrEmpty(lockToken))
                    {
                        throw new Exception($"LockToken for message with id {message.Id} is null or empty");
                    }
                    s_logger.LogDebug("Acknowledging Message with Id {Id} Lock Token : {LockToken}", message.Id,
                                      lockToken);

                    _messageReceiver.Complete(lockToken).Wait();
                }
                catch (MessageLockLostException ex)
                {
                    s_logger.LogError(ex, "Error releasing completing peak lock on message with id {Id}", message.Id);
                }
                catch (Exception ex)
                {
                    s_logger.LogError(ex, "Error completing message with id {Id}", message.Id);
                    throw;
                }
            }
        }
Ejemplo n.º 2
0
        public void Acknowledge(Message message)
        {
            //Only ACK if ReceiveMode is Peek
            if (_receiveMode.Equals(ReceiveMode.PeekLock))
            {
                try
                {
                    EnsureSubscription();
                    var lockToken = message.Header.Bag[_lockTokenKey].ToString();

                    if (string.IsNullOrEmpty(lockToken))
                    {
                        throw new Exception($"LockToken for message with id {message.Id} is null or empty");
                    }
                    _logger.Value.Debug($"Acknowledging Message with Id {message.Id} Lock Token : {lockToken}");

                    _messageReceiver.Complete(lockToken).Wait();
                }
                catch (Exception ex)
                {
                    _logger.Value.ErrorException($"Error completing message with id {message.Id}", ex);
                    throw;
                }
            }
        }
Ejemplo n.º 3
0
 public void Acknowledge(Message message)
 {
     _messageReceiver.Complete(message.Header.Bag[LockToken].ToString());
 }