Esempio n. 1
0
        public void SendValidationRequest(string userID, string token, LobbyUser user, EventHandler <JsonClient.JsonMessageResponceArgs> callback)
        {
            Config.AuthenticationNodeInfo authNode = null;

            lock (LobbyConfig.AuthenticationEndpoints)
            {
                if (LobbyConfig.AuthenticationEndpoints.Count == 0)
                {
                    return;
                }

                if (LobbyConfig.AuthenticationEndpoints.Count == 1)
                {
                    authNode = LobbyConfig.AuthenticationEndpoints[0];
                }
                else
                {
                    authNode = LobbyConfig.AuthenticationEndpoints[RNG.Next(LobbyConfig.AuthenticationEndpoints.Count)];
                }
            }

            if (authNode == null)
            {
                return;
            }

            authNode.StartValidationRequest(userID, token, user, callback);
        }
Esempio n. 2
0
        Peer PeerHandler.AddPeer(NetIncomingMessage msg)
        {
            LobbyUser user = new LobbyUser();

            ChangePeerToMessageProcessor(user, GetNextAuthProcessor());
            return(user);
        }
Esempio n. 3
0
        void PeerHandler.PeerDisconnected(string reason, Peer peer)
        {
            LobbyUser user = peer as LobbyUser;

            if (user != null && user.MessageProcessor != null)
            {
                user.MessageProcessor.PeerRemoved(user);
            }
        }
Esempio n. 4
0
                public void StartValidationRequest(string userID, string token, LobbyUser user, EventHandler <JsonClient.JsonMessageResponceArgs> callback)
                {
                    ValidateAuthenticationTokenRequest request = new ValidateAuthenticationTokenRequest();

                    request.UserID = userID;
                    request.Token  = token;
                    request.APIKey = string.Empty;

                    WebConnection.SendMessage(request, user, callback);
                }
Esempio n. 5
0
        void ChangePeerToMessageProcessor(LobbyUser user, IUserMessageProcessor processor)
        {
            if (user.MessageProcessor != null)
            {
                user.MessageProcessor.PeerRemoved(user);
            }

            user.MessageProcessor = processor;
            if (user.MessageProcessor != null)
            {
                user.MessageProcessor.PeerAdded(user);
            }
        }
Esempio n. 6
0
        void PeerHandler.PeerReceiveData(NetIncomingMessage msg, Peer peer)
        {
            LobbyUser user = peer as LobbyUser;

            if (user == null)
            {
                return;
            }

            if (user.MessageProcessor != null)
            {
                user.MessageProcessor.ReceivePeerData(MessageFactory.ParseMessage(msg), user);
            }
        }
Esempio n. 7
0
 public void PeerAuthenticated(LobbyUser user)
 {
     ChangePeerToMessageProcessor(user, LobbyUserProcessor.FindBestLobbyProcessor(LobbyConfig.PreferedChatRoomSize));
 }