protected override void OnConnectionDisconnected(object sender, DisconnectedEventArgs e) { lock (this.connections) this.connections.Remove(e.Connection); base.OnConnectionDisconnected(sender, e); }
protected override void OnConnectionDisconnectedGlobal(object sender, DisconnectedEventArgs e) { Synchronization.EnterWriteLock(); this.connections.Remove (e.Connection); Synchronization.ExitWriteLock(); base.OnConnectionDisconnectedGlobal (sender, e); }
private void OnConnectionDisconnected(object sender, DisconnectedEventArgs e) { OnPropertyChanged (new PropertyChangedEventArgs ("IsConnected")); DisconnectAsyncCore (e.Result, e.CustomReason); OnDisconnected (new ClientDisconnectedEventArgs (e.Result == ConnectionResult.Custom, e.Result, e.CustomReason)); }
protected override void OnConnectionDisconnectedGlobal(object sender, DisconnectedEventArgs e) { IUserInfo user = this.userManager.GetUser (e.Connection); if (user != null) { this.sources.Remove (user); this.users.DisconnectAsync (user, DisconnectionReason.Unknown); // TODO reason convert } base.OnConnectionDisconnectedGlobal (sender, e); }
protected virtual void OnConnectionDisconnectedGlobal(object sender, DisconnectedEventArgs e) { lock (this.connections) { if (!this.connections.Remove (e.Connection)) return; } this.mqueue.Enqueue (e); e.Connection.MessageReceived -= OnConnectionMessageReceived; e.Connection.Disconnected -= OnConnectionDisconnectedGlobal; }
private void OnConnectionDisconnected(object sender, DisconnectedEventArgs e) { OnPropertyChanged(new PropertyChangedEventArgs("IsConnected")); DisconnectAsyncCore(e.Result, e.CustomReason); OnDisconnected(new ClientDisconnectedEventArgs(e.Result == ConnectionResult.Custom, e.Result, e.CustomReason)); }