Ejemplo n.º 1
0
        /// <summary>The add pending confirm.</summary>
        /// <param name="listener">The listener.</param>
        /// <param name="seq">The seq.</param>
        /// <param name="pendingConfirm">The pending confirm.</param>
        public void AddPendingConfirm(IPublisherCallbackChannelListener listener, long seq, PendingConfirm pendingConfirm)
        {
            var pendingConfirmsForListener = this.pendingConfirms[listener];

            AssertUtils.ArgumentNotNull(pendingConfirmsForListener, "Listener not registered");
            lock (this.pendingConfirms)
            {
                pendingConfirmsForListener.Add(seq, pendingConfirm);
            }

            this.listenerForSeq.TryAdd(seq, listener);
        }
        /// <summary>The add pending confirm.</summary>
        /// <param name="listener">The listener.</param>
        /// <param name="seq">The seq.</param>
        /// <param name="pendingConfirm">The pending confirm.</param>
        public void AddPendingConfirm(IPublisherCallbackChannelListener listener, long seq, PendingConfirm pendingConfirm)
        {
            var pendingConfirmsForListener = this.pendingConfirms[listener];
            AssertUtils.ArgumentNotNull(pendingConfirmsForListener, "Listener not registered");
            lock (this.pendingConfirms)
            {
                pendingConfirmsForListener.Add(seq, pendingConfirm);
            }

            this.listenerForSeq.TryAdd(seq, listener);
        }
Ejemplo n.º 3
0
 private void DoHandleConfirm(bool ack, IPublisherCallbackChannelListener listener, PendingConfirm pendingConfirm)
 {
     try
     {
         if (listener.IsConfirmListener)
         {
             this.logger.Debug(m => m("Sending confirm " + pendingConfirm));
             listener.HandleConfirm(pendingConfirm, ack);
         }
     }
     catch (Exception e)
     {
         this.logger.Error(m => m("Exception delivering confirm"), e);
     }
 }
 private void DoHandleConfirm(bool ack, IPublisherCallbackChannelListener listener, PendingConfirm pendingConfirm)
 {
     try
     {
         if (listener.IsConfirmListener)
         {
             this.logger.Debug(m => m("Sending confirm " + pendingConfirm));
             listener.HandleConfirm(pendingConfirm, ack);
         }
     }
     catch (Exception e)
     {
         this.logger.Error(m => m("Exception delivering confirm"), e);
     }
 }