class org.mongodb.morphia.mapping.ReferenceMapper$2 extends org.mongodb.morphia.utils.IterHelper$MapIterCallback<java.lang.Object, java.lang.Object>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.mongodb.morphia.mapping.ReferenceMapper$2
super_class: org.mongodb.morphia.utils.IterHelper$MapIterCallback
{
final org.mongodb.morphia.mapping.ReferenceMapper this$0;
descriptor: Lorg/mongodb/morphia/mapping/ReferenceMapper;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final org.mongodb.morphia.mapping.Mapper val$mapper;
descriptor: Lorg/mongodb/morphia/mapping/Mapper;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final org.mongodb.morphia.mapping.MappedField val$mf;
descriptor: Lorg/mongodb/morphia/mapping/MappedField;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final org.mongodb.morphia.annotations.Reference val$refAnn;
descriptor: Lorg/mongodb/morphia/annotations/Reference;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final java.util.Map val$map;
descriptor: Ljava/util/Map;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final java.lang.Class val$referenceObjClass;
descriptor: Ljava/lang/Class;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final org.mongodb.morphia.Datastore val$datastore;
descriptor: Lorg/mongodb/morphia/Datastore;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final org.mongodb.morphia.mapping.cache.EntityCache val$cache;
descriptor: Lorg/mongodb/morphia/mapping/cache/EntityCache;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(org.mongodb.morphia.mapping.ReferenceMapper, org.mongodb.morphia.mapping.Mapper, org.mongodb.morphia.mapping.MappedField, org.mongodb.morphia.annotations.Reference, java.util.Map, java.lang.Class, org.mongodb.morphia.Datastore, org.mongodb.morphia.mapping.cache.EntityCache);
descriptor: (Lorg/mongodb/morphia/mapping/ReferenceMapper;Lorg/mongodb/morphia/mapping/Mapper;Lorg/mongodb/morphia/mapping/MappedField;Lorg/mongodb/morphia/annotations/Reference;Ljava/util/Map;Ljava/lang/Class;Lorg/mongodb/morphia/Datastore;Lorg/mongodb/morphia/mapping/cache/EntityCache;)V
flags: (0x0000)
Code:
stack=2, locals=9, args_size=9
start local 0 0: aload 0
aload 1
putfield org.mongodb.morphia.mapping.ReferenceMapper$2.this$0:Lorg/mongodb/morphia/mapping/ReferenceMapper;
aload 0
aload 2
putfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$mapper:Lorg/mongodb/morphia/mapping/Mapper;
aload 0
aload 3
putfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$mf:Lorg/mongodb/morphia/mapping/MappedField;
aload 0
aload 4
putfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$refAnn:Lorg/mongodb/morphia/annotations/Reference;
aload 0
aload 5
putfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$map:Ljava/util/Map;
aload 0
aload 6
putfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$referenceObjClass:Ljava/lang/Class;
aload 0
aload 7
putfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$datastore:Lorg/mongodb/morphia/Datastore;
aload 0
aload 8
putfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$cache:Lorg/mongodb/morphia/mapping/cache/EntityCache;
aload 0
invokespecial org.mongodb.morphia.utils.IterHelper$MapIterCallback.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/mongodb/morphia/mapping/ReferenceMapper$2;
MethodParameters:
Name Flags
this$0 final
val$mapper final
val$mf final
val$refAnn final
val$map final
val$referenceObjClass final
val$datastore final
val$cache final
public void eval(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$mapper:Lorg/mongodb/morphia/mapping/Mapper;
invokevirtual org.mongodb.morphia.mapping.Mapper.getConverters:()Lorg/mongodb/morphia/converters/Converters;
aload 0
getfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$mf:Lorg/mongodb/morphia/mapping/MappedField;
invokevirtual org.mongodb.morphia.mapping.MappedField.getMapKeyClass:()Ljava/lang/Class;
aload 1
aload 0
getfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$mf:Lorg/mongodb/morphia/mapping/MappedField;
invokevirtual org.mongodb.morphia.converters.Converters.decode:(Ljava/lang/Class;Ljava/lang/Object;Lorg/mongodb/morphia/mapping/MappedField;)Ljava/lang/Object;
astore 3
start local 3 1: aload 0
getfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$refAnn:Lorg/mongodb/morphia/annotations/Reference;
invokeinterface org.mongodb.morphia.annotations.Reference.lazy:()Z
ifeq 8
invokestatic org.mongodb.morphia.mapping.lazy.LazyFeatureDependencies.assertDependencyFullFilled:()Z
ifeq 8
2: aload 0
getfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$map:Ljava/util/Map;
checkcast org.mongodb.morphia.mapping.lazy.proxy.ProxiedEntityReferenceMap
astore 4
start local 4 3: aload 4
aload 3
aload 0
getfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$refAnn:Lorg/mongodb/morphia/annotations/Reference;
invokeinterface org.mongodb.morphia.annotations.Reference.idOnly:()Z
ifeq 5
4: aload 0
getfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$mapper:Lorg/mongodb/morphia/mapping/Mapper;
aload 0
getfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$referenceObjClass:Ljava/lang/Class;
aload 2
invokevirtual org.mongodb.morphia.mapping.Mapper.manualRefToKey:(Ljava/lang/Class;Ljava/lang/Object;)Lorg/mongodb/morphia/Key;
goto 6
5: StackMap locals: org.mongodb.morphia.mapping.ReferenceMapper$2 java.lang.Object java.lang.Object java.lang.Object org.mongodb.morphia.mapping.lazy.proxy.ProxiedEntityReferenceMap
StackMap stack: org.mongodb.morphia.mapping.lazy.proxy.ProxiedEntityReferenceMap java.lang.Object
aload 0
getfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$mapper:Lorg/mongodb/morphia/mapping/Mapper;
aload 2
checkcast com.mongodb.DBRef
invokevirtual org.mongodb.morphia.mapping.Mapper.refToKey:(Lcom/mongodb/DBRef;)Lorg/mongodb/morphia/Key;
6: StackMap locals: org.mongodb.morphia.mapping.ReferenceMapper$2 java.lang.Object java.lang.Object java.lang.Object org.mongodb.morphia.mapping.lazy.proxy.ProxiedEntityReferenceMap
StackMap stack: org.mongodb.morphia.mapping.lazy.proxy.ProxiedEntityReferenceMap java.lang.Object org.mongodb.morphia.Key
invokeinterface org.mongodb.morphia.mapping.lazy.proxy.ProxiedEntityReferenceMap.__put:(Ljava/lang/Object;Lorg/mongodb/morphia/Key;)V
end local 4 7: goto 9
8: StackMap locals:
StackMap stack:
aload 0
getfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$map:Ljava/util/Map;
aload 3
aload 0
getfield org.mongodb.morphia.mapping.ReferenceMapper$2.this$0:Lorg/mongodb/morphia/mapping/ReferenceMapper;
aload 0
getfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$datastore:Lorg/mongodb/morphia/Datastore;
aload 0
getfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$mapper:Lorg/mongodb/morphia/mapping/Mapper;
aload 0
getfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$cache:Lorg/mongodb/morphia/mapping/cache/EntityCache;
aload 0
getfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$mf:Lorg/mongodb/morphia/mapping/MappedField;
aload 0
getfield org.mongodb.morphia.mapping.ReferenceMapper$2.val$refAnn:Lorg/mongodb/morphia/annotations/Reference;
invokeinterface org.mongodb.morphia.annotations.Reference.idOnly:()Z
aload 2
invokevirtual org.mongodb.morphia.mapping.ReferenceMapper.resolveObject:(Lorg/mongodb/morphia/Datastore;Lorg/mongodb/morphia/mapping/Mapper;Lorg/mongodb/morphia/mapping/cache/EntityCache;Lorg/mongodb/morphia/mapping/MappedField;ZLjava/lang/Object;)Ljava/lang/Object;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
9: StackMap locals:
StackMap stack:
return
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/ReferenceMapper$2;
0 10 1 k Ljava/lang/Object;
0 10 2 val Ljava/lang/Object;
1 10 3 objKey Ljava/lang/Object;
3 7 4 proxiedMap Lorg/mongodb/morphia/mapping/lazy/proxy/ProxiedEntityReferenceMap;
MethodParameters:
Name Flags
k final
val final
}
Signature: Lorg/mongodb/morphia/utils/IterHelper$MapIterCallback<Ljava/lang/Object;Ljava/lang/Object;>;
SourceFile: "ReferenceMapper.java"
EnclosingMethod: org.mongodb.morphia.mapping.ReferenceMapper.readMap:(Lorg/mongodb/morphia/Datastore;Lorg/mongodb/morphia/mapping/Mapper;Ljava/lang/Object;Lorg/mongodb/morphia/annotations/Reference;Lorg/mongodb/morphia/mapping/cache/EntityCache;Lorg/mongodb/morphia/mapping/MappedField;Lcom/mongodb/DBObject;)V
NestHost: org.mongodb.morphia.mapping.ReferenceMapper
InnerClasses:
org.mongodb.morphia.mapping.ReferenceMapper$2
public abstract MapIterCallback = org.mongodb.morphia.utils.IterHelper$MapIterCallback of org.mongodb.morphia.utils.IterHelper