/**
* Runs a command against the stream, expecting the given response codes.
*
* @param int[] $codes
*
* @throws TransportException when an invalid response if received
*/
public function executeCommand(string
$command, array
$codes): string
{ $this->stream->
write($command);
$response =
$this->
getFullResponse();
$this->
assertResponseCode($response,
$codes);
return $response;
} protected function doSend(SentMessage
$message): void
{ if (microtime(true
) -
$this->lastMessageTime >
$this->pingThreshold
) { $this->
ping();
}