Exemplo n.º 1
0
        /// <summary>
        /// Handle an user
        /// </summary>
        /// <param name="username">username</param>
        /// <param name="password">password</param>
        /// <param name="message">Information message</param>
        /// <param name="packetCreation">Function to handle packet creation</param>
        /// <returns>Validity of operation</returns>
        public bool HandleUser(string username, string password, out string message, PacketCreation packetCreation)
        {
            message = null;
            var u = new User {
                Username = username, Password = password
            };

            _customPacket = packetCreation(u);
            try
            {
                Net.sendMsg(Client.Connection.GetStream(), _customPacket);

                _customPacket = Net.rcvMsg(Client.Connection.GetStream());
                message       = GetInformationMessage();
                if (_customPacket.Operation == Operation.Reception)
                {
                    return(true);
                }
            }
            catch (Exception e)
            {
                message = "Connection failed";
                Console.Out.WriteLine("Error: " + e);
            }

            // We set User to null, because the LoginUserPacket() set it to the value of the user
            Client.CurrentUser = null;

            return(false);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Handle an user
        /// </summary>
        /// <param name="u">User</param>
        /// <param name="message">Information message</param>
        /// <param name="packetCreation">Function to handle packet creation</param>
        /// <returns>Validity of operation</returns>
        public bool HandleUser(User u, out string message, PacketCreation packetCreation)
        {
            message = null;

            _customPacket = packetCreation(u);
            try
            {
                Net.sendMsg(LoginWindow.Connection.GetStream(), _customPacket);

                _customPacket = Net.rcvMsg(LoginWindow.Connection.GetStream());
                message       = GetInformationMessage();
                if (_customPacket.Operation == Operation.Reception)
                {
                    return(true);
                }
            }
            catch (Exception e)
            {
                message = "Connection failed";
                Console.Out.WriteLine("Error: " + e);
            }

            return(false);
        }