class io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer implements io.ebean.bean.BeanCollectionLoader, io.ebeaninternal.api.LoadManyBuffer
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer
super_class: java.lang.Object
{
private final java.util.concurrent.locks.ReentrantLock lock;
descriptor: Ljava/util/concurrent/locks/ReentrantLock;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebean.bean.PersistenceContext persistenceContext;
descriptor: Lio/ebean/bean/PersistenceContext;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebeaninternal.server.loadcontext.DLoadManyContext context;
descriptor: Lio/ebeaninternal/server/loadcontext/DLoadManyContext;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int batchSize;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.List<io.ebean.bean.BeanCollection<?>> list;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lio/ebean/bean/BeanCollection<*>;>;
void <init>(io.ebeaninternal.server.loadcontext.DLoadManyContext, int);
descriptor: (Lio/ebeaninternal/server/loadcontext/DLoadManyContext;I)V
flags: (0x0000)
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.concurrent.locks.ReentrantLock
dup
invokespecial java.util.concurrent.locks.ReentrantLock.<init>:()V
putfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.lock:Ljava/util/concurrent/locks/ReentrantLock;
2: aload 0
aload 1
putfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.context:Lio/ebeaninternal/server/loadcontext/DLoadManyContext;
3: aload 0
aload 1
invokevirtual io.ebeaninternal.server.loadcontext.DLoadManyContext.getPersistenceContext:()Lio/ebean/bean/PersistenceContext;
putfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.persistenceContext:Lio/ebean/bean/PersistenceContext;
4: aload 0
iload 2
putfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.batchSize:I
5: aload 0
new java.util.ArrayList
dup
iload 2
invokespecial java.util.ArrayList.<init>:(I)V
putfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.list:Ljava/util/List;
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/ebeaninternal/server/loadcontext/DLoadManyContext$LoadBuffer;
0 7 1 context Lio/ebeaninternal/server/loadcontext/DLoadManyContext;
0 7 2 batchSize I
MethodParameters:
Name Flags
context
batchSize
public boolean isUseDocStore();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.context:Lio/ebeaninternal/server/loadcontext/DLoadManyContext;
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext.parent:Lio/ebeaninternal/server/loadcontext/DLoadContext;
getfield io.ebeaninternal.server.loadcontext.DLoadContext.useDocStore:Z
ifeq 1
aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.context:Lio/ebeaninternal/server/loadcontext/DLoadManyContext;
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext.docStoreMapped:Z
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/ebeaninternal/server/loadcontext/DLoadManyContext$LoadBuffer;
public int getBatchSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.batchSize:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/loadcontext/DLoadManyContext$LoadBuffer;
public boolean isFull();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.batchSize:I
aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.list:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/ebeaninternal/server/loadcontext/DLoadManyContext$LoadBuffer;
public void add(io.ebean.bean.BeanCollection<?>);
descriptor: (Lio/ebean/bean/BeanCollection;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.list:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/ebeaninternal/server/loadcontext/DLoadManyContext$LoadBuffer;
0 2 1 bc Lio/ebean/bean/BeanCollection<*>;
Signature: (Lio/ebean/bean/BeanCollection<*>;)V
MethodParameters:
Name Flags
bc
public java.util.List<io.ebean.bean.BeanCollection<?>> getBatch();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.list:Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/loadcontext/DLoadManyContext$LoadBuffer;
Signature: ()Ljava/util/List<Lio/ebean/bean/BeanCollection<*>;>;
public io.ebeaninternal.server.deploy.BeanPropertyAssocMany<?> getBeanProperty();
descriptor: ()Lio/ebeaninternal/server/deploy/BeanPropertyAssocMany;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.context:Lio/ebeaninternal/server/loadcontext/DLoadManyContext;
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext.property:Lio/ebeaninternal/server/deploy/BeanPropertyAssocMany;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/loadcontext/DLoadManyContext$LoadBuffer;
Signature: ()Lio/ebeaninternal/server/deploy/BeanPropertyAssocMany<*>;
public io.ebean.bean.ObjectGraphNode getObjectGraphNode();
descriptor: ()Lio/ebean/bean/ObjectGraphNode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.context:Lio/ebeaninternal/server/loadcontext/DLoadManyContext;
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext.objectGraphNode:Lio/ebean/bean/ObjectGraphNode;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/loadcontext/DLoadManyContext$LoadBuffer;
public void configureQuery(io.ebeaninternal.api.SpiQuery<?>);
descriptor: (Lio/ebeaninternal/api/SpiQuery;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.context:Lio/ebeaninternal/server/loadcontext/DLoadManyContext;
aload 1
invokevirtual io.ebeaninternal.server.loadcontext.DLoadManyContext.configureQuery:(Lio/ebeaninternal/api/SpiQuery;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/ebeaninternal/server/loadcontext/DLoadManyContext$LoadBuffer;
0 2 1 query Lio/ebeaninternal/api/SpiQuery<*>;
Signature: (Lio/ebeaninternal/api/SpiQuery<*>;)V
MethodParameters:
Name Flags
query
public java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.context:Lio/ebeaninternal/server/loadcontext/DLoadManyContext;
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext.serverName:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/loadcontext/DLoadManyContext$LoadBuffer;
public io.ebeaninternal.server.deploy.BeanDescriptor<?> getBeanDescriptor();
descriptor: ()Lio/ebeaninternal/server/deploy/BeanDescriptor;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.context:Lio/ebeaninternal/server/loadcontext/DLoadManyContext;
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext.desc:Lio/ebeaninternal/server/deploy/BeanDescriptor;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/loadcontext/DLoadManyContext$LoadBuffer;
Signature: ()Lio/ebeaninternal/server/deploy/BeanDescriptor<*>;
public io.ebean.bean.PersistenceContext getPersistenceContext();
descriptor: ()Lio/ebean/bean/PersistenceContext;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.persistenceContext:Lio/ebean/bean/PersistenceContext;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/loadcontext/DLoadManyContext$LoadBuffer;
public java.lang.String getFullPath();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.context:Lio/ebeaninternal/server/loadcontext/DLoadManyContext;
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext.fullPath:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/loadcontext/DLoadManyContext$LoadBuffer;
public void loadMany(io.ebean.bean.BeanCollection<?>, );
descriptor: (Lio/ebean/bean/BeanCollection;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.lock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.lock:()V
1: iload 2
ifne 2
aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.context:Lio/ebeaninternal/server/loadcontext/DLoadManyContext;
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext.hitCache:Z
ifeq 2
aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.context:Lio/ebeaninternal/server/loadcontext/DLoadManyContext;
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext.property:Lio/ebeaninternal/server/deploy/BeanPropertyAssocMany;
invokevirtual io.ebeaninternal.server.deploy.BeanPropertyAssocMany.isUseCache:()Z
ifeq 2
iconst_1
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: istore 3
start local 3 4: iload 3
ifeq 19
5: aload 1
invokeinterface io.ebean.bean.BeanCollection.getOwnerBean:()Lio/ebean/bean/EntityBean;
astore 4
start local 4 6: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.context:Lio/ebeaninternal/server/loadcontext/DLoadManyContext;
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext.desc:Lio/ebeaninternal/server/deploy/BeanDescriptor;
aload 4
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual io.ebeaninternal.server.deploy.BeanDescriptor.getBeanDescriptor:(Ljava/lang/Class;)Lio/ebeaninternal/server/deploy/BeanDescriptor;
astore 5
start local 5 7: aload 5
aload 4
invokevirtual io.ebeaninternal.server.deploy.BeanDescriptor.getId:(Lio/ebean/bean/EntityBean;)Ljava/lang/Object;
astore 6
start local 6 8: aload 5
aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.context:Lio/ebeaninternal/server/loadcontext/DLoadManyContext;
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext.property:Lio/ebeaninternal/server/deploy/BeanPropertyAssocMany;
aload 1
aload 6
aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.context:Lio/ebeaninternal/server/loadcontext/DLoadManyContext;
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext.parent:Lio/ebeaninternal/server/loadcontext/DLoadContext;
invokevirtual io.ebeaninternal.server.loadcontext.DLoadContext.isReadOnly:()Ljava/lang/Boolean;
invokevirtual io.ebeaninternal.server.deploy.BeanDescriptor.cacheManyPropLoad:(Lio/ebeaninternal/server/deploy/BeanPropertyAssocMany;Lio/ebean/bean/BeanCollection;Ljava/lang/Object;Ljava/lang/Boolean;)Z
ifeq 19
9: iconst_0
istore 7
start local 7 10: goto 16
11: StackMap locals: io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer io.ebean.bean.BeanCollection int int io.ebean.bean.EntityBean io.ebeaninternal.server.deploy.BeanDescriptor java.lang.Object int
StackMap stack:
aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.list:Ljava/util/List;
iload 7
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
aload 1
if_acmpne 15
12: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.list:Ljava/util/List;
iload 7
invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
pop
13: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.lock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
14: return
15: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
16: iload 7
aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.list:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmplt 11
end local 7 17: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.lock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
18: return
end local 6 end local 5 end local 4 19: StackMap locals: io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer io.ebean.bean.BeanCollection int int
StackMap stack:
new io.ebeaninternal.api.LoadManyRequest
dup
aload 0
iload 2
iload 3
invokespecial io.ebeaninternal.api.LoadManyRequest.<init>:(Lio/ebeaninternal/api/LoadManyBuffer;ZZ)V
astore 4
start local 4 20: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.context:Lio/ebeaninternal/server/loadcontext/DLoadManyContext;
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext.parent:Lio/ebeaninternal/server/loadcontext/DLoadContext;
invokevirtual io.ebeaninternal.server.loadcontext.DLoadContext.getEbeanServer:()Lio/ebeaninternal/api/SpiEbeanServer;
aload 4
invokeinterface io.ebeaninternal.api.SpiEbeanServer.loadMany:(Lio/ebeaninternal/api/LoadManyRequest;)V
end local 4 end local 3 21: goto 25
StackMap locals: io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer io.ebean.bean.BeanCollection int
StackMap stack: java.lang.Throwable
22: astore 8
23: aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.lock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
24: aload 8
athrow
25: StackMap locals:
StackMap stack:
aload 0
getfield io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer.lock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
26: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lio/ebeaninternal/server/loadcontext/DLoadManyContext$LoadBuffer;
0 27 1 bc Lio/ebean/bean/BeanCollection<*>;
0 27 2 onlyIds Z
4 21 3 useCache Z
6 19 4 ownerBean Lio/ebean/bean/EntityBean;
7 19 5 parentDesc Lio/ebeaninternal/server/deploy/BeanDescriptor<*>;
8 19 6 parentId Ljava/lang/Object;
10 17 7 i I
20 21 4 req Lio/ebeaninternal/api/LoadManyRequest;
Exception table:
from to target type
1 13 22 any
15 17 22 any
19 22 22 any
Signature: (Lio/ebean/bean/BeanCollection<*>;Z)V
MethodParameters:
Name Flags
bc
onlyIds
}
SourceFile: "DLoadManyContext.java"
NestHost: io.ebeaninternal.server.loadcontext.DLoadManyContext
InnerClasses:
LoadBuffer = io.ebeaninternal.server.loadcontext.DLoadManyContext$LoadBuffer of io.ebeaninternal.server.loadcontext.DLoadManyContext