public CompletionPendingMessageState(int packetId, IQos2MessageDeliveryState deliveryState, PreciseTimeSpan startTimestamp, MessageFeedbackChannel feedbackChannel) { this.PacketId = packetId; this.DeliveryState = deliveryState; this.StartTimestamp = startTimestamp; this.FeedbackChannel = feedbackChannel; }
public void ResetMessage(IMessage message, MessageFeedbackChannel feedbackChannel) { if (message.SequenceNumber != this.SequenceNumber) { throw new InvalidOperationException($"Expected to receive message with id of {this.SequenceNumber.ToString()} but saw a message " + $"with id of {message.SequenceNumber.ToString()}. Protocol Gateway only supports exclusive connection to IoT Hub."); } this.FeedbackChannel = feedbackChannel; }
Task PublishReleaseToClientAsync(IChannelHandlerContext context, int packetId, MessageFeedbackChannel feedbackChannel, IQos2MessageDeliveryState messageState, PreciseTimeSpan startTimestamp) { var pubRelPacket = new PubRelPacket(); pubRelPacket.PacketId = packetId; return(this.pubRelPubCompProcessor.SendRequestAsync(context, pubRelPacket, new CompletionPendingMessageState(packetId, messageState, startTimestamp, feedbackChannel))); }
public MessageWithFeedback(IMessage message, MessageFeedbackChannel feedbackChannel) { this.Message = message; this.FeedbackChannel = feedbackChannel; }