public function read(FlashorbBinaryReader $reader, ParseContext $parseContext) { $dataLength = $reader->readInteger(); $buffer = $reader->readBytes($dataLength); $dom = new DomDocument(); $dom->loadXML($buffer); return new XmlDataType($dom); }
public function read(FlashorbBinaryReader $reader, ParseContext $parseContext) { $refId = $reader->readVarInteger(); if (($refId & 0x1) == 0) { return $parseContext->getReference($refId >> 1); } $bytes = $reader->readBytes($refId >> 1); $objArray = array(); $len = strlen($bytes); for ($i = 0; $i < $len; $i++) { $objArray[] = new NumberObject(ord($bytes[$i])); } $arrayType = new ArrayType($objArray); $parseContext->addReference($arrayType); return $arrayType; }
private function readHeader(FlashorbBinaryReader $reader) { Log::log(LoggingConstants::DEBUG, "Called"); $nameLength = $reader->readUnsignedShort(); $name = $reader->readBytes($nameLength); $mustUnderstand = $reader->readBoolean(); $length = $reader->readInteger(); //$reader->readBytes($length); return new Header($name, $mustUnderstand, $length, self::readData($reader, null, null)); }
public function read(FlashorbBinaryReader $reader, ParseContext $parseContext) { $dataLength = $reader->readInteger(); $buffer = $reader->readBytes($dataLength); return new StringType(utf8_decode(buffer)); }