class io.ebeaninternal.server.query.CQueryRowCount implements io.ebeaninternal.api.SpiProfileTransactionEvent
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: io.ebeaninternal.server.query.CQueryRowCount
super_class: java.lang.Object
{
private final io.ebeaninternal.server.query.CQueryPlan queryPlan;
descriptor: Lio/ebeaninternal/server/query/CQueryPlan;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebeaninternal.server.core.OrmQueryRequest<?> request;
descriptor: Lio/ebeaninternal/server/core/OrmQueryRequest;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lio/ebeaninternal/server/core/OrmQueryRequest<*>;
private final io.ebeaninternal.server.deploy.BeanDescriptor<?> desc;
descriptor: Lio/ebeaninternal/server/deploy/BeanDescriptor;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lio/ebeaninternal/server/deploy/BeanDescriptor<*>;
private final io.ebeaninternal.api.SpiQuery<?> query;
descriptor: Lio/ebeaninternal/api/SpiQuery;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lio/ebeaninternal/api/SpiQuery<*>;
private final io.ebeaninternal.server.query.CQueryPredicates predicates;
descriptor: Lio/ebeaninternal/server/query/CQueryPredicates;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String sql;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.sql.ResultSet rset;
descriptor: Ljava/sql/ResultSet;
flags: (0x0002) ACC_PRIVATE
private java.sql.PreparedStatement pstmt;
descriptor: Ljava/sql/PreparedStatement;
flags: (0x0002) ACC_PRIVATE
private java.lang.String bindLog;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private long executionTimeMicros;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private int rowCount;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private long profileOffset;
descriptor: J
flags: (0x0002) ACC_PRIVATE
void <init>(io.ebeaninternal.server.query.CQueryPlan, io.ebeaninternal.server.core.OrmQueryRequest<?>, io.ebeaninternal.server.query.CQueryPredicates);
descriptor: (Lio/ebeaninternal/server/query/CQueryPlan;Lio/ebeaninternal/server/core/OrmQueryRequest;Lio/ebeaninternal/server/query/CQueryPredicates;)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
aload 1
putfield io.ebeaninternal.server.query.CQueryRowCount.queryPlan:Lio/ebeaninternal/server/query/CQueryPlan;
2: aload 0
aload 2
putfield io.ebeaninternal.server.query.CQueryRowCount.request:Lio/ebeaninternal/server/core/OrmQueryRequest;
3: aload 0
aload 2
invokevirtual io.ebeaninternal.server.core.OrmQueryRequest.getQuery:()Lio/ebeaninternal/api/SpiQuery;
putfield io.ebeaninternal.server.query.CQueryRowCount.query:Lio/ebeaninternal/api/SpiQuery;
4: aload 0
aload 1
invokevirtual io.ebeaninternal.server.query.CQueryPlan.getSql:()Ljava/lang/String;
putfield io.ebeaninternal.server.query.CQueryRowCount.sql:Ljava/lang/String;
5: aload 0
aload 2
invokevirtual io.ebeaninternal.server.core.OrmQueryRequest.getBeanDescriptor:()Lio/ebeaninternal/server/deploy/BeanDescriptor;
putfield io.ebeaninternal.server.query.CQueryRowCount.desc:Lio/ebeaninternal/server/deploy/BeanDescriptor;
6: aload 0
aload 3
putfield io.ebeaninternal.server.query.CQueryRowCount.predicates:Lio/ebeaninternal/server/query/CQueryPredicates;
7: aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.query:Lio/ebeaninternal/api/SpiQuery;
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.sql:Ljava/lang/String;
invokeinterface io.ebeaninternal.api.SpiQuery.setGeneratedSql:(Ljava/lang/String;)V
8: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/ebeaninternal/server/query/CQueryRowCount;
0 9 1 queryPlan Lio/ebeaninternal/server/query/CQueryPlan;
0 9 2 request Lio/ebeaninternal/server/core/OrmQueryRequest<*>;
0 9 3 predicates Lio/ebeaninternal/server/query/CQueryPredicates;
Signature: (Lio/ebeaninternal/server/query/CQueryPlan;Lio/ebeaninternal/server/core/OrmQueryRequest<*>;Lio/ebeaninternal/server/query/CQueryPredicates;)V
MethodParameters:
Name Flags
queryPlan
request
predicates
public java.lang.String getSummary();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
bipush 80
invokespecial java.lang.StringBuilder.<init>:(I)V
astore 1
start local 1 1: aload 1
ldc "FindCount exeMicros["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.executionTimeMicros:J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
2: ldc "] rows["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.rowCount:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
3: ldc "] type["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.desc:Lio/ebeaninternal/server/deploy/BeanDescriptor;
invokevirtual io.ebeaninternal.server.deploy.BeanDescriptor.getFullName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
4: ldc "] predicates["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.predicates:Lio/ebeaninternal/server/query/CQueryPredicates;
invokevirtual io.ebeaninternal.server.query.CQueryPredicates.getLogWhereSql:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: ldc "] bind["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.bindLog:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
6: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/ebeaninternal/server/query/CQueryRowCount;
1 7 1 sb Ljava/lang/StringBuilder;
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.query.CQueryRowCount.bindLog:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/query/CQueryRowCount;
public java.lang.String getGeneratedSql();
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.query.CQueryRowCount.sql:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/query/CQueryRowCount;
public int findCount();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=1
start local 0 0: invokestatic java.lang.System.nanoTime:()J
lstore 1
start local 1 1: aload 0
invokevirtual io.ebeaninternal.server.query.CQueryRowCount.getTransaction:()Lio/ebeaninternal/api/SpiTransaction;
astore 3
start local 3 2: aload 0
aload 3
invokeinterface io.ebeaninternal.api.SpiTransaction.profileOffset:()J
putfield io.ebeaninternal.server.query.CQueryRowCount.profileOffset:J
3: aload 3
invokeinterface io.ebeaninternal.api.SpiTransaction.getInternalConnection:()Ljava/sql/Connection;
astore 4
start local 4 4: aload 0
aload 4
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.sql:Ljava/lang/String;
invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
putfield io.ebeaninternal.server.query.CQueryRowCount.pstmt:Ljava/sql/PreparedStatement;
5: aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.query:Lio/ebeaninternal/api/SpiQuery;
invokeinterface io.ebeaninternal.api.SpiQuery.getTimeout:()I
ifle 7
6: aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.pstmt:Ljava/sql/PreparedStatement;
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.query:Lio/ebeaninternal/api/SpiQuery;
invokeinterface io.ebeaninternal.api.SpiQuery.getTimeout:()I
invokeinterface java.sql.PreparedStatement.setQueryTimeout:(I)V
7: StackMap locals: long io.ebeaninternal.api.SpiTransaction java.sql.Connection
StackMap stack:
aload 0
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.predicates:Lio/ebeaninternal/server/query/CQueryPredicates;
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.pstmt:Ljava/sql/PreparedStatement;
aload 4
invokevirtual io.ebeaninternal.server.query.CQueryPredicates.bind:(Ljava/sql/PreparedStatement;Ljava/sql/Connection;)Ljava/lang/String;
putfield io.ebeaninternal.server.query.CQueryRowCount.bindLog:Ljava/lang/String;
8: aload 0
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.pstmt:Ljava/sql/PreparedStatement;
invokeinterface java.sql.PreparedStatement.executeQuery:()Ljava/sql/ResultSet;
putfield io.ebeaninternal.server.query.CQueryRowCount.rset:Ljava/sql/ResultSet;
9: aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.rset:Ljava/sql/ResultSet;
invokeinterface java.sql.ResultSet.next:()Z
ifne 11
10: new javax.persistence.PersistenceException
dup
ldc "Expecting 1 row but got none?"
invokespecial javax.persistence.PersistenceException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.rset:Ljava/sql/ResultSet;
iconst_1
invokeinterface java.sql.ResultSet.getInt:(I)I
putfield io.ebeaninternal.server.query.CQueryRowCount.rowCount:I
12: aload 0
invokestatic java.lang.System.nanoTime:()J
lload 1
lsub
ldc 1000
ldiv
putfield io.ebeaninternal.server.query.CQueryRowCount.executionTimeMicros:J
13: aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.request:Lio/ebeaninternal/server/core/OrmQueryRequest;
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.executionTimeMicros:J
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.rowCount:I
invokevirtual io.ebeaninternal.server.core.OrmQueryRequest.slowQueryCheck:(JI)V
14: aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.queryPlan:Lio/ebeaninternal/server/query/CQueryPlan;
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.executionTimeMicros:J
invokevirtual io.ebeaninternal.server.query.CQueryPlan.executionTime:(J)Z
ifeq 16
15: aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.queryPlan:Lio/ebeaninternal/server/query/CQueryPlan;
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.predicates:Lio/ebeaninternal/server/query/CQueryPredicates;
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.executionTimeMicros:J
invokevirtual io.ebeaninternal.server.query.CQueryPlan.captureBindForQueryPlan:(Lio/ebeaninternal/server/query/CQueryPredicates;J)V
16: StackMap locals:
StackMap stack:
aload 3
aload 0
invokeinterface io.ebeaninternal.api.SpiTransaction.profileEvent:(Lio/ebeaninternal/api/SpiProfileTransactionEvent;)V
17: aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.rowCount:I
istore 6
18: aload 0
invokevirtual io.ebeaninternal.server.query.CQueryRowCount.close:()V
19: iload 6
ireturn
end local 4 end local 3 20: StackMap locals: io.ebeaninternal.server.query.CQueryRowCount long
StackMap stack: java.lang.Throwable
astore 5
21: aload 0
invokevirtual io.ebeaninternal.server.query.CQueryRowCount.close:()V
22: aload 5
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lio/ebeaninternal/server/query/CQueryRowCount;
1 23 1 startNano J
2 20 3 t Lio/ebeaninternal/api/SpiTransaction;
4 20 4 conn Ljava/sql/Connection;
Exception table:
from to target type
1 18 20 any
Exceptions:
throws java.sql.SQLException
private io.ebeaninternal.api.SpiTransaction getTransaction();
descriptor: ()Lio/ebeaninternal/api/SpiTransaction;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.request:Lio/ebeaninternal/server/core/OrmQueryRequest;
invokevirtual io.ebeaninternal.server.core.OrmQueryRequest.getTransaction:()Lio/ebeaninternal/api/SpiTransaction;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/query/CQueryRowCount;
private void close();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.rset:Ljava/sql/ResultSet;
invokestatic io.ebean.util.JdbcClose.close:(Ljava/sql/ResultSet;)V
1: aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.pstmt:Ljava/sql/PreparedStatement;
invokestatic io.ebean.util.JdbcClose.close:(Ljava/sql/Statement;)V
2: aload 0
aconst_null
putfield io.ebeaninternal.server.query.CQueryRowCount.rset:Ljava/sql/ResultSet;
3: aload 0
aconst_null
putfield io.ebeaninternal.server.query.CQueryRowCount.pstmt:Ljava/sql/PreparedStatement;
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/ebeaninternal/server/query/CQueryRowCount;
public void profile();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual io.ebeaninternal.server.query.CQueryRowCount.getTransaction:()Lio/ebeaninternal/api/SpiTransaction;
1: invokeinterface io.ebeaninternal.api.SpiTransaction.profileStream:()Lio/ebeaninternal/server/transaction/ProfileStream;
2: aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.query:Lio/ebeaninternal/api/SpiQuery;
invokeinterface io.ebeaninternal.api.SpiQuery.profileEventId:()Ljava/lang/String;
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.profileOffset:J
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.desc:Lio/ebeaninternal/server/deploy/BeanDescriptor;
invokevirtual io.ebeaninternal.server.deploy.BeanDescriptor.getName:()Ljava/lang/String;
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.rowCount:I
aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.query:Lio/ebeaninternal/api/SpiQuery;
invokeinterface io.ebeaninternal.api.SpiQuery.getProfileId:()Ljava/lang/String;
invokeinterface io.ebeaninternal.server.transaction.ProfileStream.addQueryEvent:(Ljava/lang/String;JLjava/lang/String;ILjava/lang/String;)V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/ebeaninternal/server/query/CQueryRowCount;
java.util.Set<java.lang.String> getDependentTables();
descriptor: ()Ljava/util/Set;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.query.CQueryRowCount.queryPlan:Lio/ebeaninternal/server/query/CQueryPlan;
invokevirtual io.ebeaninternal.server.query.CQueryPlan.getDependentTables:()Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/query/CQueryRowCount;
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
}
SourceFile: "CQueryRowCount.java"