Exemple #1
0
        /// <summary>
        /// Shares the pet list.
        /// </summary>
        /// <returns>The pet list.</returns>
        /// <param name="petID">Pet identifier.</param>
        public static ServerPacketSharePetList SharePetList(int petID)
        {
            //create new packet share pet list
            ClientPacketSharePetList clientPacketSharePetList = new ClientPacketSharePetList(petID);

            //send packet to server
            ServerPacketSharePetList serverPacketSharePetList = TCPClient.SendPacket(clientPacketSharePetList) as ServerPacketSharePetList;

            //if no answer
            if (serverPacketSharePetList == null)
            {
                return(new ServerPacketSharePetList(new List <PLFUser>()));
            }

            return(serverPacketSharePetList);
        }
        public override Packet OnPacketReceive(Packet receivedPacket)
        {
            ClientPacketSharePetList clientPacketSharePetList = receivedPacket as ClientPacketSharePetList;

            ConsoleHelper.Write("Receive - ClientPacketSharePetList");

            int petID = clientPacketSharePetList.PetID;

            //insert new profile into DB
            MySqlCommand downloadPetShareListCommand = new MySqlCommand();

            downloadPetShareListCommand.Connection  = Program.mySQLManager.MySQLConnection.MysqlConnection;
            downloadPetShareListCommand.CommandText =
                $"SELECT * FROM `T_User`, `T_Share` WHERE fkPetID = '{petID}' AND T_Share.fkReceiverID = T_User.userID";

            MySqlDataReader mysqlDataReader = null;

            List <PLFUser> shareUserList = new List <PLFUser>();

            try
            {
                mysqlDataReader = downloadPetShareListCommand.ExecuteReader();

                //open reader
                while (mysqlDataReader.Read())
                {
                    shareUserList.Add(
                        new PLFUser(mysqlDataReader.GetInt32(0), mysqlDataReader.GetString(2), mysqlDataReader.GetString(3), mysqlDataReader.GetString(4), mysqlDataReader.GetString(5))
                        );
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }

            if (mysqlDataReader != null && !mysqlDataReader.IsClosed)
            {
                mysqlDataReader.Close();
            }

            ConsoleHelper.Write("Send - ServerPacketSharePetList");

            return(new ServerPacketSharePetList(shareUserList));
        }