Esempio n. 1
0
        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);
            }
        }
Esempio n. 2
0
        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));
        }
Esempio n. 3
0
 public override void Remove(TrackedNetworkConnection connection)
 {
     _connectionsById.Remove(connection.Id());
 }