private async Task EnqueueSubscribedRetainedMessagesAsync(MqttSubscribePacket subscribePacket) { var retainedMessages = await _retainedMessagesManager.GetSubscribedMessagesAsync(subscribePacket); foreach (var publishPacket in retainedMessages) { await EnqueueApplicationMessageAsync(publishPacket); } }
private async Task EnqueueSubscribedRetainedMessagesAsync(ICollection <TopicFilter> topicFilters) { var retainedMessages = await _retainedMessagesManager.GetSubscribedMessagesAsync(topicFilters).ConfigureAwait(false); foreach (var applicationMessage in retainedMessages) { Session.EnqueueApplicationMessage(applicationMessage, ClientId, true); } }
public async Task SubscribeAsync(ICollection <TopicFilter> topicFilters, MqttRetainedMessagesManager retainedMessagesManager) { await SubscriptionsManager.SubscribeAsync(topicFilters).ConfigureAwait(false); var matchingRetainedMessages = await retainedMessagesManager.GetSubscribedMessagesAsync(topicFilters).ConfigureAwait(false); foreach (var matchingRetainedMessage in matchingRetainedMessages) { EnqueueApplicationMessage(matchingRetainedMessage, null, true); } }