public function read(FlashorbBinaryReader $reader, ParseContext $parseContext)
 {
     $objectName = $reader->readUTF();
     $reference = AmfMessageFactory::readData($reader, $parseContext, null);
     if (is_null($reference)) {
         return null;
     }
     $hostingEnvironmentID = $reader->readUTF();
     return new RemoteReferenceObject($reference);
 }
示例#2
0
 public static function readString(FlashorbBinaryReader $reader, ParseContext $parseContext)
 {
     $len = $reader->readVarInteger();
     if (($len & 0x1) == 0) {
         return $parseContext->getStringReference($len >> 1);
     }
     $str = $reader->readUTF($len >> 1);
     if (strlen($str) == 0) {
         return $str;
     }
     $parseContext->addStringReference($str);
     return $str;
 }
示例#3
0
 public function read(FlashorbBinaryReader $reader, ParseContext $parseContext)
 {
     $len = $reader->readVarInteger();
     if (($len & 0x1) == 0) {
         return $parseContext->getReference($len >> 1);
     }
     $len = $len >> 1;
     if ($len == 0) {
         return $this->parseString("");
     }
     $xmlStr = $reader->readUTF($len);
     $xmlType = $this->parseString($xmlStr);
     $parseContext->addReference($xmlType);
     return $xmlType;
 }
 public function read(FlashorbBinaryReader $reader, ParseContext $parseContext)
 {
     $capacity = $reader->readInteger();
     $properties = array();
     $anonymousObject = new AnonymousObject($properties);
     $parseContext->addReference($anonymousObject);
     while (TRUE) {
         $propName = $reader->readUTF();
         $obj = AmfMessageFactory::readData($reader, $parseContext, null);
         if (is_null($obj)) {
             break;
         }
         $properties[$propName] = $obj;
     }
     return $anonymousObject;
 }
 public function read(FlashorbBinaryReader $reader, ParseContext $parseContext)
 {
     $properties = array();
     $anonymousObject = new AnonymousObject($properties);
     $parseContext->addReference($anonymousObject);
     while (true) {
         $propName = $reader->readUTF();
         $obj = null;
         $dataType = $reader->readByte();
         if ($dataType == Datatypes::REMOTEREFERENCE_DATATYPE_V1 && $propName != "nc") {
             $obj = 0;
             // must be an instance of Flash's Number
         } else {
             $obj = AmfMessageFactory::readData($reader, $parseContext, $dataType);
         }
         if (is_null($obj)) {
             break;
         }
         $properties[$propName] = $obj;
     }
     return $anonymousObject;
 }
 public function read(FlashorbBinaryReader $reader, ParseContext $parseContext)
 {
     return new StringType($reader->readUTF());
 }
 private function readBodyPart(FlashorbBinaryReader $reader)
 {
     Log::log(LoggingConstants::DEBUG, "Called");
     $serviceURI = $reader->readUTF();
     $responseURI = $reader->readUTF();
     $bodyLength = $reader->readInteger();
     Log::log(LoggingConstants::INFO, "Service:{$serviceURI}, responseURI:{$responseURI}, length: {$bodyLength}");
     return new Body($serviceURI, $responseURI, $bodyLength, self::readData($reader, null, null));
 }
 private function readBodyPart(FlashorbBinaryReader $stream)
 {
     return new Body($stream->readUTF(), $stream->readUTF(), $stream->readInteger(), self::readData($stream));
 }
 public function read(FlashorbBinaryReader $reader, ParseContext $parseContext)
 {
     $objectName = $reader->readUTF();
     return new NamedObject($objectName, $this->m_objectReader->read($reader, $parseContext));
 }