public override void OnDisposition(DispositionContext dispositionContext)
 {
 }
        /// <summary>
        /// Notifies the message source the delivery state of an outgoing message.
        /// </summary>
        /// <param name="dispositionContext">Context of the received disposition performative.</param>
        public override void OnDisposition(DispositionContext dispositionContext)
        {
            var receiveContext = (ReceiveContext)dispositionContext.Message.Delivery.UserToken;

            this.messageSource.DisposeMessage(receiveContext, dispositionContext);
        }
Example #3
0
 /// <summary>
 /// Processes a received disposition performative. The endpoint should check the delivery state and
 /// perform appropriate actions to the message.
 /// </summary>
 /// <param name="dispositionContext">Context of the received disposition performative.</param>
 public abstract void OnDisposition(DispositionContext dispositionContext);
 public override void OnDisposition(DispositionContext dispositionContext)
 {
     dispositionContext.Complete();
 }
Example #5
0
 /// <summary>
 /// Processes a received disposition performative. The endpoint should check the delivery state and
 /// perform appropriate actions to the message.
 /// </summary>
 /// <param name="dispositionContext">Context of the received disposition performative.</param>
 public abstract void OnDisposition(DispositionContext dispositionContext);
        public void DisposeMessage(ReceiveContext receiveContext, DispositionContext dispositionContext)
        {
            if (dispositionContext.DeliveryState is Rejected)
            {
                this.deadletterMessage.Add(receiveContext.Message);
            }
            else if (dispositionContext.DeliveryState is Released)
            {
                lock (this.messages)
                {
                    this.messages.Enqueue(receiveContext.Message);
                }
            }

            dispositionContext.Complete();
        }
Example #7
0
 public override void OnDisposition(DispositionContext dispositionContext)
 {
     if (!dispositionContext.Settled)
     {
         dispositionContext.Link.DisposeMessage(dispositionContext.Message, new Accepted(), true);
     }
 }
Example #8
0
            public override void OnDisposition(DispositionContext dispositionContext)
            {
                if (!(dispositionContext.DeliveryState is Accepted))
                {
                    // Handle the case where message is not accepted by the client
                }

                dispositionContext.Complete();
            }
Example #9
0
 /// <summary>
 /// Processes a received disposition performative.
 /// </summary>
 /// <param name="dispositionContext">Context of the received disposition performative.</param>
 public override void OnDisposition(DispositionContext dispositionContext)
 {
 }
Example #10
0
 /// <summary>
 /// Notifies the message source the delivery state of an outgoing message.
 /// </summary>
 /// <param name="dispositionContext">Context of the received disposition performative.</param>
 public override void OnDisposition(DispositionContext dispositionContext)
 {
     var receiveContext = (ReceiveContext)dispositionContext.Message.Delivery.UserToken;
     this.messageSource.DisposeMessage(receiveContext, dispositionContext);
 }