public void ProcessParser(IServerQueryParser parser) {
     if (Pings.Count == 0)
         Pings.Add(Common.MagicPingValue);
     Result = parser.ParsePackets(this);
     ReceivedPackets = null;
     Succeed();
 }
 public ServerQueryState(IServer server, IServerQueryParser parser, IPEndPoint ep = null)
 {
     Server = server;
     _parser = parser;
     MaxPackets = 7;
     EndPoint = ep ?? new IPEndPoint(IPAddress.Any, 0);
     ReceivedPackets = new Dictionary<int, byte[]>();
     Pings = new List<long>();
 }
        public GamespyServerQuery(ServerAddress address, string serverBrowserTag, IServerQueryParser parser) {
            Contract.Requires<ArgumentNullException>(serverBrowserTag != null);
            Contract.Requires<ArgumentNullException>(parser != null);

            _address = address;

            _serverBrowserTag = serverBrowserTag;
            _parser = parser;
        }
        public SourceServerQuery(ServerAddress address, string serverBrowserTag, IServerQueryParser parser) {
            Contract.Requires<ArgumentNullException>(address != null);
            Contract.Requires<ArgumentNullException>(serverBrowserTag != null);
            Contract.Requires<ArgumentNullException>(parser != null);

            _address = address;
            _parser = parser;
            _plainDict = new Dictionary<int, byte[][]>(10);
            _bzipDict = new Dictionary<int, byte[][]>(10);
        }
 public void ProcessParser(IServerQueryParser parser)
 {
     if (Pings.Count == 0)
     {
         Pings.Add(Common.MagicPingValue);
     }
     Result          = parser.ParsePackets(this);
     ReceivedPackets = null;
     Succeed();
 }
        public GamespyServerQuery(ServerAddress address, string serverBrowserTag, IServerQueryParser parser)
        {
            if (serverBrowserTag == null)
            {
                throw new ArgumentNullException(nameof(serverBrowserTag));
            }
            if (parser == null)
            {
                throw new ArgumentNullException(nameof(parser));
            }

            _address = address;

            _serverBrowserTag = serverBrowserTag;
            _parser           = parser;
        }
        public SourceServerQuery(ServerAddress address, string serverBrowserTag, IServerQueryParser parser)
        {
            if (address == null)
            {
                throw new ArgumentNullException(nameof(address));
            }
            if (serverBrowserTag == null)
            {
                throw new ArgumentNullException(nameof(serverBrowserTag));
            }
            if (parser == null)
            {
                throw new ArgumentNullException(nameof(parser));
            }

            _address   = address;
            _parser    = parser;
            _plainDict = new Dictionary <int, byte[][]>(10);
            _bzipDict  = new Dictionary <int, byte[][]>(10);
        }
 private void ProcessParser(IServerQueryParser parser)
 {
     if (Pings.Count == 0)
         Pings.Add(MagicPingValue);
     UpdateStatus(Status.Parsing);
     try {
         Result = parser.ParsePackets(this);
     } catch {
         UpdateStatus(Status.FailureParsing);
         throw;
     }
     UpdateStatus(Status.SuccessParsing);
 }