def query(self, tries: int = 3): """Checks the status of a Minecraft Java Edition server via the query protocol. :param int tries: How many times to retry if it fails. :return: Query status information in a `QueryResponse` instance. :rtype: QueryResponse """ exception = None host = self.host try: answers = dns.resolver.query(host, "A") if len(answers): answer = answers[0] host = str(answer).rstrip(".") except Exception as e: pass for attempt in range(tries): try: connection = UDPSocketConnection((host, self.port)) querier = ServerQuerier(connection) querier.handshake() return querier.read_query() except Exception as e: exception = e else: raise exception
def query(self, retries=3): exception = None host = self.host try: answers = dns.resolver.query(host, "A") if len(answers): answer = answers[0] host = str(answer).rstrip(".") except Exception as e: pass for attempt in range(retries): try: connection = UDPSocketConnection((host, self.port)) querier = ServerQuerier(connection) querier.handshake() return querier.read_query() except Exception as e: exception = e else: raise exception
def setUp(self): self.querier = ServerQuerier(Connection())
def setup_method(self): self.querier = ServerQuerier(Connection())