public void RemoveClientByConnectionId(Guid connectionId) { lock (_lock) { var lostMessages = _pushClients.RemoveClientByConnectionId(connectionId).OrderBy(v => v.OriginalEventNumber); foreach (var m in lostMessages) { RetryMessage(m, 0); } TryPushingMessagesToClients(); } }
public void RemoveClientByConnectionId(Guid connectionId) { lock (_lock) { var lostMessages = _pushClients.RemoveClientByConnectionId(connectionId).OrderBy(v => v.ResolvedEvent.OriginalEventNumber); foreach (var m in lostMessages) { if (ActionTakenForRetriedMessage(m)) { return; } RetryMessage(m.ResolvedEvent, m.RetryCount); } TryPushingMessagesToClients(); } }