public class com.alibaba.com.caucho.hessian.io.SerializerFactory extends com.alibaba.com.caucho.hessian.io.AbstractSerializerFactory
{
private static final java.util.logging.Logger log;
private static com.alibaba.com.caucho.hessian.io.Deserializer OBJECT_DESERIALIZER;
private static java.util.concurrent.ConcurrentHashMap _unrecognizedTypeCache;
private static java.util.HashMap _staticSerializerMap;
private static java.util.HashMap _staticDeserializerMap;
private static java.util.HashMap _staticTypeMap;
protected com.alibaba.com.caucho.hessian.io.Serializer _defaultSerializer;
protected java.util.ArrayList _factories;
protected com.alibaba.com.caucho.hessian.io.CollectionSerializer _collectionSerializer;
protected com.alibaba.com.caucho.hessian.io.MapSerializer _mapSerializer;
private java.lang.ClassLoader _loader;
private com.alibaba.com.caucho.hessian.io.Deserializer _hashMapDeserializer;
private com.alibaba.com.caucho.hessian.io.Deserializer _arrayListDeserializer;
private java.util.concurrent.ConcurrentHashMap _cachedSerializerMap;
private java.util.concurrent.ConcurrentHashMap _cachedDeserializerMap;
private java.util.concurrent.ConcurrentHashMap _cachedTypeDeserializerMap;
private boolean _isAllowNonSerializable;
private java.util.Map _typeNotFoundDeserializerMap;
private static final java.lang.Object PRESENT;
private com.alibaba.com.caucho.hessian.io.ClassFactory _classFactory;
public void <init>()
{
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
java.lang.ClassLoader v;
java.lang.Thread v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v = staticinvoke <java.lang.Thread: java.lang.Thread currentThread()>();
v = virtualinvoke v.<java.lang.Thread: java.lang.ClassLoader getContextClassLoader()>();
specialinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: void <init>(java.lang.ClassLoader)>(v);
return;
}
public void <init>(java.lang.ClassLoader)
{
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
java.util.concurrent.ConcurrentHashMap v;
java.lang.ClassLoader v;
java.util.ArrayList v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: java.lang.ClassLoader;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.AbstractSerializerFactory: void <init>()>();
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.ArrayList _factories> = v;
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>(int)>(8);
v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.Map _typeNotFoundDeserializerMap> = v;
v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.lang.ClassLoader _loader> = v;
return;
}
public java.lang.Class loadSerializedClass(java.lang.String) throws java.lang.ClassNotFoundException
{
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
java.lang.Class v;
java.lang.String v;
com.alibaba.com.caucho.hessian.io.ClassFactory v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: java.lang.String;
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.ClassFactory getClassFactory()>();
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.ClassFactory: java.lang.Class load(java.lang.String)>(v);
return v;
}
public com.alibaba.com.caucho.hessian.io.ClassFactory getClassFactory()
{
java.lang.Throwable v;
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
java.lang.ClassLoader v;
com.alibaba.com.caucho.hessian.io.ClassFactory v, v, v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
entermonitor v;
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.ClassFactory _classFactory>;
if v != null goto label;
v = new com.alibaba.com.caucho.hessian.io.ClassFactory;
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.lang.ClassLoader getClassLoader()>();
specialinvoke v.<com.alibaba.com.caucho.hessian.io.ClassFactory: void <init>(java.lang.ClassLoader)>(v);
v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.ClassFactory _classFactory> = v;
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.ClassFactory _classFactory>;
exitmonitor v;
label:
return v;
label:
v := @caughtexception;
exitmonitor v;
throw v;
catch java.lang.Throwable from label to label with label;
}
private static void addBasic(java.lang.Class, java.lang.String, int)
{
java.util.HashMap v, v, v;
com.alibaba.com.caucho.hessian.io.BasicSerializer v;
com.alibaba.com.caucho.hessian.io.BasicDeserializer v;
int v;
java.lang.Class v;
java.lang.String v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v := @parameter: int;
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = new com.alibaba.com.caucho.hessian.io.BasicSerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.BasicSerializer: void <init>(int)>(v);
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = new com.alibaba.com.caucho.hessian.io.BasicDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.BasicDeserializer: void <init>(int)>(v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticDeserializerMap>;
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticTypeMap>;
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return;
}
public java.lang.ClassLoader getClassLoader()
{
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
java.lang.ClassLoader v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.lang.ClassLoader _loader>;
return v;
}
public void setSendCollectionType(boolean)
{
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
com.alibaba.com.caucho.hessian.io.MapSerializer v, v, v;
com.alibaba.com.caucho.hessian.io.CollectionSerializer v, v, v;
boolean v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: boolean;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.CollectionSerializer _collectionSerializer>;
if v != null goto label;
v = new com.alibaba.com.caucho.hessian.io.CollectionSerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.CollectionSerializer: void <init>()>();
v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.CollectionSerializer _collectionSerializer> = v;
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.CollectionSerializer _collectionSerializer>;
virtualinvoke v.<com.alibaba.com.caucho.hessian.io.CollectionSerializer: void setSendJavaType(boolean)>(v);
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.MapSerializer _mapSerializer>;
if v != null goto label;
v = new com.alibaba.com.caucho.hessian.io.MapSerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.MapSerializer: void <init>()>();
v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.MapSerializer _mapSerializer> = v;
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.MapSerializer _mapSerializer>;
virtualinvoke v.<com.alibaba.com.caucho.hessian.io.MapSerializer: void setSendJavaType(boolean)>(v);
return;
}
public void addFactory(com.alibaba.com.caucho.hessian.io.AbstractSerializerFactory)
{
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
com.alibaba.com.caucho.hessian.io.AbstractSerializerFactory v;
java.util.ArrayList v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: com.alibaba.com.caucho.hessian.io.AbstractSerializerFactory;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.ArrayList _factories>;
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(v);
return;
}
public boolean isAllowNonSerializable()
{
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
boolean v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: boolean _isAllowNonSerializable>;
return v;
}
public void setAllowNonSerializable(boolean)
{
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
boolean v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: boolean;
v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: boolean _isAllowNonSerializable> = v;
return;
}
public com.alibaba.com.caucho.hessian.io.Serializer getSerializer(java.lang.Class) throws com.alibaba.com.caucho.hessian.io.HessianProtocolException
{
java.lang.reflect.Method v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v;
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
com.alibaba.com.caucho.hessian.io.ArraySerializer v;
java.util.concurrent.ConcurrentHashMap v, v, v, v, v;
com.alibaba.com.caucho.hessian.io.RemoteSerializer v;
com.alibaba.com.caucho.hessian.io.ThrowableSerializer v;
java.lang.ClassLoader v, v;
com.alibaba.com.caucho.hessian.io.MapSerializer v, v;
java.util.HashMap v;
com.alibaba.com.caucho.hessian.io.InputStreamSerializer v;
java.util.ArrayList v, v, v;
int v, v;
com.alibaba.com.caucho.hessian.io.CollectionSerializer v, v;
com.alibaba.com.caucho.hessian.io.JavaSerializer v;
java.lang.Class v, v, v, v, v, v, v, v, v, v, v;
java.lang.Object v, v;
com.alibaba.com.caucho.hessian.io.EnumSerializer v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: java.lang.Class;
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = virtualinvoke v.<java.util.HashMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
return v;
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _cachedSerializerMap>;
if v == null goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _cachedSerializerMap>;
virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
label:
v = 0;
label:
if v != null goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.ArrayList _factories>;
if v == null goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.ArrayList _factories>;
v = virtualinvoke v.<java.util.ArrayList: int size()>();
if v >= v goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.ArrayList _factories>;
v = virtualinvoke v.<java.util.ArrayList: java.lang.Object get(int)>(v);
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.AbstractSerializerFactory: com.alibaba.com.caucho.hessian.io.Serializer getSerializer(java.lang.Class)>(v);
v = v + 1;
goto label;
label:
if v != null goto label;
v = staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: boolean isZoneId(java.lang.Class)>(v);
if v == 0 goto label;
v = staticinvoke <com.alibaba.com.caucho.hessian.io.java.ZoneIdSerializer: com.alibaba.com.caucho.hessian.io.java.ZoneIdSerializer getInstance()>();
goto label;
label:
v = staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: boolean isEnumSet(java.lang.Class)>(v);
if v == 0 goto label;
v = staticinvoke <com.alibaba.com.caucho.hessian.io.EnumSetSerializer: com.alibaba.com.caucho.hessian.io.EnumSetSerializer getInstance()>();
goto label;
label:
v = staticinvoke <com.alibaba.com.caucho.hessian.io.JavaSerializer: java.lang.reflect.Method getWriteReplace(java.lang.Class)>(v);
if v == null goto label;
v = new com.alibaba.com.caucho.hessian.io.JavaSerializer;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.lang.ClassLoader _loader>;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.JavaSerializer: void <init>(java.lang.Class,java.lang.ClassLoader)>(v, v);
v = v;
goto label;
label:
v = class "Lcom/alibaba/com/caucho/hessian/io/HessianRemoteObject;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = new com.alibaba.com.caucho.hessian.io.RemoteSerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.RemoteSerializer: void <init>()>();
v = v;
goto label;
label:
v = class "Ljava/util/Map;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.MapSerializer _mapSerializer>;
if v != null goto label;
v = new com.alibaba.com.caucho.hessian.io.MapSerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.MapSerializer: void <init>()>();
v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.MapSerializer _mapSerializer> = v;
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.MapSerializer _mapSerializer>;
goto label;
label:
v = class "Ljava/util/Collection;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.CollectionSerializer _collectionSerializer>;
if v != null goto label;
v = new com.alibaba.com.caucho.hessian.io.CollectionSerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.CollectionSerializer: void <init>()>();
v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.CollectionSerializer _collectionSerializer> = v;
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.CollectionSerializer _collectionSerializer>;
goto label;
label:
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
v = new com.alibaba.com.caucho.hessian.io.ArraySerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.ArraySerializer: void <init>()>();
v = v;
goto label;
label:
v = class "Ljava/lang/Throwable;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = new com.alibaba.com.caucho.hessian.io.ThrowableSerializer;
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.lang.ClassLoader getClassLoader()>();
specialinvoke v.<com.alibaba.com.caucho.hessian.io.ThrowableSerializer: void <init>(java.lang.Class,java.lang.ClassLoader)>(v, v);
v = v;
goto label;
label:
v = class "Ljava/io/InputStream;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = new com.alibaba.com.caucho.hessian.io.InputStreamSerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.InputStreamSerializer: void <init>()>();
v = v;
goto label;
label:
v = class "Ljava/util/Iterator;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = staticinvoke <com.alibaba.com.caucho.hessian.io.IteratorSerializer: com.alibaba.com.caucho.hessian.io.IteratorSerializer create()>();
goto label;
label:
v = class "Ljava/util/Enumeration;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = staticinvoke <com.alibaba.com.caucho.hessian.io.EnumerationSerializer: com.alibaba.com.caucho.hessian.io.EnumerationSerializer create()>();
goto label;
label:
v = class "Ljava/util/Calendar;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = staticinvoke <com.alibaba.com.caucho.hessian.io.CalendarSerializer: com.alibaba.com.caucho.hessian.io.CalendarSerializer create()>();
goto label;
label:
v = class "Ljava/util/Locale;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = staticinvoke <com.alibaba.com.caucho.hessian.io.LocaleSerializer: com.alibaba.com.caucho.hessian.io.LocaleSerializer create()>();
goto label;
label:
v = class "Ljava/lang/Enum;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = new com.alibaba.com.caucho.hessian.io.EnumSerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.EnumSerializer: void <init>(java.lang.Class)>(v);
v = v;
label:
if v != null goto label;
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Serializer getDefaultSerializer(java.lang.Class)>(v);
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _cachedSerializerMap>;
if v != null goto label;
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>(int)>(8);
v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _cachedSerializerMap> = v;
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _cachedSerializerMap>;
virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return v;
}
protected com.alibaba.com.caucho.hessian.io.Serializer getDefaultSerializer(java.lang.Class)
{
java.lang.IllegalStateException v;
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
com.alibaba.com.caucho.hessian.io.JavaSerializer v;
com.alibaba.com.caucho.hessian.io.Serializer v, v;
java.lang.Class v, v;
java.lang.ClassLoader v;
java.lang.String v, v;
boolean v, v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: java.lang.Class;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Serializer _defaultSerializer>;
if v == null goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Serializer _defaultSerializer>;
return v;
label:
v = class "Ljava/io/Serializable;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: boolean _isAllowNonSerializable>;
if v != 0 goto label;
v = new java.lang.IllegalStateException;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Serialized class \u must implement java.io.Serializable");
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
throw v;
label:
v = new com.alibaba.com.caucho.hessian.io.JavaSerializer;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.lang.ClassLoader _loader>;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.JavaSerializer: void <init>(java.lang.Class,java.lang.ClassLoader)>(v, v);
return v;
}
public com.alibaba.com.caucho.hessian.io.Deserializer getDeserializer(java.lang.Class) throws com.alibaba.com.caucho.hessian.io.HessianProtocolException
{
com.alibaba.com.caucho.hessian.io.EnumDeserializer v;
boolean v, v, v, v, v, v, v;
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
java.util.concurrent.ConcurrentHashMap v, v, v, v, v;
java.lang.ClassLoader v;
com.alibaba.com.caucho.hessian.io.CollectionDeserializer v;
java.util.HashMap v;
java.util.ArrayList v, v, v;
com.alibaba.com.caucho.hessian.io.MapDeserializer v;
int v, v;
com.alibaba.com.caucho.hessian.io.ClassDeserializer v;
com.alibaba.com.caucho.hessian.io.ArrayDeserializer v;
com.alibaba.com.caucho.hessian.io.ObjectDeserializer v;
java.lang.Class v, v, v, v, v, v, v;
java.lang.Object v, v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: java.lang.Class;
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticDeserializerMap>;
v = virtualinvoke v.<java.util.HashMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
return v;
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _cachedDeserializerMap>;
if v == null goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _cachedDeserializerMap>;
virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
label:
v = 0;
label:
if v != null goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.ArrayList _factories>;
if v == null goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.ArrayList _factories>;
v = virtualinvoke v.<java.util.ArrayList: int size()>();
if v >= v goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.ArrayList _factories>;
v = virtualinvoke v.<java.util.ArrayList: java.lang.Object get(int)>(v);
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.AbstractSerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer getDeserializer(java.lang.Class)>(v);
v = v + 1;
goto label;
label:
if v != null goto label;
v = class "Ljava/util/Collection;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = new com.alibaba.com.caucho.hessian.io.CollectionDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.CollectionDeserializer: void <init>(java.lang.Class)>(v);
v = v;
goto label;
label:
v = class "Ljava/util/Map;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = new com.alibaba.com.caucho.hessian.io.MapDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.MapDeserializer: void <init>(java.lang.Class)>(v);
v = v;
goto label;
label:
v = virtualinvoke v.<java.lang.Class: boolean isInterface()>();
if v == 0 goto label;
v = new com.alibaba.com.caucho.hessian.io.ObjectDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.ObjectDeserializer: void <init>(java.lang.Class)>(v);
v = v;
goto label;
label:
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
v = new com.alibaba.com.caucho.hessian.io.ArrayDeserializer;
v = virtualinvoke v.<java.lang.Class: java.lang.Class getComponentType()>();
specialinvoke v.<com.alibaba.com.caucho.hessian.io.ArrayDeserializer: void <init>(java.lang.Class)>(v);
v = v;
goto label;
label:
v = class "Ljava/util/Enumeration;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = staticinvoke <com.alibaba.com.caucho.hessian.io.EnumerationDeserializer: com.alibaba.com.caucho.hessian.io.EnumerationDeserializer create()>();
goto label;
label:
v = class "Ljava/lang/Enum;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = new com.alibaba.com.caucho.hessian.io.EnumDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.EnumDeserializer: void <init>(java.lang.Class)>(v);
v = v;
goto label;
label:
v = class "Ljava/lang/Class;";
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = new com.alibaba.com.caucho.hessian.io.ClassDeserializer;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.lang.ClassLoader _loader>;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.ClassDeserializer: void <init>(java.lang.ClassLoader)>(v);
v = v;
goto label;
label:
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer getDefaultDeserializer(java.lang.Class)>(v);
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _cachedDeserializerMap>;
if v != null goto label;
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>(int)>(8);
v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _cachedDeserializerMap> = v;
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _cachedDeserializerMap>;
virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return v;
}
protected com.alibaba.com.caucho.hessian.io.Deserializer getDefaultDeserializer(java.lang.Class)
{
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
java.lang.Class v;
com.alibaba.com.caucho.hessian.io.JavaDeserializer v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: java.lang.Class;
v = new com.alibaba.com.caucho.hessian.io.JavaDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.JavaDeserializer: void <init>(java.lang.Class)>(v);
return v;
}
public java.lang.Object readList(com.alibaba.com.caucho.hessian.io.AbstractHessianInput, int, java.lang.String) throws com.alibaba.com.caucho.hessian.io.HessianProtocolException, java.io.IOException
{
com.alibaba.com.caucho.hessian.io.CollectionDeserializer v;
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
com.alibaba.com.caucho.hessian.io.AbstractHessianInput v;
int v;
java.lang.Object v, v;
java.lang.String v;
com.alibaba.com.caucho.hessian.io.Deserializer v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: com.alibaba.com.caucho.hessian.io.AbstractHessianInput;
v := @parameter: int;
v := @parameter: java.lang.String;
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer getDeserializer(java.lang.String)>(v);
if v == null goto label;
v = interfaceinvoke v.<com.alibaba.com.caucho.hessian.io.Deserializer: java.lang.Object readList(com.alibaba.com.caucho.hessian.io.AbstractHessianInput,int)>(v, v);
return v;
label:
v = new com.alibaba.com.caucho.hessian.io.CollectionDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.CollectionDeserializer: void <init>(java.lang.Class)>(class "Ljava/util/ArrayList;");
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.CollectionDeserializer: java.lang.Object readList(com.alibaba.com.caucho.hessian.io.AbstractHessianInput,int)>(v, v);
return v;
}
public java.lang.Object readMap(com.alibaba.com.caucho.hessian.io.AbstractHessianInput, java.lang.String) throws com.alibaba.com.caucho.hessian.io.HessianProtocolException, java.io.IOException
{
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
java.lang.Object v;
java.lang.String v;
com.alibaba.com.caucho.hessian.io.AbstractHessianInput v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: com.alibaba.com.caucho.hessian.io.AbstractHessianInput;
v := @parameter: java.lang.String;
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.lang.Object readMap(com.alibaba.com.caucho.hessian.io.AbstractHessianInput,java.lang.String,java.lang.Class,java.lang.Class)>(v, v, null, null);
return v;
}
public java.lang.Object readMap(com.alibaba.com.caucho.hessian.io.AbstractHessianInput, java.lang.String, java.lang.Class, java.lang.Class) throws com.alibaba.com.caucho.hessian.io.HessianProtocolException, java.io.IOException
{
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
com.alibaba.com.caucho.hessian.io.AbstractHessianInput v;
com.alibaba.com.caucho.hessian.io.MapDeserializer v;
java.lang.Class v, v;
java.lang.Object v, v, v;
java.lang.String v;
com.alibaba.com.caucho.hessian.io.Deserializer v, v, v, v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: com.alibaba.com.caucho.hessian.io.AbstractHessianInput;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer getDeserializer(java.lang.String)>(v);
if v == null goto label;
v = interfaceinvoke v.<com.alibaba.com.caucho.hessian.io.Deserializer: java.lang.Object readMap(com.alibaba.com.caucho.hessian.io.AbstractHessianInput)>(v);
return v;
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer _hashMapDeserializer>;
if v == null goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer _hashMapDeserializer>;
v = interfaceinvoke v.<com.alibaba.com.caucho.hessian.io.Deserializer: java.lang.Object readMap(com.alibaba.com.caucho.hessian.io.AbstractHessianInput,java.lang.Class,java.lang.Class)>(v, v, v);
return v;
label:
v = new com.alibaba.com.caucho.hessian.io.MapDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.MapDeserializer: void <init>(java.lang.Class)>(class "Ljava/util/HashMap;");
v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer _hashMapDeserializer> = v;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer _hashMapDeserializer>;
v = interfaceinvoke v.<com.alibaba.com.caucho.hessian.io.Deserializer: java.lang.Object readMap(com.alibaba.com.caucho.hessian.io.AbstractHessianInput,java.lang.Class,java.lang.Class)>(v, v, v);
return v;
}
public java.lang.Object readObject(com.alibaba.com.caucho.hessian.io.AbstractHessianInput, java.lang.String, java.lang.String[]) throws com.alibaba.com.caucho.hessian.io.HessianProtocolException, java.io.IOException
{
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
java.lang.String[] v;
com.alibaba.com.caucho.hessian.io.AbstractHessianInput v;
com.alibaba.com.caucho.hessian.io.MapDeserializer v;
java.lang.Object v, v, v;
java.lang.String v;
com.alibaba.com.caucho.hessian.io.Deserializer v, v, v, v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: com.alibaba.com.caucho.hessian.io.AbstractHessianInput;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String[];
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer getDeserializer(java.lang.String)>(v);
if v == null goto label;
v = interfaceinvoke v.<com.alibaba.com.caucho.hessian.io.Deserializer: java.lang.Object readObject(com.alibaba.com.caucho.hessian.io.AbstractHessianInput,java.lang.String[])>(v, v);
return v;
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer _hashMapDeserializer>;
if v == null goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer _hashMapDeserializer>;
v = interfaceinvoke v.<com.alibaba.com.caucho.hessian.io.Deserializer: java.lang.Object readObject(com.alibaba.com.caucho.hessian.io.AbstractHessianInput,java.lang.String[])>(v, v);
return v;
label:
v = new com.alibaba.com.caucho.hessian.io.MapDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.MapDeserializer: void <init>(java.lang.Class)>(class "Ljava/util/HashMap;");
v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer _hashMapDeserializer> = v;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer _hashMapDeserializer>;
v = interfaceinvoke v.<com.alibaba.com.caucho.hessian.io.Deserializer: java.lang.Object readObject(com.alibaba.com.caucho.hessian.io.AbstractHessianInput,java.lang.String[])>(v, v);
return v;
}
public com.alibaba.com.caucho.hessian.io.Deserializer getObjectDeserializer(java.lang.String, java.lang.Class) throws com.alibaba.com.caucho.hessian.io.HessianProtocolException
{
java.util.logging.Level v;
java.lang.String v, v, v, v;
boolean v, v, v, v;
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
java.util.logging.Logger v, v;
java.lang.Class v, v, v, v, v, v;
com.alibaba.com.caucho.hessian.io.Deserializer v, v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer getObjectDeserializer(java.lang.String)>(v);
if v == null goto label;
v = interfaceinvoke v.<com.alibaba.com.caucho.hessian.io.Deserializer: java.lang.Class getType()>();
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = interfaceinvoke v.<com.alibaba.com.caucho.hessian.io.Deserializer: java.lang.Class getType()>();
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = class "Lcom/alibaba/com/caucho/hessian/io/HessianHandle;";
v = interfaceinvoke v.<com.alibaba.com.caucho.hessian.io.Deserializer: java.lang.Class getType()>();
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
label:
return v;
label:
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.logging.Logger log>;
v = <java.util.logging.Level: java.util.logging.Level FINE>;
v = virtualinvoke v.<java.util.logging.Logger: boolean isLoggable(java.util.logging.Level)>(v);
if v == 0 goto label;
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.logging.Logger log>;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = interfaceinvoke v.<com.alibaba.com.caucho.hessian.io.Deserializer: java.lang.Class getType()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("hessian: expected \'\u0001\' at \'\u0001\' (\u)");
virtualinvoke v.<java.util.logging.Logger: void fine(java.lang.String)>(v);
label:
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer getDeserializer(java.lang.Class)>(v);
return v;
}
public com.alibaba.com.caucho.hessian.io.Deserializer getObjectDeserializer(java.lang.String) throws com.alibaba.com.caucho.hessian.io.HessianProtocolException
{
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
com.alibaba.com.caucho.hessian.io.MapDeserializer v;
java.lang.String v;
com.alibaba.com.caucho.hessian.io.Deserializer v, v, v, v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: java.lang.String;
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer getDeserializer(java.lang.String)>(v);
if v == null goto label;
return v;
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer _hashMapDeserializer>;
if v == null goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer _hashMapDeserializer>;
return v;
label:
v = new com.alibaba.com.caucho.hessian.io.MapDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.MapDeserializer: void <init>(java.lang.Class)>(class "Ljava/util/HashMap;");
v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer _hashMapDeserializer> = v;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer _hashMapDeserializer>;
return v;
}
public com.alibaba.com.caucho.hessian.io.Deserializer getListDeserializer(java.lang.String, java.lang.Class) throws com.alibaba.com.caucho.hessian.io.HessianProtocolException
{
java.util.logging.Level v;
java.lang.String v, v, v, v;
boolean v, v, v;
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
java.util.logging.Logger v, v;
java.lang.Class v, v, v, v;
com.alibaba.com.caucho.hessian.io.Deserializer v, v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer getListDeserializer(java.lang.String)>(v);
if v == null goto label;
v = interfaceinvoke v.<com.alibaba.com.caucho.hessian.io.Deserializer: java.lang.Class getType()>();
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = interfaceinvoke v.<com.alibaba.com.caucho.hessian.io.Deserializer: java.lang.Class getType()>();
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
label:
return v;
label:
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.logging.Logger log>;
v = <java.util.logging.Level: java.util.logging.Level FINE>;
v = virtualinvoke v.<java.util.logging.Logger: boolean isLoggable(java.util.logging.Level)>(v);
if v == 0 goto label;
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.logging.Logger log>;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = interfaceinvoke v.<com.alibaba.com.caucho.hessian.io.Deserializer: java.lang.Class getType()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("hessian: expected \'\u0001\' at \'\u0001\' (\u)");
virtualinvoke v.<java.util.logging.Logger: void fine(java.lang.String)>(v);
label:
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer getDeserializer(java.lang.Class)>(v);
return v;
}
public com.alibaba.com.caucho.hessian.io.Deserializer getListDeserializer(java.lang.String) throws com.alibaba.com.caucho.hessian.io.HessianProtocolException
{
com.alibaba.com.caucho.hessian.io.CollectionDeserializer v;
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
java.lang.String v;
com.alibaba.com.caucho.hessian.io.Deserializer v, v, v, v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: java.lang.String;
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer getDeserializer(java.lang.String)>(v);
if v == null goto label;
return v;
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer _arrayListDeserializer>;
if v == null goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer _arrayListDeserializer>;
return v;
label:
v = new com.alibaba.com.caucho.hessian.io.CollectionDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.CollectionDeserializer: void <init>(java.lang.Class)>(class "Ljava/util/ArrayList;");
v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer _arrayListDeserializer> = v;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer _arrayListDeserializer>;
return v;
}
public com.alibaba.com.caucho.hessian.io.Deserializer getDeserializer(java.lang.String) throws com.alibaba.com.caucho.hessian.io.HessianProtocolException
{
byte v;
java.util.Map v, v;
boolean v, v, v;
com.alibaba.com.caucho.hessian.io.SerializerFactory v;
java.util.concurrent.ConcurrentHashMap v, v, v, v, v, v, v, v, v, v;
java.util.logging.Logger v, v;
java.lang.Exception v;
java.lang.ClassLoader v;
java.util.HashMap v;
long v, v;
java.util.logging.Level v;
java.lang.String v, v, v, v;
com.alibaba.com.caucho.hessian.io.ArrayDeserializer v, v;
java.util.concurrent.atomic.AtomicLong v;
java.lang.Class v, v;
java.lang.Object v, v, v, v, v, v, v;
com.alibaba.com.caucho.hessian.io.Deserializer v;
v := @this: com.alibaba.com.caucho.hessian.io.SerializerFactory;
v := @parameter: java.lang.String;
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("");
if v != 0 goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.Map _typeNotFoundDeserializerMap>;
v = interfaceinvoke v.<java.util.Map: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
label:
return null;
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _cachedTypeDeserializerMap>;
if v == null goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _cachedTypeDeserializerMap>;
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
return v;
label:
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticTypeMap>;
v = virtualinvoke v.<java.util.HashMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
return v;
label:
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("[");
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(1);
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer getDeserializer(java.lang.String)>(v);
if v == null goto label;
v = new com.alibaba.com.caucho.hessian.io.ArrayDeserializer;
v = interfaceinvoke v.<com.alibaba.com.caucho.hessian.io.Deserializer: java.lang.Class getType()>();
specialinvoke v.<com.alibaba.com.caucho.hessian.io.ArrayDeserializer: void <init>(java.lang.Class)>(v);
v = v;
goto label;
label:
v = new com.alibaba.com.caucho.hessian.io.ArrayDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.ArrayDeserializer: void <init>(java.lang.Class)>(class "Ljava/lang/Object;");
v = v;
goto label;
label:
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _unrecognizedTypeCache>;
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
label:
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.lang.Class loadSerializedClass(java.lang.String)>(v);
v = virtualinvoke v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer getDeserializer(java.lang.Class)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.logging.Logger log>;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.lang.ClassLoader _loader>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.ClassLoader,java.lang.Exception)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Hessian/Burlap: \'\u0001\' is an unknown class in \u0001:\n\u0001");
virtualinvoke v.<java.util.logging.Logger: void warning(java.lang.String)>(v);
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.Map _typeNotFoundDeserializerMap>;
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.lang.Object PRESENT>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.logging.Logger log>;
v = <java.util.logging.Level: java.util.logging.Level FINER>;
v = virtualinvoke v.<java.lang.Exception: java.lang.String toString()>();
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Throwable)>(v, v, v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _unrecognizedTypeCache>;
v = new java.util.concurrent.atomic.AtomicLong;
specialinvoke v.<java.util.concurrent.atomic.AtomicLong: void <init>(long)>(1L);
virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _unrecognizedTypeCache>;
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long incrementAndGet()>();
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _unrecognizedTypeCache>;
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long get()>();
v = v % 2000L;
v = v cmp 0L;
if v != 0 goto label;
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _unrecognizedTypeCache>;
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long getAndSet(long)>(1L);
label:
if v == null goto label;
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _cachedTypeDeserializerMap>;
if v != null goto label;
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>(int)>(8);
v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _cachedTypeDeserializerMap> = v;
label:
v = v.<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _cachedTypeDeserializerMap>;
virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
return v;
catch java.lang.Exception from label to label with label;
}
private static boolean isZoneId(java.lang.Class)
{
java.lang.Class v, v;
java.lang.ClassNotFoundException v;
boolean v, v, v;
v := @parameter: java.lang.Class;
label:
v = staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: boolean isJava8()>();
if v == 0 goto label;
v = staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>("java.time.ZoneId");
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
label:
v := @caughtexception;
return 0;
catch java.lang.ClassNotFoundException from label to label with label;
}
private static boolean isEnumSet(java.lang.Class)
{
java.lang.Class v, v;
boolean v;
v := @parameter: java.lang.Class;
v = class "Ljava/util/EnumSet;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
return v;
}
private static boolean isJava8()
{
byte v;
java.lang.Double v;
java.lang.String v;
boolean v;
double v;
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String)>("java.specification.version");
v = staticinvoke <java.lang.Double: java.lang.Double valueOf(java.lang.String)>(v);
v = virtualinvoke v.<java.lang.Double: double doubleValue()>();
v = v cmpl 1.8;
if v < 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
static void <clinit>()
{
java.lang.Throwable v, v, v, v, v, v, v;
com.alibaba.com.caucho.hessian.io.SqlDateSerializer v, v, v;
com.alibaba.com.caucho.hessian.io.BigIntegerDeserializer v;
java.lang.String v, v;
com.alibaba.com.caucho.hessian.io.SqlDateDeserializer v, v, v;
com.alibaba.com.caucho.hessian.io.UUIDDeserializer v;
com.alibaba.com.caucho.hessian.io.InputStreamDeserializer v;
com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer v, v, v, v, v, v, v, v, v, v, v, v, v;
boolean v;
java.util.concurrent.ConcurrentHashMap v;
com.alibaba.com.caucho.hessian.io.StackTraceElementDeserializer v;
java.util.logging.Logger v, v;
com.alibaba.com.caucho.hessian.io.BasicDeserializer v, v;
java.util.HashMap v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
com.alibaba.com.caucho.hessian.io.InputStreamSerializer v;
com.alibaba.com.caucho.hessian.io.StringValueSerializer v, v, v, v;
com.alibaba.com.caucho.hessian.io.StringValueDeserializer v, v, v;
com.alibaba.com.caucho.hessian.io.ClassSerializer v;
java.lang.Class v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.Object v;
v = class "Lcom/alibaba/com/caucho/hessian/io/SerializerFactory;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = staticinvoke <java.util.logging.Logger: java.util.logging.Logger getLogger(java.lang.String)>(v);
<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.logging.Logger log> = v;
v = new com.alibaba.com.caucho.hessian.io.BasicDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.BasicDeserializer: void <init>(int)>(13);
<com.alibaba.com.caucho.hessian.io.SerializerFactory: com.alibaba.com.caucho.hessian.io.Deserializer OBJECT_DESERIALIZER> = v;
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>()>();
<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.concurrent.ConcurrentHashMap _unrecognizedTypeCache> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticDeserializerMap> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticTypeMap> = v;
v = <java.lang.Void: java.lang.Class TYPE>;
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(v, "void", 0);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "Ljava/lang/Boolean;", "boolean", 1);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "Ljava/lang/Byte;", "byte", 2);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "Ljava/lang/Short;", "short", 3);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "Ljava/lang/Integer;", "int", 4);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "Ljava/lang/Long;", "long", 5);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "Ljava/lang/Float;", "float", 6);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "Ljava/lang/Double;", "double", 7);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "Ljava/lang/Character;", "char", 9);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "Ljava/lang/String;", "string", 10);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "Ljava/lang/Object;", "object", 13);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "Ljava/util/Date;", "date", 11);
v = <java.lang.Boolean: java.lang.Class TYPE>;
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(v, "boolean", 1);
v = <java.lang.Byte: java.lang.Class TYPE>;
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(v, "byte", 2);
v = <java.lang.Short: java.lang.Class TYPE>;
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(v, "short", 3);
v = <java.lang.Integer: java.lang.Class TYPE>;
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(v, "int", 4);
v = <java.lang.Long: java.lang.Class TYPE>;
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(v, "long", 5);
v = <java.lang.Float: java.lang.Class TYPE>;
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(v, "float", 6);
v = <java.lang.Double: java.lang.Class TYPE>;
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(v, "double", 7);
v = <java.lang.Character: java.lang.Class TYPE>;
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(v, "char", 8);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "[Z", "[boolean", 14);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "[B", "[byte", 15);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "[S", "[short", 16);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "[I", "[int", 17);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "[J", "[long", 18);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "[F", "[float", 19);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "[D", "[double", 20);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "[C", "[char", 21);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "[Ljava/lang/String;", "[string", 22);
staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: void addBasic(java.lang.Class,java.lang.String,int)>(class "[Ljava/lang/Object;", "[object", 23);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = new com.alibaba.com.caucho.hessian.io.ClassSerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.ClassSerializer: void <init>()>();
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/lang/Class;", v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticDeserializerMap>;
v = new com.alibaba.com.caucho.hessian.io.BasicDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.BasicDeserializer: void <init>(int)>(12);
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/lang/Number;", v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = new com.alibaba.com.caucho.hessian.io.StringValueSerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.StringValueSerializer: void <init>()>();
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/math/BigDecimal;", v);
label:
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticDeserializerMap>;
v = new com.alibaba.com.caucho.hessian.io.StringValueDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.StringValueDeserializer: void <init>(java.lang.Class)>(class "Ljava/math/BigDecimal;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/math/BigDecimal;", v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticDeserializerMap>;
v = new com.alibaba.com.caucho.hessian.io.BigIntegerDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.BigIntegerDeserializer: void <init>()>();
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/math/BigInteger;", v);
label:
goto label;
label:
v := @caughtexception;
label:
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = new com.alibaba.com.caucho.hessian.io.StringValueSerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.StringValueSerializer: void <init>()>();
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/util/UUID;", v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticDeserializerMap>;
v = new com.alibaba.com.caucho.hessian.io.UUIDDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.UUIDDeserializer: void <init>()>();
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/util/UUID;", v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = new com.alibaba.com.caucho.hessian.io.StringValueSerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.StringValueSerializer: void <init>()>();
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/io/File;", v);
label:
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticDeserializerMap>;
v = new com.alibaba.com.caucho.hessian.io.StringValueDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.StringValueDeserializer: void <init>(java.lang.Class)>(class "Ljava/io/File;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/io/File;", v);
label:
goto label;
label:
v := @caughtexception;
label:
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = new com.alibaba.com.caucho.hessian.io.StringValueSerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.StringValueSerializer: void <init>()>();
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljavax/management/ObjectName;", v);
label:
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticDeserializerMap>;
v = new com.alibaba.com.caucho.hessian.io.StringValueDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.StringValueDeserializer: void <init>(java.lang.Class)>(class "Ljavax/management/ObjectName;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljavax/management/ObjectName;", v);
label:
goto label;
label:
v := @caughtexception;
label:
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = new com.alibaba.com.caucho.hessian.io.SqlDateSerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.SqlDateSerializer: void <init>()>();
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/sql/Date;", v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = new com.alibaba.com.caucho.hessian.io.SqlDateSerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.SqlDateSerializer: void <init>()>();
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/sql/Time;", v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = new com.alibaba.com.caucho.hessian.io.SqlDateSerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.SqlDateSerializer: void <init>()>();
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/sql/Timestamp;", v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = new com.alibaba.com.caucho.hessian.io.InputStreamSerializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.InputStreamSerializer: void <init>()>();
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/io/InputStream;", v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticDeserializerMap>;
v = new com.alibaba.com.caucho.hessian.io.InputStreamDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.InputStreamDeserializer: void <init>()>();
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/io/InputStream;", v);
label:
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticDeserializerMap>;
v = new com.alibaba.com.caucho.hessian.io.SqlDateDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.SqlDateDeserializer: void <init>(java.lang.Class)>(class "Ljava/sql/Date;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/sql/Date;", v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticDeserializerMap>;
v = new com.alibaba.com.caucho.hessian.io.SqlDateDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.SqlDateDeserializer: void <init>(java.lang.Class)>(class "Ljava/sql/Time;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/sql/Time;", v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticDeserializerMap>;
v = new com.alibaba.com.caucho.hessian.io.SqlDateDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.SqlDateDeserializer: void <init>(java.lang.Class)>(class "Ljava/sql/Timestamp;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/sql/Timestamp;", v);
label:
goto label;
label:
v := @caughtexception;
virtualinvoke v.<java.lang.Throwable: void printStackTrace()>();
label:
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticDeserializerMap>;
v = new com.alibaba.com.caucho.hessian.io.StackTraceElementDeserializer;
specialinvoke v.<com.alibaba.com.caucho.hessian.io.StackTraceElementDeserializer: void <init>()>();
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/lang/StackTraceElement;", v);
label:
goto label;
label:
v := @caughtexception;
label:
v = staticinvoke <com.alibaba.com.caucho.hessian.io.SerializerFactory: boolean isJava8()>();
if v == 0 goto label;
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>("java.time.LocalTime");
v = staticinvoke <com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer: com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer create(java.lang.Class)>(class "Lcom/alibaba/com/caucho/hessian/io/java8/LocalTimeHandle;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>("java.time.LocalDate");
v = staticinvoke <com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer: com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer create(java.lang.Class)>(class "Lcom/alibaba/com/caucho/hessian/io/java8/LocalDateHandle;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>("java.time.LocalDateTime");
v = staticinvoke <com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer: com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer create(java.lang.Class)>(class "Lcom/alibaba/com/caucho/hessian/io/java8/LocalDateTimeHandle;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>("java.time.Instant");
v = staticinvoke <com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer: com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer create(java.lang.Class)>(class "Lcom/alibaba/com/caucho/hessian/io/java8/InstantHandle;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>("java.time.Duration");
v = staticinvoke <com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer: com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer create(java.lang.Class)>(class "Lcom/alibaba/com/caucho/hessian/io/java8/DurationHandle;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>("java.time.Period");
v = staticinvoke <com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer: com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer create(java.lang.Class)>(class "Lcom/alibaba/com/caucho/hessian/io/java8/PeriodHandle;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>("java.time.Year");
v = staticinvoke <com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer: com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer create(java.lang.Class)>(class "Lcom/alibaba/com/caucho/hessian/io/java8/YearHandle;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>("java.time.YearMonth");
v = staticinvoke <com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer: com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer create(java.lang.Class)>(class "Lcom/alibaba/com/caucho/hessian/io/java8/YearMonthHandle;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>("java.time.MonthDay");
v = staticinvoke <com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer: com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer create(java.lang.Class)>(class "Lcom/alibaba/com/caucho/hessian/io/java8/MonthDayHandle;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>("java.time.OffsetDateTime");
v = staticinvoke <com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer: com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer create(java.lang.Class)>(class "Lcom/alibaba/com/caucho/hessian/io/java8/OffsetDateTimeHandle;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>("java.time.ZoneOffset");
v = staticinvoke <com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer: com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer create(java.lang.Class)>(class "Lcom/alibaba/com/caucho/hessian/io/java8/ZoneOffsetHandle;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>("java.time.OffsetTime");
v = staticinvoke <com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer: com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer create(java.lang.Class)>(class "Lcom/alibaba/com/caucho/hessian/io/java8/OffsetTimeHandle;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.HashMap _staticSerializerMap>;
v = staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>("java.time.ZonedDateTime");
v = staticinvoke <com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer: com.alibaba.com.caucho.hessian.io.java.Java8TimeSerializer create(java.lang.Class)>(class "Lcom/alibaba/com/caucho/hessian/io/java8/ZonedDateTimeHandle;");
virtualinvoke v.<java.util.HashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = <com.alibaba.com.caucho.hessian.io.SerializerFactory: java.util.logging.Logger log>;
v = virtualinvoke v.<java.lang.Throwable: java.lang.Throwable getCause()>();
v = staticinvoke <java.lang.String: java.lang.String valueOf(java.lang.Object)>(v);
virtualinvoke v.<java.util.logging.Logger: void warning(java.lang.String)>(v);
label:
v = new java.lang.Object;
specialinvoke v.<java.lang.Object: void <init>()>();
<com.alibaba.com.caucho.hessian.io.SerializerFactory: java.lang.Object PRESENT> = v;
return;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
}