UserManager.ConnectUser C# (CSharp) Method

ConnectUser() public method

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
return 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;
    }