/// <summary>
/// Called when a subscription expires.
/// </summary>
/// <param name="subscription">The subscription.</param>
internal void SubscriptionExpired(Subscription subscription)
{
lock (m_statusMessages)
{
StatusMessage message = new StatusMessage();
message.SubscriptionId = subscription.Id;
message.Message = subscription.PublishTimeout();
Queue<StatusMessage> queue = null;
if (subscription.SessionId != null && m_statusMessages.TryGetValue(subscription.SessionId, out queue))
{
queue.Enqueue(message);
}
}
}