private function validateTypeVersions(Clazz $instanceClass, SerializedInstanceReference $serializedInstRef)
 {
     $clientTypeSignature = $serializedInstRef->getSignature();
     if (empty($clientTypeSignature)) {
         throw new SerializationException('Missin type signature for "' . $instanceClass->getFullName() . '"');
     }
     $serverTypeSignature = SerializabilityUtilEx::getSerializationSignature($instanceClass, $this->serializationPolicy);
     if ($clientTypeSignature !== $serverTypeSignature) {
         throw new SerializationException('Invalid type signature for "' . $instanceClass->getFullName() . '"');
     }
 }
 public function getFullName()
 {
     if (empty($this->gwtname)) {
         return parent::getFullName();
     } else {
         return $this->gwtname;
     }
 }
 private function canonicalName(Clazz $clazz)
 {
     if ($clazz->isArray()) {
         $leafType = $clazz;
         do {
             $leafType = $leafType->getComponentType();
         } while ($leafType->isArray());
         $enclosing = $leafType->getEnclosingClass();
         if (!is_null($enclosing)) {
             // com.foo.Enclosing$Name[]
             return $this->canonicalName($enclosing) . '$' . $clazz->getName();
         } else {
             if ($leafType->getPackage() === '') {
                 // Name0[
                 return $clazz->getName();
             } else {
                 // com.foo.Name[]
                 return $leafType->getPackage() . '.' . $clazz->getName();
             }
         }
     } else {
         return $clazz->getFullName();
     }
 }
 public function validateSerialize(Clazz $clazz)
 {
     throw new SerializationException('Type \'' . $clazz->getFullName() . '\' was not assignable to \'' . Classes::classOf('IsSerializable')->getFullName() . '\' and did not have a custom field serializer.' . 'For security purposes, this type will not be serialized.');
 }
 public static function getSerializedTypeName(Clazz $instanceType)
 {
     if ($instanceType->isPrimitive()) {
         return self::$SERIALIZED_PRIMITIVE_TYPE_NAMES->get($instanceType->getFullName());
     }
     return $instanceType->getFullName();
 }