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();
            }
        }
Esempio n. 2
0
        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();
            }
        }