raklib\server\Session::handleSplit PHP Метод

handleSplit() приватный Метод

private handleSplit ( EncapsulatedPacket $packet )
$packet raklib\protocol\EncapsulatedPacket
    private function handleSplit(EncapsulatedPacket $packet)
    {
        if ($packet->splitCount >= self::MAX_SPLIT_SIZE or $packet->splitIndex >= self::MAX_SPLIT_SIZE or $packet->splitIndex < 0) {
            return;
        }
        if (!isset($this->splitPackets[$packet->splitID])) {
            if (count($this->splitPackets) >= self::MAX_SPLIT_COUNT) {
                return;
            }
            $this->splitPackets[$packet->splitID] = [$packet->splitIndex => $packet];
        } else {
            $this->splitPackets[$packet->splitID][$packet->splitIndex] = $packet;
        }
        if (count($this->splitPackets[$packet->splitID]) === $packet->splitCount) {
            $pk = new EncapsulatedPacket();
            $pk->buffer = "";
            for ($i = 0; $i < $packet->splitCount; ++$i) {
                $pk->buffer .= $this->splitPackets[$packet->splitID][$i]->buffer;
            }
            $pk->length = strlen($pk->buffer);
            unset($this->splitPackets[$packet->splitID]);
            $this->handleEncapsulatedPacketRoute($pk);
        }
    }