Triggered when a client sends data through the socket.
public handleMessage ( Kraken\Network\NetworkConnectionInterface $conn, Kraken\Network\NetworkMessageInterface $message ) | ||
$conn | Kraken\Network\NetworkConnectionInterface | |
$message | Kraken\Network\NetworkMessageInterface |
/** * Handler triggered when a new data is received from existing connection. * * @param SocketInterface $socket * @param mixed $data */ public function handleData($socket, $data) { try { $this->component->handleMessage($socket->conn, new NetworkMessage($data)); } catch (Error $ex) { $this->handleError($socket, $ex); } catch (Exception $ex) { $this->handleError($socket, $ex); } }
/** * @override * @inheritDoc */ public function handleMessage(NetworkConnectionInterface $conn, NetworkMessageInterface $message) { if ($conn->httpHeadersReceived !== true) { try { if (($request = $this->httpDriver->readRequest($conn->httpBuffer, $message->read())) === null) { return; } } catch (Error $ex) { return $this->close($conn, 413); } catch (Exception $ex) { return $this->close($conn, 413); } $conn->httpHeadersReceived = true; $conn->httpRequest = $request; $this->httpServer->handleConnect($conn); $this->httpServer->handleMessage($conn, $request); } else { $this->httpServer->handleMessage($conn, $message); } }
/** * @override * @inheritDoc */ public function handleMessage(NetworkConnectionInterface $conn, NetworkMessageInterface $message) { return $this->component->handleMessage($conn, $message); }