public override void Add(TrackedNetworkConnection connection) { TrackedNetworkConnection previousConnection = _connectionsById[connection.Id()] = connection; if (previousConnection != null) { throw new System.ArgumentException("Attempt to register a connection with an existing id " + connection.Id() + ". " + "Existing connection: " + previousConnection + ", new connection: " + connection); } }
private ConnectionTerminationResult KillConnection(string id, NetworkConnectionTracker connectionTracker) { TrackedNetworkConnection connection = connectionTracker.Get(id); if (connection != null) { if (IsAdminOrSelf(connection.Username())) { connection.Close(); return(new ConnectionTerminationResult(id, connection.Username())); } throw new AuthorizationViolationException(PERMISSION_DENIED); } return(new ConnectionTerminationFailedResult(id)); }
public override void Remove(TrackedNetworkConnection connection) { _connectionsById.Remove(connection.Id()); }