QueryHandler: move to a prefixed logger

This commit is contained in:
Dylan K. Taylor 2019-06-04 13:44:35 +01:00
parent df0acea2f4
commit 3569f8dfbe

View File

@ -47,11 +47,15 @@ class QueryHandler implements RawPacketHandler{
/** @var string */ /** @var string */
private $token; private $token;
/** @var \Logger */
private $logger;
public const HANDSHAKE = 9; public const HANDSHAKE = 9;
public const STATISTICS = 0; public const STATISTICS = 0;
public function __construct(){ public function __construct(){
$this->server = Server::getInstance(); $this->server = Server::getInstance();
$this->logger = new \PrefixedLogger($this->server->getLogger(), "Query Handler");
$addr = $this->server->getIp(); $addr = $this->server->getIp();
$port = $this->server->getPort(); $port = $this->server->getPort();
@ -66,18 +70,13 @@ class QueryHandler implements RawPacketHandler{
$this->regenerateToken(); $this->regenerateToken();
$this->lastToken = $this->token; $this->lastToken = $this->token;
$this->server->getLogger()->info($this->server->getLanguage()->translateString("pocketmine.server.query.running", [$addr, $port])); $this->logger->info($this->server->getLanguage()->translateString("pocketmine.server.query.running", [$addr, $port]));
} }
public function getPattern() : string{ public function getPattern() : string{
return '/^\xfe\xfd.+$/s'; return '/^\xfe\xfd.+$/s';
} }
private function debug(string $message) : void{
//TODO: replace this with a proper prefixed logger
$this->server->getLogger()->debug("[Query] $message");
}
public function regenerateToken() : void{ public function regenerateToken() : void{
$this->lastToken = $this->token; $this->lastToken = $this->token;
$this->token = random_bytes(16); $this->token = random_bytes(16);
@ -117,7 +116,7 @@ class QueryHandler implements RawPacketHandler{
case self::STATISTICS: //Stat case self::STATISTICS: //Stat
$token = $stream->getInt(); $token = $stream->getInt();
if($token !== ($t1 = self::getTokenString($this->token, $address)) and $token !== ($t2 = self::getTokenString($this->lastToken, $address))){ if($token !== ($t1 = self::getTokenString($this->token, $address)) and $token !== ($t2 = self::getTokenString($this->lastToken, $address))){
$this->debug("Bad token $token from $address $port, expected $t1 or $t2"); $this->logger->debug("Bad token $token from $address $port, expected $t1 or $t2");
return true; return true;
} }
@ -137,7 +136,7 @@ class QueryHandler implements RawPacketHandler{
return false; return false;
} }
}catch(BinaryDataException $e){ }catch(BinaryDataException $e){
$this->debug("Bad packet from $address $port: " . $e->getMessage()); $this->logger->debug("Bad packet from $address $port: " . $e->getMessage());
return false; return false;
} }
} }