public class org.mongodb.morphia.mapping.lazy.CGLibLazyProxyFactory implements org.mongodb.morphia.mapping.lazy.LazyProxyFactory
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.mongodb.morphia.mapping.lazy.CGLibLazyProxyFactory
super_class: java.lang.Object
{
private final com.thoughtworks.proxy.factory.CglibProxyFactory factory;
descriptor: Lcom/thoughtworks/proxy/factory/CglibProxyFactory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new com.thoughtworks.proxy.factory.CglibProxyFactory
dup
invokespecial com.thoughtworks.proxy.factory.CglibProxyFactory.<init>:()V
putfield org.mongodb.morphia.mapping.lazy.CGLibLazyProxyFactory.factory:Lcom/thoughtworks/proxy/factory/CglibProxyFactory;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/mongodb/morphia/mapping/lazy/CGLibLazyProxyFactory;
public <T extends java.util.Collection> T createListProxy(org.mongodb.morphia.Datastore, T, java.lang.Class, );
descriptor: (Lorg/mongodb/morphia/Datastore;Ljava/util/Collection;Ljava/lang/Class;Z)Ljava/util/Collection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
astore 5
start local 5 1: new org.mongodb.morphia.mapping.lazy.proxy.CollectionObjectReference
dup
aload 2
aload 3
iload 4
2: aload 1
3: invokespecial org.mongodb.morphia.mapping.lazy.proxy.CollectionObjectReference.<init>:(Ljava/util/Collection;Ljava/lang/Class;ZLorg/mongodb/morphia/Datastore;)V
astore 6
start local 6 4: new org.mongodb.morphia.mapping.lazy.NonFinalizingHotSwappingInvoker
dup
iconst_2
anewarray java.lang.Class
dup
iconst_0
aload 5
aastore
dup
iconst_1
ldc Ljava/io/Serializable;
aastore
aload 0
getfield org.mongodb.morphia.mapping.lazy.CGLibLazyProxyFactory.factory:Lcom/thoughtworks/proxy/factory/CglibProxyFactory;
aload 6
5: getstatic com.thoughtworks.proxy.toys.delegate.DelegationMode.SIGNATURE:Lcom/thoughtworks/proxy/toys/delegate/DelegationMode;
6: invokespecial org.mongodb.morphia.mapping.lazy.NonFinalizingHotSwappingInvoker.<init>:([Ljava/lang/Class;Lcom/thoughtworks/proxy/ProxyFactory;Lcom/thoughtworks/proxy/kit/ObjectReference;Lcom/thoughtworks/proxy/toys/delegate/DelegationMode;)V
7: invokevirtual org.mongodb.morphia.mapping.lazy.NonFinalizingHotSwappingInvoker.proxy:()Ljava/lang/Object;
checkcast java.util.Collection
8: astore 7
start local 7 9: aload 5
iconst_3
anewarray java.lang.Class
dup
iconst_0
ldc Lorg/mongodb/morphia/mapping/lazy/proxy/ProxiedEntityReferenceList;
aastore
dup
iconst_1
aload 5
aastore
dup
iconst_2
ldc Ljava/io/Serializable;
aastore
invokestatic com.thoughtworks.proxy.toys.dispatch.Dispatching.proxy:(Ljava/lang/Class;[Ljava/lang/Class;)Lcom/thoughtworks/proxy/toys/dispatch/Dispatching$DispatchingWith;
iconst_2
anewarray java.lang.Object
dup
iconst_0
10: aload 6
aastore
dup
iconst_1
aload 7
aastore
invokevirtual com.thoughtworks.proxy.toys.dispatch.Dispatching$DispatchingWith.with:([Ljava/lang/Object;)Lcom/thoughtworks/proxy/toys/dispatch/Dispatching$DispatchingBuild;
11: aload 0
getfield org.mongodb.morphia.mapping.lazy.CGLibLazyProxyFactory.factory:Lcom/thoughtworks/proxy/factory/CglibProxyFactory;
invokevirtual com.thoughtworks.proxy.toys.dispatch.Dispatching$DispatchingBuild.build:(Lcom/thoughtworks/proxy/ProxyFactory;)Ljava/lang/Object;
checkcast java.util.Collection
12: areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/mongodb/morphia/mapping/lazy/CGLibLazyProxyFactory;
0 13 1 datastore Lorg/mongodb/morphia/Datastore;
0 13 2 listToProxy TT;
0 13 3 referenceObjClass Ljava/lang/Class;
0 13 4 ignoreMissing Z
1 13 5 targetClass Ljava/lang/Class<+Ljava/util/Collection;>;
4 13 6 objectReference Lorg/mongodb/morphia/mapping/lazy/proxy/CollectionObjectReference;
9 13 7 backend TT;
Signature: <T::Ljava/util/Collection;>(Lorg/mongodb/morphia/Datastore;TT;Ljava/lang/Class;Z)TT;
MethodParameters:
Name Flags
datastore final
listToProxy final
referenceObjClass final
ignoreMissing final
public <T extends java.util.Map> T createMapProxy(org.mongodb.morphia.Datastore, T, java.lang.Class, );
descriptor: (Lorg/mongodb/morphia/Datastore;Ljava/util/Map;Ljava/lang/Class;Z)Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
astore 5
start local 5 1: new org.mongodb.morphia.mapping.lazy.proxy.MapObjectReference
dup
aload 1
aload 2
aload 3
iload 4
invokespecial org.mongodb.morphia.mapping.lazy.proxy.MapObjectReference.<init>:(Lorg/mongodb/morphia/Datastore;Ljava/util/Map;Ljava/lang/Class;Z)V
astore 6
start local 6 2: new org.mongodb.morphia.mapping.lazy.NonFinalizingHotSwappingInvoker
dup
iconst_2
anewarray java.lang.Class
dup
iconst_0
aload 5
aastore
dup
iconst_1
ldc Ljava/io/Serializable;
aastore
aload 0
getfield org.mongodb.morphia.mapping.lazy.CGLibLazyProxyFactory.factory:Lcom/thoughtworks/proxy/factory/CglibProxyFactory;
aload 6
3: getstatic com.thoughtworks.proxy.toys.delegate.DelegationMode.SIGNATURE:Lcom/thoughtworks/proxy/toys/delegate/DelegationMode;
4: invokespecial org.mongodb.morphia.mapping.lazy.NonFinalizingHotSwappingInvoker.<init>:([Ljava/lang/Class;Lcom/thoughtworks/proxy/ProxyFactory;Lcom/thoughtworks/proxy/kit/ObjectReference;Lcom/thoughtworks/proxy/toys/delegate/DelegationMode;)V
5: invokevirtual org.mongodb.morphia.mapping.lazy.NonFinalizingHotSwappingInvoker.proxy:()Ljava/lang/Object;
checkcast java.util.Map
6: astore 7
start local 7 7: aload 5
iconst_3
anewarray java.lang.Class
dup
iconst_0
ldc Lorg/mongodb/morphia/mapping/lazy/proxy/ProxiedEntityReferenceMap;
aastore
dup
iconst_1
aload 5
aastore
dup
iconst_2
ldc Ljava/io/Serializable;
aastore
invokestatic com.thoughtworks.proxy.toys.dispatch.Dispatching.proxy:(Ljava/lang/Class;[Ljava/lang/Class;)Lcom/thoughtworks/proxy/toys/dispatch/Dispatching$DispatchingWith;
iconst_2
anewarray java.lang.Object
dup
iconst_0
8: aload 6
aastore
dup
iconst_1
aload 7
aastore
invokevirtual com.thoughtworks.proxy.toys.dispatch.Dispatching$DispatchingWith.with:([Ljava/lang/Object;)Lcom/thoughtworks/proxy/toys/dispatch/Dispatching$DispatchingBuild;
9: aload 0
getfield org.mongodb.morphia.mapping.lazy.CGLibLazyProxyFactory.factory:Lcom/thoughtworks/proxy/factory/CglibProxyFactory;
invokevirtual com.thoughtworks.proxy.toys.dispatch.Dispatching$DispatchingBuild.build:(Lcom/thoughtworks/proxy/ProxyFactory;)Ljava/lang/Object;
checkcast java.util.Map
10: areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/mongodb/morphia/mapping/lazy/CGLibLazyProxyFactory;
0 11 1 datastore Lorg/mongodb/morphia/Datastore;
0 11 2 mapToProxy TT;
0 11 3 referenceObjClass Ljava/lang/Class;
0 11 4 ignoreMissing Z
1 11 5 targetClass Ljava/lang/Class<+Ljava/util/Map;>;
2 11 6 objectReference Lorg/mongodb/morphia/mapping/lazy/proxy/MapObjectReference;
7 11 7 backend TT;
Signature: <T::Ljava/util/Map;>(Lorg/mongodb/morphia/Datastore;TT;Ljava/lang/Class;Z)TT;
MethodParameters:
Name Flags
datastore final
mapToProxy final
referenceObjClass final
ignoreMissing final
public <T> T createProxy(org.mongodb.morphia.Datastore, java.lang.Class<T>, org.mongodb.morphia.Key<T>, );
descriptor: (Lorg/mongodb/morphia/Datastore;Ljava/lang/Class;Lorg/mongodb/morphia/Key;Z)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: new org.mongodb.morphia.mapping.lazy.proxy.EntityObjectReference
dup
aload 1
aload 2
aload 3
iload 4
invokespecial org.mongodb.morphia.mapping.lazy.proxy.EntityObjectReference.<init>:(Lorg/mongodb/morphia/Datastore;Ljava/lang/Class;Lorg/mongodb/morphia/Key;Z)V
astore 5
start local 5 1: new org.mongodb.morphia.mapping.lazy.NonFinalizingHotSwappingInvoker
dup
iconst_2
anewarray java.lang.Class
dup
iconst_0
aload 2
aastore
dup
iconst_1
ldc Ljava/io/Serializable;
aastore
aload 0
getfield org.mongodb.morphia.mapping.lazy.CGLibLazyProxyFactory.factory:Lcom/thoughtworks/proxy/factory/CglibProxyFactory;
aload 5
2: getstatic com.thoughtworks.proxy.toys.delegate.DelegationMode.SIGNATURE:Lcom/thoughtworks/proxy/toys/delegate/DelegationMode;
3: invokespecial org.mongodb.morphia.mapping.lazy.NonFinalizingHotSwappingInvoker.<init>:([Ljava/lang/Class;Lcom/thoughtworks/proxy/ProxyFactory;Lcom/thoughtworks/proxy/kit/ObjectReference;Lcom/thoughtworks/proxy/toys/delegate/DelegationMode;)V
4: invokevirtual org.mongodb.morphia.mapping.lazy.NonFinalizingHotSwappingInvoker.proxy:()Ljava/lang/Object;
5: astore 6
start local 6 6: aload 2
iconst_3
anewarray java.lang.Class
dup
iconst_0
ldc Lorg/mongodb/morphia/mapping/lazy/proxy/ProxiedEntityReference;
aastore
dup
iconst_1
aload 2
aastore
dup
iconst_2
ldc Ljava/io/Serializable;
aastore
invokestatic com.thoughtworks.proxy.toys.dispatch.Dispatching.proxy:(Ljava/lang/Class;[Ljava/lang/Class;)Lcom/thoughtworks/proxy/toys/dispatch/Dispatching$DispatchingWith;
iconst_2
anewarray java.lang.Object
dup
iconst_0
7: aload 5
aastore
dup
iconst_1
aload 6
aastore
invokevirtual com.thoughtworks.proxy.toys.dispatch.Dispatching$DispatchingWith.with:([Ljava/lang/Object;)Lcom/thoughtworks/proxy/toys/dispatch/Dispatching$DispatchingBuild;
8: aload 0
getfield org.mongodb.morphia.mapping.lazy.CGLibLazyProxyFactory.factory:Lcom/thoughtworks/proxy/factory/CglibProxyFactory;
invokevirtual com.thoughtworks.proxy.toys.dispatch.Dispatching$DispatchingBuild.build:(Lcom/thoughtworks/proxy/ProxyFactory;)Ljava/lang/Object;
9: areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/mongodb/morphia/mapping/lazy/CGLibLazyProxyFactory;
0 10 1 datastore Lorg/mongodb/morphia/Datastore;
0 10 2 targetClass Ljava/lang/Class<TT;>;
0 10 3 key Lorg/mongodb/morphia/Key<TT;>;
0 10 4 ignoreMissing Z
1 10 5 objectReference Lorg/mongodb/morphia/mapping/lazy/proxy/EntityObjectReference;
6 10 6 backend TT;
Signature: <T:Ljava/lang/Object;>(Lorg/mongodb/morphia/Datastore;Ljava/lang/Class<TT;>;Lorg/mongodb/morphia/Key<TT;>;Z)TT;
MethodParameters:
Name Flags
datastore final
targetClass final
key final
ignoreMissing final
}
SourceFile: "CGLibLazyProxyFactory.java"
InnerClasses:
public DispatchingBuild = com.thoughtworks.proxy.toys.dispatch.Dispatching$DispatchingBuild of com.thoughtworks.proxy.toys.dispatch.Dispatching
public DispatchingWith = com.thoughtworks.proxy.toys.dispatch.Dispatching$DispatchingWith of com.thoughtworks.proxy.toys.dispatch.Dispatching