public void OnDisconnect(string name, string connectionId) { if (Connections.Remove(name, connectionId)) { lock (Endpoints) { Endpoints.Remove(name); } EndpointRemoved?.Invoke(name); } }
protected override void CreateProxy() { base.CreateProxy(); proxy.On <EndpointConnectionInfo>("EndpointAdded", info => { Console.WriteLine($"Endpoint added: {info}"); EndpointAdded?.Invoke(info); }); proxy.On <string>("EndpointRemoved", name => { Console.WriteLine($"Endpoint removed: {name}"); EndpointRemoved?.Invoke(name); }); proxy.On <IEnumerable <EndpointConnectionInfo> >("EndpointListUpdated", infos => { Console.WriteLine($"Endpoint list updated: {string.Join(", ", infos)}"); EndpointListUpdated?.Invoke(infos); }); base.CreateProxy(); }