diff --git a/Source/MQTTnet/MqttApplicationMessage.cs b/Source/MQTTnet/MqttApplicationMessage.cs index 65200740..6522d42f 100644 --- a/Source/MQTTnet/MqttApplicationMessage.cs +++ b/Source/MQTTnet/MqttApplicationMessage.cs @@ -29,7 +29,5 @@ namespace MQTTnet public byte[] CorrelationData { get; set; } public List SubscriptionIdentifiers { get; set; } - - internal uint DeliveryCount { get; set; } } } diff --git a/Source/MQTTnet/Server/MqttClientSession.cs b/Source/MQTTnet/Server/MqttClientSession.cs index 1e8a2f6d..c7d2e50d 100644 --- a/Source/MQTTnet/Server/MqttClientSession.cs +++ b/Source/MQTTnet/Server/MqttClientSession.cs @@ -56,8 +56,6 @@ namespace MQTTnet.Server _logger.Verbose("Queued application message with topic '{0}' (ClientId: {1}).", applicationMessage.Topic, ClientId); - applicationMessage.DeliveryCount++; - ApplicationMessagesQueue.Enqueue(applicationMessage, senderClientId, checkSubscriptionsResult.QualityOfServiceLevel, isRetainedApplicationMessage); } diff --git a/Source/MQTTnet/Server/MqttClientSessionsManager.cs b/Source/MQTTnet/Server/MqttClientSessionsManager.cs index 456636a2..a0f0bf2e 100644 --- a/Source/MQTTnet/Server/MqttClientSessionsManager.cs +++ b/Source/MQTTnet/Server/MqttClientSessionsManager.cs @@ -224,7 +224,7 @@ namespace MQTTnet.Server await _retainedMessagesManager.HandleMessageAsync(sender?.ClientId, applicationMessage).ConfigureAwait(false); } - applicationMessage.DeliveryCount = 0; + var deliveryCount = 0; foreach (var clientSession in _sessions.Values) { @@ -232,9 +232,11 @@ namespace MQTTnet.Server applicationMessage, sender?.ClientId, false); + + deliveryCount++; } - if (applicationMessage.DeliveryCount == 0) + if (deliveryCount == 0) { if (_options.UndeliveredMessageInterceptor == null) {