class io.ebeaninternal.server.persist.ExeOrmUpdate
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: io.ebeaninternal.server.persist.ExeOrmUpdate
super_class: java.lang.Object
{
private final io.ebeaninternal.server.persist.Binder binder;
descriptor: Lio/ebeaninternal/server/persist/Binder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebeaninternal.server.persist.PstmtFactory pstmtFactory;
descriptor: Lio/ebeaninternal/server/persist/PstmtFactory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
void <init>(io.ebeaninternal.server.persist.Binder);
descriptor: (Lio/ebeaninternal/server/persist/Binder;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new io.ebeaninternal.server.persist.PstmtFactory
dup
invokespecial io.ebeaninternal.server.persist.PstmtFactory.<init>:()V
putfield io.ebeaninternal.server.persist.ExeOrmUpdate.pstmtFactory:Lio/ebeaninternal/server/persist/PstmtFactory;
2: aload 0
aload 1
putfield io.ebeaninternal.server.persist.ExeOrmUpdate.binder:Lio/ebeaninternal/server/persist/Binder;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/ebeaninternal/server/persist/ExeOrmUpdate;
0 4 1 binder Lio/ebeaninternal/server/persist/Binder;
MethodParameters:
Name Flags
binder
public int execute(io.ebeaninternal.server.core.PersistRequestOrmUpdate);
descriptor: (Lio/ebeaninternal/server/core/PersistRequestOrmUpdate;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual io.ebeaninternal.server.core.PersistRequestOrmUpdate.isBatchThisRequest:()Z
istore 2
start local 2 1: aconst_null
astore 3
start local 3 2: aload 0
aload 1
iload 2
invokevirtual io.ebeaninternal.server.persist.ExeOrmUpdate.bindStmt:(Lio/ebeaninternal/server/core/PersistRequestOrmUpdate;Z)Ljava/sql/PreparedStatement;
astore 3
3: iload 2
ifeq 8
4: aload 3
invokeinterface java.sql.PreparedStatement.addBatch:()V
5: iload 2
ifne 7
6: aload 3
invokestatic io.ebean.util.JdbcClose.close:(Ljava/sql/Statement;)V
7: StackMap locals: int java.sql.PreparedStatement
StackMap stack:
iconst_m1
ireturn
8: StackMap locals:
StackMap stack:
aload 1
invokevirtual io.ebeaninternal.server.core.PersistRequestOrmUpdate.getOrmUpdate:()Lio/ebeaninternal/api/SpiUpdate;
astore 4
start local 4 9: aload 4
invokeinterface io.ebeaninternal.api.SpiUpdate.getTimeout:()I
ifle 11
10: aload 3
aload 4
invokeinterface io.ebeaninternal.api.SpiUpdate.getTimeout:()I
invokeinterface java.sql.PreparedStatement.setQueryTimeout:(I)V
11: StackMap locals: io.ebeaninternal.api.SpiUpdate
StackMap stack:
aload 3
invokeinterface java.sql.PreparedStatement.executeUpdate:()I
istore 5
start local 5 12: aload 1
iload 5
invokevirtual io.ebeaninternal.server.core.PersistRequestOrmUpdate.checkRowCount:(I)V
13: aload 1
invokevirtual io.ebeaninternal.server.core.PersistRequestOrmUpdate.postExecute:()V
14: iload 5
istore 7
15: iload 2
ifne 17
16: aload 3
invokestatic io.ebean.util.JdbcClose.close:(Ljava/sql/Statement;)V
17: StackMap locals: io.ebeaninternal.server.persist.ExeOrmUpdate io.ebeaninternal.server.core.PersistRequestOrmUpdate int java.sql.PreparedStatement io.ebeaninternal.api.SpiUpdate int top int
StackMap stack:
iload 7
ireturn
end local 5 end local 4 18: StackMap locals: io.ebeaninternal.server.persist.ExeOrmUpdate io.ebeaninternal.server.core.PersistRequestOrmUpdate int java.sql.PreparedStatement
StackMap stack: java.sql.SQLException
astore 4
start local 4 19: new javax.persistence.PersistenceException
dup
new java.lang.StringBuilder
dup
ldc "Error executing: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual io.ebeaninternal.server.core.PersistRequestOrmUpdate.getOrmUpdate:()Lio/ebeaninternal/api/SpiUpdate;
invokeinterface io.ebeaninternal.api.SpiUpdate.getGeneratedSql:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 4
invokespecial javax.persistence.PersistenceException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 4 20: StackMap locals:
StackMap stack: java.lang.Throwable
astore 6
21: iload 2
ifne 23
22: aload 3
invokestatic io.ebean.util.JdbcClose.close:(Ljava/sql/Statement;)V
23: StackMap locals: io.ebeaninternal.server.persist.ExeOrmUpdate io.ebeaninternal.server.core.PersistRequestOrmUpdate int java.sql.PreparedStatement top top java.lang.Throwable
StackMap stack:
aload 6
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lio/ebeaninternal/server/persist/ExeOrmUpdate;
0 24 1 request Lio/ebeaninternal/server/core/PersistRequestOrmUpdate;
1 24 2 batchThisRequest Z
2 24 3 pstmt Ljava/sql/PreparedStatement;
9 18 4 ormUpdate Lio/ebeaninternal/api/SpiUpdate<*>;
12 18 5 rowCount I
19 20 4 ex Ljava/sql/SQLException;
Exception table:
from to target type
2 5 18 Class java.sql.SQLException
8 15 18 Class java.sql.SQLException
2 5 20 any
8 15 20 any
18 20 20 any
MethodParameters:
Name Flags
request
private java.lang.String translate(io.ebeaninternal.server.core.PersistRequestOrmUpdate, java.lang.String);
descriptor: (Lio/ebeaninternal/server/core/PersistRequestOrmUpdate;Ljava/lang/String;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual io.ebeaninternal.server.core.PersistRequestOrmUpdate.getBeanDescriptor:()Lio/ebeaninternal/server/deploy/BeanDescriptor;
astore 3
start local 3 1: aload 3
aload 2
invokevirtual io.ebeaninternal.server.deploy.BeanDescriptor.convertOrmUpdateToSql:(Ljava/lang/String;)Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/ebeaninternal/server/persist/ExeOrmUpdate;
0 2 1 request Lio/ebeaninternal/server/core/PersistRequestOrmUpdate;
0 2 2 sql Ljava/lang/String;
1 2 3 descriptor Lio/ebeaninternal/server/deploy/BeanDescriptor<*>;
MethodParameters:
Name Flags
request
sql
private java.sql.PreparedStatement bindStmt(io.ebeaninternal.server.core.PersistRequestOrmUpdate, boolean);
descriptor: (Lio/ebeaninternal/server/core/PersistRequestOrmUpdate;Z)Ljava/sql/PreparedStatement;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=9, args_size=3
start local 0 start local 1 start local 2 0: aload 1
iload 2
invokevirtual io.ebeaninternal.server.core.PersistRequestOrmUpdate.startBind:(Z)V
1: aload 1
invokevirtual io.ebeaninternal.server.core.PersistRequestOrmUpdate.getOrmUpdate:()Lio/ebeaninternal/api/SpiUpdate;
astore 3
start local 3 2: aload 1
invokevirtual io.ebeaninternal.server.core.PersistRequestOrmUpdate.getTransaction:()Lio/ebeaninternal/api/SpiTransaction;
astore 4
start local 4 3: aload 3
invokeinterface io.ebeaninternal.api.SpiUpdate.getUpdateStatement:()Ljava/lang/String;
astore 5
start local 5 4: aload 0
aload 1
aload 5
invokevirtual io.ebeaninternal.server.persist.ExeOrmUpdate.translate:(Lio/ebeaninternal/server/core/PersistRequestOrmUpdate;Ljava/lang/String;)Ljava/lang/String;
astore 5
5: aload 3
invokeinterface io.ebeaninternal.api.SpiUpdate.getBindParams:()Lio/ebeaninternal/api/BindParams;
astore 6
start local 6 6: aload 6
aload 5
invokestatic io.ebeaninternal.server.util.BindParamsParser.parse:(Lio/ebeaninternal/api/BindParams;Ljava/lang/String;)Ljava/lang/String;
astore 5
7: aload 3
aload 5
invokeinterface io.ebeaninternal.api.SpiUpdate.setGeneratedSql:(Ljava/lang/String;)V
8: iload 2
ifeq 11
9: aload 0
getfield io.ebeaninternal.server.persist.ExeOrmUpdate.pstmtFactory:Lio/ebeaninternal/server/persist/PstmtFactory;
aload 4
aload 5
aload 1
invokevirtual io.ebeaninternal.server.persist.PstmtFactory.getPstmtBatch:(Lio/ebeaninternal/api/SpiTransaction;Ljava/lang/String;Lio/ebeaninternal/server/persist/BatchPostExecute;)Ljava/sql/PreparedStatement;
astore 7
start local 7 10: goto 14
end local 7 11: StackMap locals: io.ebeaninternal.server.persist.ExeOrmUpdate io.ebeaninternal.server.core.PersistRequestOrmUpdate int io.ebeaninternal.api.SpiUpdate io.ebeaninternal.api.SpiTransaction java.lang.String io.ebeaninternal.api.BindParams
StackMap stack:
aload 4
invokeinterface io.ebeaninternal.api.SpiTransaction.isLogSql:()Z
ifeq 13
12: aload 4
aload 5
invokeinterface io.ebeaninternal.api.SpiTransaction.logSql:(Ljava/lang/String;)V
13: StackMap locals:
StackMap stack:
aload 0
getfield io.ebeaninternal.server.persist.ExeOrmUpdate.pstmtFactory:Lio/ebeaninternal/server/persist/PstmtFactory;
aload 4
aload 5
iconst_0
invokevirtual io.ebeaninternal.server.persist.PstmtFactory.getPstmt:(Lio/ebeaninternal/api/SpiTransaction;Ljava/lang/String;Z)Ljava/sql/PreparedStatement;
astore 7
start local 7 14: StackMap locals: java.sql.PreparedStatement
StackMap stack:
aconst_null
astore 8
start local 8 15: aload 6
invokevirtual io.ebeaninternal.api.BindParams.isEmpty:()Z
ifne 17
16: aload 0
getfield io.ebeaninternal.server.persist.ExeOrmUpdate.binder:Lio/ebeaninternal/server/persist/Binder;
aload 6
aload 7
aload 4
invokeinterface io.ebeaninternal.api.SpiTransaction.getInternalConnection:()Ljava/sql/Connection;
invokevirtual io.ebeaninternal.server.persist.Binder.bind:(Lio/ebeaninternal/api/BindParams;Ljava/sql/PreparedStatement;Ljava/sql/Connection;)Ljava/lang/String;
astore 8
17: StackMap locals: java.lang.String
StackMap stack:
aload 1
aload 8
invokevirtual io.ebeaninternal.server.core.PersistRequestOrmUpdate.setBindLog:(Ljava/lang/String;)V
18: aload 7
areturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lio/ebeaninternal/server/persist/ExeOrmUpdate;
0 19 1 request Lio/ebeaninternal/server/core/PersistRequestOrmUpdate;
0 19 2 batchThisRequest Z
2 19 3 ormUpdate Lio/ebeaninternal/api/SpiUpdate<*>;
3 19 4 t Lio/ebeaninternal/api/SpiTransaction;
4 19 5 sql Ljava/lang/String;
6 19 6 bindParams Lio/ebeaninternal/api/BindParams;
10 11 7 pstmt Ljava/sql/PreparedStatement;
14 19 7 pstmt Ljava/sql/PreparedStatement;
15 19 8 bindLog Ljava/lang/String;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
request
batchThisRequest
}
SourceFile: "ExeOrmUpdate.java"