class io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener implements javax.transaction.Synchronization
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener
super_class: java.lang.Object
{
private final io.ebeaninternal.server.transaction.TransactionManager transactionManager;
descriptor: Lio/ebeaninternal/server/transaction/TransactionManager;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebeaninternal.api.SpiTransaction transaction;
descriptor: Lio/ebeaninternal/api/SpiTransaction;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private void <init>(io.ebeaninternal.server.transaction.TransactionManager, io.ebeaninternal.api.SpiTransaction);
descriptor: (Lio/ebeaninternal/server/transaction/TransactionManager;Lio/ebeaninternal/api/SpiTransaction;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 // io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener this
start local 1 // io.ebeaninternal.server.transaction.TransactionManager transactionManager
start local 2 // io.ebeaninternal.api.SpiTransaction t
0: .line 186
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 187
aload 0 /* this */
aload 1 /* transactionManager */
putfield io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener.transactionManager:Lio/ebeaninternal/server/transaction/TransactionManager;
2: .line 188
aload 0 /* this */
aload 2 /* t */
putfield io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener.transaction:Lio/ebeaninternal/api/SpiTransaction;
3: .line 189
return
end local 2 // io.ebeaninternal.api.SpiTransaction t
end local 1 // io.ebeaninternal.server.transaction.TransactionManager transactionManager
end local 0 // io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/ebeaninternal/server/transaction/JtaTransactionManager$JtaTxnListener;
0 4 1 transactionManager Lio/ebeaninternal/server/transaction/TransactionManager;
0 4 2 t Lio/ebeaninternal/api/SpiTransaction;
MethodParameters:
Name Flags
transactionManager
t
public void beforeCompletion();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener this
0: .line 193
aload 0 /* this */
getfield io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener.transaction:Lio/ebeaninternal/api/SpiTransaction;
invokeinterface io.ebeaninternal.api.SpiTransaction.preCommit:()V
1: .line 194
return
end local 0 // io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/ebeaninternal/server/transaction/JtaTransactionManager$JtaTxnListener;
public void afterCompletion(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 // io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener this
start local 1 // int status
0: .line 198
iload 1 /* status */
tableswitch { // 3 - 4
3: 1
4: 6
default: 11
}
1: .line 200
StackMap locals:
StackMap stack:
getstatic io.ebeaninternal.server.transaction.JtaTransactionManager.logger:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 3
2: .line 201
getstatic io.ebeaninternal.server.transaction.JtaTransactionManager.logger:Lorg/slf4j/Logger;
new java.lang.StringBuilder
dup
ldc "Jta Txn ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* this */
getfield io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener.transaction:Lio/ebeaninternal/api/SpiTransaction;
invokeinterface io.ebeaninternal.api.SpiTransaction.getId:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "] committed"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;)V
3: .line 203
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener.transaction:Lio/ebeaninternal/api/SpiTransaction;
invokeinterface io.ebeaninternal.api.SpiTransaction.postCommit:()V
4: .line 205
aload 0 /* this */
getfield io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener.transactionManager:Lio/ebeaninternal/server/transaction/TransactionManager;
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.scope:()Lio/ebeaninternal/server/transaction/TransactionScopeManager;
invokevirtual io.ebeaninternal.server.transaction.TransactionScopeManager.clearExternal:()V
5: .line 206
goto 13
6: .line 209
StackMap locals:
StackMap stack:
getstatic io.ebeaninternal.server.transaction.JtaTransactionManager.logger:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 8
7: .line 210
getstatic io.ebeaninternal.server.transaction.JtaTransactionManager.logger:Lorg/slf4j/Logger;
new java.lang.StringBuilder
dup
ldc "Jta Txn ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* this */
getfield io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener.transaction:Lio/ebeaninternal/api/SpiTransaction;
invokeinterface io.ebeaninternal.api.SpiTransaction.getId:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "] rollback"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;)V
8: .line 212
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener.transaction:Lio/ebeaninternal/api/SpiTransaction;
aconst_null
invokeinterface io.ebeaninternal.api.SpiTransaction.postRollback:(Ljava/lang/Throwable;)V
9: .line 214
aload 0 /* this */
getfield io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener.transactionManager:Lio/ebeaninternal/server/transaction/TransactionManager;
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.scope:()Lio/ebeaninternal/server/transaction/TransactionScopeManager;
invokevirtual io.ebeaninternal.server.transaction.TransactionScopeManager.clearExternal:()V
10: .line 215
goto 13
11: .line 218
StackMap locals:
StackMap stack:
getstatic io.ebeaninternal.server.transaction.JtaTransactionManager.logger:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 13
12: .line 219
getstatic io.ebeaninternal.server.transaction.JtaTransactionManager.logger:Lorg/slf4j/Logger;
new java.lang.StringBuilder
dup
ldc "Jta Txn ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* this */
getfield io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener.transaction:Lio/ebeaninternal/api/SpiTransaction;
invokeinterface io.ebeaninternal.api.SpiTransaction.getId:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "] status:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 1 /* status */
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;)V
13: .line 224
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener.transaction:Lio/ebeaninternal/api/SpiTransaction;
invokeinterface io.ebeaninternal.api.SpiTransaction.getInternalConnection:()Ljava/sql/Connection;
invokestatic io.ebean.util.JdbcClose.close:(Ljava/sql/Connection;)V
14: .line 225
return
end local 1 // int status
end local 0 // io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener this
LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lio/ebeaninternal/server/transaction/JtaTransactionManager$JtaTxnListener;
0 15 1 status I
MethodParameters:
Name Flags
status
}
SourceFile: "JtaTransactionManager.java"
NestHost: io.ebeaninternal.server.transaction.JtaTransactionManager
InnerClasses:
private JtaTxnListener = io.ebeaninternal.server.transaction.JtaTransactionManager$JtaTxnListener of io.ebeaninternal.server.transaction.JtaTransactionManager