public class org.h2.command.CommandContainer extends org.h2.command.Command
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.h2.command.CommandContainer
super_class: org.h2.command.Command
{
private org.h2.command.Prepared prepared;
descriptor: Lorg/h2/command/Prepared;
flags: (0x0002) ACC_PRIVATE
private boolean readOnlyKnown;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean readOnly;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
static void clearCTE(org.h2.engine.Session, org.h2.command.Prepared);
descriptor: (Lorg/h2/engine/Session;Lorg/h2/command/Prepared;)V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.h2.command.Prepared.getCteCleanups:()Ljava/util/List;
astore 2
start local 2 1: aload 2
ifnull 3
2: aload 0
aload 2
invokestatic org.h2.command.CommandContainer.clearCTE:(Lorg/h2/engine/Session;Ljava/util/List;)V
3: StackMap locals: java.util.List
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 session Lorg/h2/engine/Session;
0 4 1 prepared Lorg/h2/command/Prepared;
1 4 2 cteCleanups Ljava/util/List<Lorg/h2/table/TableView;>;
MethodParameters:
Name Flags
session
prepared
static void clearCTE(org.h2.engine.Session, java.util.List<org.h2.table.TableView>);
descriptor: (Lorg/h2/engine/Session;Ljava/util/List;)V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: org.h2.engine.Session java.util.List top java.util.Iterator
StackMap stack:
1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.table.TableView
astore 2
start local 2 2: aload 2
invokevirtual org.h2.table.TableView.getName:()Ljava/lang/String;
ifnull 4
3: aload 0
aload 2
invokevirtual org.h2.engine.Session.removeLocalTempTable:(Lorg/h2/table/Table;)V
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 session Lorg/h2/engine/Session;
0 6 1 views Ljava/util/List<Lorg/h2/table/TableView;>;
2 4 2 view Lorg/h2/table/TableView;
Signature: (Lorg/h2/engine/Session;Ljava/util/List<Lorg/h2/table/TableView;>;)V
MethodParameters:
Name Flags
session
views
void <init>(org.h2.engine.Session, java.lang.String, org.h2.command.Prepared);
descriptor: (Lorg/h2/engine/Session;Ljava/lang/String;Lorg/h2/command/Prepared;)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
invokespecial org.h2.command.Command.<init>:(Lorg/h2/engine/Session;Ljava/lang/String;)V
1: aload 3
aload 0
invokevirtual org.h2.command.Prepared.setCommand:(Lorg/h2/command/Command;)V
2: aload 0
aload 3
putfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
3: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/command/CommandContainer;
0 4 1 session Lorg/h2/engine/Session;
0 4 2 sql Ljava/lang/String;
0 4 3 prepared Lorg/h2/command/Prepared;
MethodParameters:
Name Flags
session
sql
prepared
public java.util.ArrayList<? extends org.h2.expression.ParameterInterface> getParameters();
descriptor: ()Ljava/util/ArrayList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokevirtual org.h2.command.Prepared.getParameters:()Ljava/util/ArrayList;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/command/CommandContainer;
Signature: ()Ljava/util/ArrayList<+Lorg/h2/expression/ParameterInterface;>;
public boolean isTransactional();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokevirtual org.h2.command.Prepared.isTransactional:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/command/CommandContainer;
public boolean isQuery();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokevirtual org.h2.command.Prepared.isQuery:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/command/CommandContainer;
public void prepareJoinBatch();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.command.CommandContainer.session:Lorg/h2/engine/Session;
invokevirtual org.h2.engine.Session.isJoinBatchEnabled:()Z
ifeq 2
1: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokestatic org.h2.command.CommandContainer.prepareJoinBatch:(Lorg/h2/command/Prepared;)V
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/command/CommandContainer;
private static void prepareJoinBatch(org.h2.command.Prepared);
descriptor: (Lorg/h2/command/Prepared;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.h2.command.Prepared.isQuery:()Z
ifeq 8
1: aload 0
invokevirtual org.h2.command.Prepared.getType:()I
istore 1
start local 1 2: iload 1
bipush 66
if_icmpne 5
3: aload 0
checkcast org.h2.command.dml.Query
invokevirtual org.h2.command.dml.Query.prepareJoinBatch:()V
4: goto 8
StackMap locals: int
StackMap stack:
5: iload 1
bipush 60
if_icmpeq 7
6: iload 1
bipush 86
if_icmpne 8
7: StackMap locals:
StackMap stack:
aload 0
checkcast org.h2.command.dml.Explain
invokevirtual org.h2.command.dml.Explain.getCommand:()Lorg/h2/command/Prepared;
invokestatic org.h2.command.CommandContainer.prepareJoinBatch:(Lorg/h2/command/Prepared;)V
end local 1 8: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 prepared Lorg/h2/command/Prepared;
2 8 1 type I
MethodParameters:
Name Flags
prepared
private void recompileIfRequired();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=12, args_size=1
start local 0 0: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokevirtual org.h2.command.Prepared.needRecompile:()Z
ifeq 22
1: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
lconst_0
invokevirtual org.h2.command.Prepared.setModificationMetaId:(J)V
2: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokevirtual org.h2.command.Prepared.getSQL:()Ljava/lang/String;
astore 1
start local 1 3: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokevirtual org.h2.command.Prepared.getParameters:()Ljava/util/ArrayList;
astore 2
start local 2 4: new org.h2.command.Parser
dup
aload 0
getfield org.h2.command.CommandContainer.session:Lorg/h2/engine/Session;
invokespecial org.h2.command.Parser.<init>:(Lorg/h2/engine/Session;)V
astore 3
start local 3 5: aload 0
aload 3
aload 1
invokevirtual org.h2.command.Parser.parse:(Ljava/lang/String;)Lorg/h2/command/Prepared;
putfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
6: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokevirtual org.h2.command.Prepared.getModificationMetaId:()J
lstore 4
start local 4 7: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
lconst_0
invokevirtual org.h2.command.Prepared.setModificationMetaId:(J)V
8: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokevirtual org.h2.command.Prepared.getParameters:()Ljava/util/ArrayList;
astore 6
start local 6 9: iconst_0
istore 7
start local 7 10: aload 6
invokevirtual java.util.ArrayList.size:()I
istore 8
start local 8 11: goto 18
12: StackMap locals: org.h2.command.CommandContainer java.lang.String java.util.ArrayList org.h2.command.Parser long java.util.ArrayList int int
StackMap stack:
aload 2
iload 7
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast org.h2.expression.Parameter
astore 9
start local 9 13: aload 9
invokevirtual org.h2.expression.Parameter.isValueSet:()Z
ifeq 17
14: aload 9
aload 0
getfield org.h2.command.CommandContainer.session:Lorg/h2/engine/Session;
invokevirtual org.h2.expression.Parameter.getValue:(Lorg/h2/engine/Session;)Lorg/h2/value/Value;
astore 10
start local 10 15: aload 6
iload 7
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast org.h2.expression.Parameter
astore 11
start local 11 16: aload 11
aload 10
invokevirtual org.h2.expression.Parameter.setValue:(Lorg/h2/value/Value;)V
end local 11 end local 10 end local 9 17: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
18: iload 7
iload 8
if_icmplt 12
end local 8 end local 7 19: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokevirtual org.h2.command.Prepared.prepare:()V
20: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
lload 4
invokevirtual org.h2.command.Prepared.setModificationMetaId:(J)V
21: aload 0
invokevirtual org.h2.command.CommandContainer.prepareJoinBatch:()V
end local 6 end local 4 end local 3 end local 2 end local 1 22: StackMap locals: org.h2.command.CommandContainer
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/h2/command/CommandContainer;
3 22 1 sql Ljava/lang/String;
4 22 2 oldParams Ljava/util/ArrayList<Lorg/h2/expression/Parameter;>;
5 22 3 parser Lorg/h2/command/Parser;
7 22 4 mod J
9 22 6 newParams Ljava/util/ArrayList<Lorg/h2/expression/Parameter;>;
10 19 7 i I
11 19 8 size I
13 17 9 old Lorg/h2/expression/Parameter;
15 17 10 v Lorg/h2/value/Value;
16 17 11 p Lorg/h2/expression/Parameter;
public int update();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.h2.command.CommandContainer.recompileIfRequired:()V
1: aload 0
iconst_5
invokevirtual org.h2.command.CommandContainer.setProgress:(I)V
2: aload 0
invokevirtual org.h2.command.CommandContainer.start:()V
3: aload 0
getfield org.h2.command.CommandContainer.session:Lorg/h2/engine/Session;
getstatic org.h2.value.ValueNull.INSTANCE:Lorg/h2/value/ValueNull;
invokevirtual org.h2.engine.Session.setLastScopeIdentity:(Lorg/h2/value/Value;)V
4: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokevirtual org.h2.command.Prepared.checkParameters:()V
5: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokevirtual org.h2.command.Prepared.update:()I
istore 1
start local 1 6: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
aload 0
getfield org.h2.command.CommandContainer.startTimeNanos:J
iload 1
invokevirtual org.h2.command.Prepared.trace:(JI)V
7: aload 0
bipush 6
invokevirtual org.h2.command.CommandContainer.setProgress:(I)V
8: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/h2/command/CommandContainer;
6 9 1 updateCount I
public org.h2.result.ResultInterface query(int);
descriptor: (I)Lorg/h2/result/ResultInterface;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.h2.command.CommandContainer.recompileIfRequired:()V
1: aload 0
iconst_5
invokevirtual org.h2.command.CommandContainer.setProgress:(I)V
2: aload 0
invokevirtual org.h2.command.CommandContainer.start:()V
3: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokevirtual org.h2.command.Prepared.checkParameters:()V
4: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
iload 1
invokevirtual org.h2.command.Prepared.query:(I)Lorg/h2/result/ResultInterface;
astore 2
start local 2 5: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
aload 0
getfield org.h2.command.CommandContainer.startTimeNanos:J
aload 2
invokeinterface org.h2.result.ResultInterface.isLazy:()Z
ifeq 6
iconst_0
goto 7
StackMap locals: org.h2.command.CommandContainer int org.h2.result.ResultInterface
StackMap stack: org.h2.command.Prepared long
6: aload 2
invokeinterface org.h2.result.ResultInterface.getRowCount:()I
StackMap locals: org.h2.command.CommandContainer int org.h2.result.ResultInterface
StackMap stack: org.h2.command.Prepared long int
7: invokevirtual org.h2.command.Prepared.trace:(JI)V
8: aload 0
bipush 6
invokevirtual org.h2.command.CommandContainer.setProgress:(I)V
9: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/h2/command/CommandContainer;
0 10 1 maxrows I
5 10 2 result Lorg/h2/result/ResultInterface;
MethodParameters:
Name Flags
maxrows
public void stop();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.h2.command.Command.stop:()V
1: aload 0
getfield org.h2.command.CommandContainer.session:Lorg/h2/engine/Session;
aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokestatic org.h2.command.CommandContainer.clearCTE:(Lorg/h2/engine/Session;Lorg/h2/command/Prepared;)V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/command/CommandContainer;
public boolean canReuse();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.h2.command.Command.canReuse:()Z
ifeq 1
aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokevirtual org.h2.command.Prepared.getCteCleanups:()Ljava/util/List;
ifnonnull 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 Lorg/h2/command/CommandContainer;
public boolean isReadOnly();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.command.CommandContainer.readOnlyKnown:Z
ifne 3
1: aload 0
aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokevirtual org.h2.command.Prepared.isReadOnly:()Z
putfield org.h2.command.CommandContainer.readOnly:Z
2: aload 0
iconst_1
putfield org.h2.command.CommandContainer.readOnlyKnown:Z
3: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.command.CommandContainer.readOnly:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/command/CommandContainer;
public org.h2.result.ResultInterface queryMeta();
descriptor: ()Lorg/h2/result/ResultInterface;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokevirtual org.h2.command.Prepared.queryMeta:()Lorg/h2/result/ResultInterface;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/command/CommandContainer;
public boolean isCacheable();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokevirtual org.h2.command.Prepared.isCacheable:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/command/CommandContainer;
public int getCommandType();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokevirtual org.h2.command.Prepared.getType:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/command/CommandContainer;
void clearCTE();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.command.CommandContainer.session:Lorg/h2/engine/Session;
aload 0
getfield org.h2.command.CommandContainer.prepared:Lorg/h2/command/Prepared;
invokestatic org.h2.command.CommandContainer.clearCTE:(Lorg/h2/engine/Session;Lorg/h2/command/Prepared;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/command/CommandContainer;
}
SourceFile: "CommandContainer.java"