public abstract class org.springframework.cglib.proxy.Mixin extends java.lang.Object
{
private static final org.springframework.cglib.proxy.Mixin$MixinKey KEY_FACTORY;
private static final java.util.Map ROUTE_CACHE;
public static final int STYLE_INTERFACES;
public static final int STYLE_BEANS;
public static final int STYLE_EVERYTHING;
public void <init>()
{
org.springframework.cglib.proxy.Mixin v;
v := @this: org.springframework.cglib.proxy.Mixin;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public abstract org.springframework.cglib.proxy.Mixin newInstance(java.lang.Object[]);
public static org.springframework.cglib.proxy.Mixin create(java.lang.Object[])
{
org.springframework.cglib.proxy.Mixin v;
org.springframework.cglib.proxy.Mixin$Generator v;
java.lang.Object[] v;
v := @parameter: java.lang.Object[];
v = new org.springframework.cglib.proxy.Mixin$Generator;
specialinvoke v.<org.springframework.cglib.proxy.Mixin$Generator: void <init>()>();
virtualinvoke v.<org.springframework.cglib.proxy.Mixin$Generator: void setDelegates(java.lang.Object[])>(v);
v = virtualinvoke v.<org.springframework.cglib.proxy.Mixin$Generator: org.springframework.cglib.proxy.Mixin create()>();
return v;
}
public static org.springframework.cglib.proxy.Mixin create(java.lang.Class[], java.lang.Object[])
{
org.springframework.cglib.proxy.Mixin$Generator v;
java.lang.Object[] v;
org.springframework.cglib.proxy.Mixin v;
java.lang.Class[] v;
v := @parameter: java.lang.Class[];
v := @parameter: java.lang.Object[];
v = new org.springframework.cglib.proxy.Mixin$Generator;
specialinvoke v.<org.springframework.cglib.proxy.Mixin$Generator: void <init>()>();
virtualinvoke v.<org.springframework.cglib.proxy.Mixin$Generator: void setClasses(java.lang.Class[])>(v);
virtualinvoke v.<org.springframework.cglib.proxy.Mixin$Generator: void setDelegates(java.lang.Object[])>(v);
v = virtualinvoke v.<org.springframework.cglib.proxy.Mixin$Generator: org.springframework.cglib.proxy.Mixin create()>();
return v;
}
public static org.springframework.cglib.proxy.Mixin createBean(java.lang.Object[])
{
org.springframework.cglib.proxy.Mixin v;
java.lang.Object[] v;
v := @parameter: java.lang.Object[];
v = staticinvoke <org.springframework.cglib.proxy.Mixin: org.springframework.cglib.proxy.Mixin createBean(java.lang.ClassLoader,java.lang.Object[])>(null, v);
return v;
}
public static org.springframework.cglib.proxy.Mixin createBean(java.lang.ClassLoader, java.lang.Object[])
{
org.springframework.cglib.proxy.Mixin$Generator v;
java.lang.Object[] v;
org.springframework.cglib.proxy.Mixin v;
java.lang.ClassLoader v;
v := @parameter: java.lang.ClassLoader;
v := @parameter: java.lang.Object[];
v = new org.springframework.cglib.proxy.Mixin$Generator;
specialinvoke v.<org.springframework.cglib.proxy.Mixin$Generator: void <init>()>();
virtualinvoke v.<org.springframework.cglib.proxy.Mixin$Generator: void setStyle(int)>(1);
virtualinvoke v.<org.springframework.cglib.proxy.Mixin$Generator: void setDelegates(java.lang.Object[])>(v);
virtualinvoke v.<org.springframework.cglib.proxy.Mixin$Generator: void setClassLoader(java.lang.ClassLoader)>(v);
v = virtualinvoke v.<org.springframework.cglib.proxy.Mixin$Generator: org.springframework.cglib.proxy.Mixin create()>();
return v;
}
public static java.lang.Class[] getClasses(java.lang.Object[])
{
java.lang.Object[] v;
org.springframework.cglib.proxy.Mixin$Route v;
java.lang.Class[] v;
java.lang.Object v;
v := @parameter: java.lang.Object[];
v = staticinvoke <org.springframework.cglib.proxy.Mixin: org.springframework.cglib.proxy.Mixin$Route route(java.lang.Object[])>(v);
v = v.<org.springframework.cglib.proxy.Mixin$Route: java.lang.Class[] classes>;
v = virtualinvoke v.<java.lang.Object: java.lang.Object clone()>();
return v;
}
private static org.springframework.cglib.proxy.Mixin$Route route(java.lang.Object[])
{
java.lang.Object[] v;
org.springframework.cglib.proxy.Mixin$Route v;
java.util.Map v, v;
java.lang.Object v, v;
v := @parameter: java.lang.Object[];
v = staticinvoke <org.springframework.cglib.core.ClassesKey: java.lang.Object create(java.lang.Object[])>(v);
v = <org.springframework.cglib.proxy.Mixin: java.util.Map ROUTE_CACHE>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = <org.springframework.cglib.proxy.Mixin: java.util.Map ROUTE_CACHE>;
v = new org.springframework.cglib.proxy.Mixin$Route;
specialinvoke v.<org.springframework.cglib.proxy.Mixin$Route: void <init>(java.lang.Object[])>(v);
v = v;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
return v;
}
static void <clinit>()
{
org.springframework.cglib.core.KeyFactory v;
java.util.Map v;
org.springframework.cglib.core.Customizer v;
java.util.HashMap v;
v = <org.springframework.cglib.core.KeyFactory: org.springframework.cglib.core.Customizer CLASS_BY_NAME>;
v = staticinvoke <org.springframework.cglib.core.KeyFactory: org.springframework.cglib.core.KeyFactory create(java.lang.Class,org.springframework.cglib.core.Customizer)>(class "Lorg/springframework/cglib/proxy/Mixin$MixinKey;", v);
<org.springframework.cglib.proxy.Mixin: org.springframework.cglib.proxy.Mixin$MixinKey KEY_FACTORY> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = staticinvoke <java.util.Collections: java.util.Map synchronizedMap(java.util.Map)>(v);
<org.springframework.cglib.proxy.Mixin: java.util.Map ROUTE_CACHE> = v;
return;
}
}