Пример #1
0
        /// <summary>
        /// Called when an all client's details request is made.
        /// </summary>
        /// <param name="packetHeader">The packet header.</param>
        /// <param name="connection">The connection.</param>
        /// <param name="incomingObject"></param>
        private void HandleAllClientsDetailsRequested(PacketHeader packetHeader, Connection connection, string incomingObject)
        {
            if (this.IsClientAuthenticated(connection))
            {
                // AllClientsDetails recovering from database
                AllClientsDetails allClientsDetails = this.Database.GetAllClientsDetails();

                // Send allClientsDetails to the client
                connection.SendObject <AllClientsDetails>(PACKET_TYPE_ALLCLIENTSDETAILS_REPLY, allClientsDetails);

                this.NotifyObservers();
            }
        }
Пример #2
0
        /// <summary>
        /// Retrieves AllClientsDetails from database.
        /// </summary>
        /// <returns>An instance of AllClientsDetails containing all clients details.</returns>
        public AllClientsDetails GetAllClientsDetails()
        {
            AllClientsDetails allClientsDetails = new AllClientsDetails();

            // Querry
            string           sql     = string.Format("select * from Clients order by eloRating desc");
            SQLiteCommand    command = new SQLiteCommand(sql, this.DBConnection);
            SQLiteDataReader reader  = command.ExecuteReader();

            while (reader.Read())
            {
                int    idClient         = Convert.ToInt32(reader["idClient"]);
                string username         = reader["username"].ToString();
                int    registrationDate = Convert.ToInt32(reader["registrationDate"]);
                int    nbWins           = Convert.ToInt32(reader["numberOfWins"]);
                int    nbDefeats        = Convert.ToInt32(reader["numberOfDefeats"]);
                int    nbTies           = Convert.ToInt32(reader["numberOfTies"]);
                int    nbTotal          = nbWins + nbDefeats + nbTies;
                int    eloRating        = Convert.ToInt32(reader["eloRating"]);
                allClientsDetails.ClientList.Add(new ClientDetails(idClient, username, registrationDate, nbWins, nbDefeats, nbTies, eloRating));
            }

            return(allClientsDetails);
        }