UserManager.ConnectUser C# (CSharp) Метод

ConnectUser() публичный Метод

public ConnectUser ( string userID, int connectionID, int senderID, float sessionTime, string &tokenID, string &message ) : bool
userID string
connectionID int
senderID int
sessionTime float
tokenID string
message string
Результат bool
    public bool ConnectUser(string userID, int connectionID, int senderID, float sessionTime, out string tokenID, out string message)
    {
        ClientInfo client;
        lock (lockObject)
        {
            if(!Clients.TryGetValue(userID, out client)){
                message = "Error :: User " + userID + " does not exist";
                tokenID = "NoToken";
                Debug.LogWarning(message);
                return false;
            }
        }
        lock (lockConnectedObject)
        {
            if (ConnectedClients.ContainsKey(connectionID))
            {
                message = "Error :: User " + userID + " is Connected with " + connectionID;
                tokenID = "NoToken";
                Debug.LogError(message);
                return false;
            }
            client.Connect(connectionID, senderID, sessionTime, DateTime.Now);
            ConnectedClients.Add(connectionID, client);
            _clientsConnectedStatusUpdate = true;
            _clientsConnectedUserNameStatusUpdate = true;
        }
        string genToken = generateToken(userID);
        lock (lockTokenObject)
        {
            if ((client.TokenID != null && client.TokenID.Length >= 0 ) || TokenClients.ContainsKey(genToken))
            {
                message = "Error :: User " + userID + " has a Token Generated or the Token exists : " + genToken;
                tokenID = "NoToken";
                return false;
            }
            client.setTokenID(genToken);
            TokenClients.Add(genToken, client);
            message = "Success :: User " + userID + " is Connected";
            tokenID = genToken;
        }
        GameServer.ServerInfoManager.PlayerStatusUpdate(client.UserName, client.isConnected, GameServer.getServerTime());
        return true;
    }