Ejemplo n.º 1
0
 public static function readData(FlashorbBinaryReader $reader, $context, $dataType)
 {
     $ctx = $context;
     $contextPassedAsNull = is_null($ctx);
     $dataTypePassedAsNull = is_null($dataType);
     if ($contextPassedAsNull) {
         $ctx = new ParseContext(0);
     }
     if ($dataTypePassedAsNull) {
         $type = $reader->readByte();
     } else {
         $type = $dataType;
     }
     if ($contextPassedAsNull && $dataTypePassedAsNull || $ctx->getVersion() != 3) {
         $version = 1;
     } else {
         $version = 3;
     }
     if (LOGGING) {
         Log::log(LoggingConstants::SERIALIZATION, "Reading data type: {$type}, version: {$version}");
     }
     $readers = null;
     //echo $ctx->getVersion(); exit;
     if ($version == 1) {
         $readers = self::getReadersV1();
     } else {
         $readers = self::getReadersV3();
     }
     return $readers[$type]->read($reader, $ctx);
 }
Ejemplo n.º 2
0
 public static function readData6($dataType, FlashorbBinaryReader $reader, ParseContext $parseContext, $readers)
 {
     if (LOGGING) {
         Log::log(ILoggingConstants . DEBUG, "5: The version is " . $parseContext->getVersion());
     }
     return $readers[$dataType]->read($reader, $parseContext);
 }