public abstract class io.ebeaninternal.server.core.AbstractSqlQueryRequest
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: io.ebeaninternal.server.core.AbstractSqlQueryRequest
super_class: java.lang.Object
{
protected final io.ebeaninternal.api.SpiSqlBinding query;
descriptor: Lio/ebeaninternal/api/SpiSqlBinding;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final io.ebeaninternal.api.SpiEbeanServer server;
descriptor: Lio/ebeaninternal/api/SpiEbeanServer;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected io.ebeaninternal.api.SpiTransaction transaction;
descriptor: Lio/ebeaninternal/api/SpiTransaction;
flags: (0x0004) ACC_PROTECTED
private boolean createdTransaction;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
protected java.lang.String sql;
descriptor: Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
protected java.sql.ResultSet resultSet;
descriptor: Ljava/sql/ResultSet;
flags: (0x0004) ACC_PROTECTED
protected java.lang.String bindLog;
descriptor: Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
protected java.sql.PreparedStatement pstmt;
descriptor: Ljava/sql/PreparedStatement;
flags: (0x0004) ACC_PROTECTED
protected long startNano;
descriptor: J
flags: (0x0004) ACC_PROTECTED
void <init>(io.ebeaninternal.api.SpiEbeanServer, io.ebeaninternal.api.SpiSqlBinding, io.ebean.Transaction);
descriptor: (Lio/ebeaninternal/api/SpiEbeanServer;Lio/ebeaninternal/api/SpiSqlBinding;Lio/ebean/Transaction;)V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
ldc ""
putfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.bindLog:Ljava/lang/String;
2: aload 0
aload 1
putfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.server:Lio/ebeaninternal/api/SpiEbeanServer;
3: aload 0
aload 2
putfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.query:Lio/ebeaninternal/api/SpiSqlBinding;
4: aload 0
aload 3
checkcast io.ebeaninternal.api.SpiTransaction
putfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.transaction:Lio/ebeaninternal/api/SpiTransaction;
5: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/ebeaninternal/server/core/AbstractSqlQueryRequest;
0 6 1 server Lio/ebeaninternal/api/SpiEbeanServer;
0 6 2 query Lio/ebeaninternal/api/SpiSqlBinding;
0 6 3 t Lio/ebean/Transaction;
MethodParameters:
Name Flags
server
query
t
public void initTransIfRequired();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.transaction:Lio/ebeaninternal/api/SpiTransaction;
ifnonnull 5
1: aload 0
aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.server:Lio/ebeaninternal/api/SpiEbeanServer;
invokeinterface io.ebeaninternal.api.SpiEbeanServer.currentServerTransaction:()Lio/ebeaninternal/api/SpiTransaction;
putfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.transaction:Lio/ebeaninternal/api/SpiTransaction;
2: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.transaction:Lio/ebeaninternal/api/SpiTransaction;
ifnull 3
aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.transaction:Lio/ebeaninternal/api/SpiTransaction;
invokeinterface io.ebeaninternal.api.SpiTransaction.isActive:()Z
ifne 5
3: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.server:Lio/ebeaninternal/api/SpiEbeanServer;
aconst_null
invokeinterface io.ebeaninternal.api.SpiEbeanServer.createReadOnlyTransaction:(Ljava/lang/Object;)Lio/ebeaninternal/api/SpiTransaction;
putfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.transaction:Lio/ebeaninternal/api/SpiTransaction;
4: aload 0
iconst_1
putfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.createdTransaction:Z
5: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/ebeaninternal/server/core/AbstractSqlQueryRequest;
public void endTransIfRequired();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.createdTransaction:Z
ifeq 2
1: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.transaction:Lio/ebeaninternal/api/SpiTransaction;
invokeinterface io.ebeaninternal.api.SpiTransaction.commit:()V
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/ebeaninternal/server/core/AbstractSqlQueryRequest;
protected void flushJdbcBatchOnQuery();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.transaction:Lio/ebeaninternal/api/SpiTransaction;
invokeinterface io.ebeaninternal.api.SpiTransaction.isFlushOnQuery:()Z
ifeq 2
1: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.transaction:Lio/ebeaninternal/api/SpiTransaction;
invokeinterface io.ebeaninternal.api.SpiTransaction.flush:()V
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/ebeaninternal/server/core/AbstractSqlQueryRequest;
public boolean isLogSql();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.transaction:Lio/ebeaninternal/api/SpiTransaction;
invokeinterface io.ebeaninternal.api.SpiTransaction.isLogSql:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/core/AbstractSqlQueryRequest;
abstract void setResultSet(java.sql.ResultSet, java.lang.Object);
descriptor: (Ljava/sql/ResultSet;Ljava/lang/Object;)V
flags: (0x0400) ACC_ABSTRACT
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
resultSet
queryPlanKey
public java.lang.String getBindLog();
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.core.AbstractSqlQueryRequest.bindLog:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/core/AbstractSqlQueryRequest;
public boolean next();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.resultSet:Ljava/sql/ResultSet;
invokeinterface java.sql.ResultSet.next:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/core/AbstractSqlQueryRequest;
Exceptions:
throws java.sql.SQLException
protected abstract void requestComplete();
descriptor: ()V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual io.ebeaninternal.server.core.AbstractSqlQueryRequest.requestComplete:()V
1: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.resultSet:Ljava/sql/ResultSet;
invokestatic io.ebean.util.JdbcClose.close:(Ljava/sql/ResultSet;)V
2: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.pstmt:Ljava/sql/PreparedStatement;
invokestatic io.ebean.util.JdbcClose.close:(Ljava/sql/Statement;)V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/ebeaninternal/server/core/AbstractSqlQueryRequest;
private void prepareSql();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.query:Lio/ebeaninternal/api/SpiSqlBinding;
invokeinterface io.ebeaninternal.api.SpiSqlBinding.getQuery:()Ljava/lang/String;
astore 1
start local 1 1: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.query:Lio/ebeaninternal/api/SpiSqlBinding;
invokeinterface io.ebeaninternal.api.SpiSqlBinding.getBindParams:()Lio/ebeaninternal/api/BindParams;
astore 2
start local 2 2: aload 2
invokevirtual io.ebeaninternal.api.BindParams.isEmpty:()Z
ifne 4
3: aload 2
aload 1
invokestatic io.ebeaninternal.server.util.BindParamsParser.parse:(Lio/ebeaninternal/api/BindParams;Ljava/lang/String;)Ljava/lang/String;
astore 1
4: StackMap locals: java.lang.String io.ebeaninternal.api.BindParams
StackMap stack:
aload 0
aload 0
aload 1
invokevirtual io.ebeaninternal.server.core.AbstractSqlQueryRequest.limitOffset:(Ljava/lang/String;)Ljava/lang/String;
putfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.sql:Ljava/lang/String;
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/ebeaninternal/server/core/AbstractSqlQueryRequest;
1 6 1 sql Ljava/lang/String;
2 6 2 bindParams Lio/ebeaninternal/api/BindParams;
private java.lang.String limitOffset(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.query:Lio/ebeaninternal/api/SpiSqlBinding;
invokeinterface io.ebeaninternal.api.SpiSqlBinding.getFirstRow:()I
istore 2
start local 2 1: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.query:Lio/ebeaninternal/api/SpiSqlBinding;
invokeinterface io.ebeaninternal.api.SpiSqlBinding.getMaxRows:()I
istore 3
start local 3 2: iload 2
ifgt 3
iload 3
ifle 4
3: StackMap locals: int int
StackMap stack:
aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.server:Lio/ebeaninternal/api/SpiEbeanServer;
invokeinterface io.ebeaninternal.api.SpiEbeanServer.getDatabasePlatform:()Lio/ebean/config/dbplatform/DatabasePlatform;
invokevirtual io.ebean.config.dbplatform.DatabasePlatform.getBasicSqlLimiter:()Lio/ebean/config/dbplatform/BasicSqlLimiter;
aload 1
iload 2
iload 3
invokeinterface io.ebean.config.dbplatform.BasicSqlLimiter.limit:(Ljava/lang/String;II)Ljava/lang/String;
areturn
4: StackMap locals:
StackMap stack:
aload 1
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/ebeaninternal/server/core/AbstractSqlQueryRequest;
0 5 1 sql Ljava/lang/String;
1 5 2 firstRow I
2 5 3 maxRows I
MethodParameters:
Name Flags
sql
public void executeSql(io.ebeaninternal.server.persist.Binder, io.ebeaninternal.api.SpiQuery$Type);
descriptor: (Lio/ebeaninternal/server/persist/Binder;Lio/ebeaninternal/api/SpiQuery$Type;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokestatic java.lang.System.nanoTime:()J
putfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.startNano:J
1: aload 0
aload 1
invokevirtual io.ebeaninternal.server.core.AbstractSqlQueryRequest.executeAsSql:(Lio/ebeaninternal/server/persist/Binder;)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/ebeaninternal/server/core/AbstractSqlQueryRequest;
0 3 1 binder Lio/ebeaninternal/server/persist/Binder;
0 3 2 type Lio/ebeaninternal/api/SpiQuery$Type;
Exceptions:
throws java.sql.SQLException
Signature: (Lio/ebeaninternal/server/persist/Binder;Lio/ebeaninternal/api/SpiQuery$Type;)V
MethodParameters:
Name Flags
binder
type
protected void executeAsSql(io.ebeaninternal.server.persist.Binder);
descriptor: (Lio/ebeaninternal/server/persist/Binder;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual io.ebeaninternal.server.core.AbstractSqlQueryRequest.prepareSql:()V
1: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.transaction:Lio/ebeaninternal/api/SpiTransaction;
invokeinterface io.ebeaninternal.api.SpiTransaction.getInternalConnection:()Ljava/sql/Connection;
astore 2
start local 2 2: aload 0
aload 2
aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.sql:Ljava/lang/String;
invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
putfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.pstmt:Ljava/sql/PreparedStatement;
3: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.query:Lio/ebeaninternal/api/SpiSqlBinding;
invokeinterface io.ebeaninternal.api.SpiSqlBinding.getTimeout:()I
ifle 5
4: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.pstmt:Ljava/sql/PreparedStatement;
aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.query:Lio/ebeaninternal/api/SpiSqlBinding;
invokeinterface io.ebeaninternal.api.SpiSqlBinding.getTimeout:()I
invokeinterface java.sql.PreparedStatement.setQueryTimeout:(I)V
5: StackMap locals: java.sql.Connection
StackMap stack:
aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.query:Lio/ebeaninternal/api/SpiSqlBinding;
invokeinterface io.ebeaninternal.api.SpiSqlBinding.getBufferFetchSizeHint:()I
ifle 7
6: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.pstmt:Ljava/sql/PreparedStatement;
aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.query:Lio/ebeaninternal/api/SpiSqlBinding;
invokeinterface io.ebeaninternal.api.SpiSqlBinding.getBufferFetchSizeHint:()I
invokeinterface java.sql.PreparedStatement.setFetchSize:(I)V
7: StackMap locals:
StackMap stack:
aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.query:Lio/ebeaninternal/api/SpiSqlBinding;
invokeinterface io.ebeaninternal.api.SpiSqlBinding.getBindParams:()Lio/ebeaninternal/api/BindParams;
astore 3
start local 3 8: aload 3
invokevirtual io.ebeaninternal.api.BindParams.isEmpty:()Z
ifne 10
9: aload 0
aload 1
aload 3
aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.pstmt:Ljava/sql/PreparedStatement;
aload 2
invokevirtual io.ebeaninternal.server.persist.Binder.bind:(Lio/ebeaninternal/api/BindParams;Ljava/sql/PreparedStatement;Ljava/sql/Connection;)Ljava/lang/String;
putfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.bindLog:Ljava/lang/String;
10: StackMap locals: io.ebeaninternal.api.BindParams
StackMap stack:
aload 0
invokevirtual io.ebeaninternal.server.core.AbstractSqlQueryRequest.isLogSql:()Z
ifeq 12
11: aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.transaction:Lio/ebeaninternal/api/SpiTransaction;
aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.sql:Ljava/lang/String;
invokestatic io.ebeaninternal.server.persist.TrimLogSql.trim:(Ljava/lang/String;)Ljava/lang/String;
ldc "; --bind("
iconst_2
anewarray java.lang.String
dup
iconst_0
aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.bindLog:Ljava/lang/String;
aastore
dup
iconst_1
ldc ")"
aastore
invokestatic io.ebeaninternal.server.lib.Str.add:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
invokeinterface io.ebeaninternal.api.SpiTransaction.logSql:(Ljava/lang/String;)V
12: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield io.ebeaninternal.server.core.AbstractSqlQueryRequest.pstmt:Ljava/sql/PreparedStatement;
invokeinterface java.sql.PreparedStatement.executeQuery:()Ljava/sql/ResultSet;
aconst_null
invokevirtual io.ebeaninternal.server.core.AbstractSqlQueryRequest.setResultSet:(Ljava/sql/ResultSet;Ljava/lang/Object;)V
13: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lio/ebeaninternal/server/core/AbstractSqlQueryRequest;
0 14 1 binder Lio/ebeaninternal/server/persist/Binder;
2 14 2 conn Ljava/sql/Connection;
8 14 3 bindParams Lio/ebeaninternal/api/BindParams;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
binder
public java.lang.String getSql();
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.core.AbstractSqlQueryRequest.sql:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/core/AbstractSqlQueryRequest;
}
SourceFile: "AbstractSqlQueryRequest.java"
InnerClasses:
public final Type = io.ebeaninternal.api.SpiQuery$Type of io.ebeaninternal.api.SpiQuery