Beispiel #1
0
        /// <summary>
        /// Reads the server data from an BinaryReader.
        /// </summary>
        /// <param name="reader">Specify the BinaryReader to load the server data.</param>
        public void Load(BinaryReader reader)
        {
            uint             parameters;
            CParameterReader parameterReader;

            parameters = reader.ReadUInt32();
            for (uint i = 0; i != parameters; i++)
            {
                parameterReader = new CParameterReader(reader);
                switch ((Protocol.ServerTag)parameterReader.id)
                {
                case Protocol.ServerTag.Name:
                    m_Name = parameterReader.valorString;
                    break;

                case Protocol.ServerTag.Description:
                    m_Description = parameterReader.valorString;
                    break;

                case Protocol.ServerTag.Preference:
                    m_Preference = (Constants.ServerPriority)parameterReader.valorNum;
                    break;

                case Protocol.ServerTag.Ping:
                    m_LastPingTime = parameterReader.valorNum;
                    break;

                case Protocol.ServerTag.DynIP:
                    m_DynamicIP = parameterReader.valorString;
                    break;

                case Protocol.ServerTag.Fails:
                    m_nFails = parameterReader.valorNum;
                    break;

                case Protocol.ServerTag.MaxUsers:
                    m_MaxUsers = parameterReader.valorNum;
                    break;

                default:
                    if (parameterReader.nombreParam == null)
                    {
                        break;
                    }
                    if (parameterReader.nombreParam.Equals("users"))
                    {
                        m_Users = parameterReader.valorNum;
                    }
                    else if (parameterReader.nombreParam.Equals("files"))
                    {
                        m_Files = parameterReader.valorNum;
                    }
                    break;
                }
            }
        }
Beispiel #2
0
 /// <summary>
 /// Set a server priority.
 /// </summary>
 /// <param name="ip">IP of the server.</param>
 /// <param name="port">Port of the server.</param>
 /// <param name="priority">New priority of the server.</param>
 public void SetServerPriority(uint ip, ushort port, Constants.ServerPriority priority)
 {
     lock (this)
     {
         foreach (CServer server in InnerList)
         {
             if ((server.IP == ip) && ((port == 0) || (server.Port == port)))
             {
                 server.Priority = priority;
                 break;
             }
         }
     }
 }
Beispiel #3
0
 /// <summary>
 /// Reads the server data from an BinaryReader.
 /// </summary>
 /// <param name="reader">Specify the BinaryReader to load the server data.</param>
 public void Load(BinaryReader reader)
 {
     uint parameters;
     CParameterReader parameterReader;
     parameters=reader.ReadUInt32();
     for (uint i=0; i!=parameters; i++)
     {
     parameterReader=new CParameterReader(reader);
     switch ((Protocol.ServerTag)parameterReader.id)
     {
     case Protocol.ServerTag.Name:
         m_Name=parameterReader.valorString;
         break;
     case Protocol.ServerTag.Description:
         m_Description=parameterReader.valorString;
         break;
     case Protocol.ServerTag.Preference:
         m_Preference=(Constants.ServerPriority)parameterReader.valorNum;
         break;
     case Protocol.ServerTag.Ping:
         m_LastPingTime=parameterReader.valorNum;
         break;
     case Protocol.ServerTag.DynIP:
         m_DynamicIP=parameterReader.valorString;
         break;
     case Protocol.ServerTag.Fails:
         m_nFails=parameterReader.valorNum;
         break;
     case Protocol.ServerTag.MaxUsers:
         m_MaxUsers=parameterReader.valorNum;
         break;
     default:
         if (parameterReader.nombreParam==null) break;
         if (parameterReader.nombreParam.Equals("users"))
             m_Users=parameterReader.valorNum;
         else if (parameterReader.nombreParam.Equals("files"))
             m_Files=parameterReader.valorNum;
         break;
     }
     }
 }
Beispiel #4
0
 public void SetServerPriority(uint ip, ushort port, Constants.ServerPriority priority)
 {
     krnGateway.SetServerPriority(ip, port, priority);
 }