public class org.springframework.objenesis.instantiator.basic.ObjectStreamClassInstantiator extends java.lang.Object implements org.springframework.objenesis.instantiator.ObjectInstantiator
{
private static java.lang.reflect.Method newInstanceMethod;
private final java.io.ObjectStreamClass objStreamClass;
private static void initialize()
{
org.springframework.objenesis.ObjenesisException v, v;
java.lang.NoSuchMethodException v;
java.lang.Class[] v;
java.lang.RuntimeException v;
java.lang.Class v;
java.lang.reflect.Method v, v, v;
v = <org.springframework.objenesis.instantiator.basic.ObjectStreamClassInstantiator: java.lang.reflect.Method newInstanceMethod>;
if v != null goto label;
label:
v = class "Ljava/io/ObjectStreamClass;";
v = newarray (java.lang.Class)[0];
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method getDeclaredMethod(java.lang.String,java.lang.Class[])>("newInstance", v);
<org.springframework.objenesis.instantiator.basic.ObjectStreamClassInstantiator: java.lang.reflect.Method newInstanceMethod> = v;
v = <org.springframework.objenesis.instantiator.basic.ObjectStreamClassInstantiator: java.lang.reflect.Method newInstanceMethod>;
virtualinvoke v.<java.lang.reflect.Method: void setAccessible(boolean)>(1);
label:
goto label;
label:
v := @caughtexception;
v = new org.springframework.objenesis.ObjenesisException;
specialinvoke v.<org.springframework.objenesis.ObjenesisException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
v := @caughtexception;
v = new org.springframework.objenesis.ObjenesisException;
specialinvoke v.<org.springframework.objenesis.ObjenesisException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
return;
catch java.lang.RuntimeException from label to label with label;
catch java.lang.NoSuchMethodException from label to label with label;
}
public void <init>(java.lang.Class)
{
java.io.ObjectStreamClass v;
java.lang.Class v;
org.springframework.objenesis.instantiator.basic.ObjectStreamClassInstantiator v;
v := @this: org.springframework.objenesis.instantiator.basic.ObjectStreamClassInstantiator;
v := @parameter: java.lang.Class;
specialinvoke v.<java.lang.Object: void <init>()>();
staticinvoke <org.springframework.objenesis.instantiator.basic.ObjectStreamClassInstantiator: void initialize()>();
v = staticinvoke <java.io.ObjectStreamClass: java.io.ObjectStreamClass lookup(java.lang.Class)>(v);
v.<org.springframework.objenesis.instantiator.basic.ObjectStreamClassInstantiator: java.io.ObjectStreamClass objStreamClass> = v;
return;
}
public java.lang.Object newInstance()
{
org.springframework.objenesis.ObjenesisException v;
java.lang.Object[] v;
java.io.ObjectStreamClass v;
java.lang.Object v;
org.springframework.objenesis.instantiator.basic.ObjectStreamClassInstantiator v;
java.lang.reflect.Method v;
java.lang.Exception v;
v := @this: org.springframework.objenesis.instantiator.basic.ObjectStreamClassInstantiator;
label:
v = <org.springframework.objenesis.instantiator.basic.ObjectStreamClassInstantiator: java.lang.reflect.Method newInstanceMethod>;
v = v.<org.springframework.objenesis.instantiator.basic.ObjectStreamClassInstantiator: java.io.ObjectStreamClass objStreamClass>;
v = newarray (java.lang.Object)[0];
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Object invoke(java.lang.Object,java.lang.Object[])>(v, v);
label:
return v;
label:
v := @caughtexception;
v = new org.springframework.objenesis.ObjenesisException;
specialinvoke v.<org.springframework.objenesis.ObjenesisException: void <init>(java.lang.Throwable)>(v);
throw v;
catch java.lang.Exception from label to label with label;
}
}