public function readMessage($stream) { /*FlashorbBinaryReader*/ $dataStream = new FlashorbBinaryReader($stream); /*int*/ $version = $dataStream->readUnsignedShort(); if (LOGGING) { Log::log(LoggingConstants::DEBUG, "version - " . $version); } // read headers /*int*/ $totalHeaders = $dataStream->readUnsignedShort(); //System.out.println( "totalHeaders - " + totalHeaders ); /*Header[]*/ $headers = array(); //new Header[ totalHeaders ]; for ($i = 0; $i < $totalHeaders; $i++) { $headers[$i] = $this->readHeader($dataStream); } // read body parts /*int*/ $totalBodyParts = $dataStream->readUnsignedShort(); if (LOGGING) { Log::log(LoggingConstants::DEBUG, "totalBodies - " . $totalBodyParts); } /*Body[]*/ $bodies = array(); for ($i = 0; $i < $totalBodyParts; $i++) { $bodies[$i] = $this->readBodyPart($dataStream); } if (LOGGING) { Log::log(LoggingConstants::DEBUG, "returning message"); } /*Request*/ $request = new Request($version, $headers, $bodies); // var_dump($request); // Log::log(LoggingConstants::MYDEBUG, ob_get_contents()); return $request; }
public function read(FlashorbBinaryReader $reader, ParseContext $parseContext) { return new DateType(new ORBDateTime($reader->readDouble(), $reader->readUnsignedShort())); }
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) { $pointer = $reader->readUnsignedShort(); return $parseContext->getReference($pointer); }