class io.ebeaninternal.server.transaction.JdbcTransaction implements io.ebeaninternal.api.SpiTransaction, io.ebeaninternal.api.TxnProfileEventCodes
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: io.ebeaninternal.server.transaction.JdbcTransaction
  super_class: java.lang.Object
{
  private static final org.slf4j.Logger logger;
    descriptor: Lorg/slf4j/Logger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.Object PLACEHOLDER;
    descriptor: Ljava/lang/Object;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.String illegalStateMessage;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "Transaction is Inactive"

  final io.ebeaninternal.server.transaction.TransactionManager manager;
    descriptor: Lio/ebeaninternal/server/transaction/TransactionManager;
    flags: (0x0010) ACC_FINAL

  private final java.lang.String id;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean logSql;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean logSummary;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.lang.String label;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private final boolean explicit;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.ebean.config.dbplatform.DatabasePlatform$OnQueryOnly onQueryOnly;
    descriptor: Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private boolean active;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean rollbackOnly;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean nestedUseSavepoint;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  java.sql.Connection connection;
    descriptor: Ljava/sql/Connection;
    flags: (0x0000) 

  private io.ebeaninternal.server.persist.BatchControl batchControl;
    descriptor: Lio/ebeaninternal/server/persist/BatchControl;
    flags: (0x0002) ACC_PRIVATE

  private io.ebeaninternal.api.TransactionEvent event;
    descriptor: Lio/ebeaninternal/api/TransactionEvent;
    flags: (0x0002) ACC_PRIVATE

  private io.ebean.bean.PersistenceContext persistenceContext;
    descriptor: Lio/ebean/bean/PersistenceContext;
    flags: (0x0002) ACC_PRIVATE

  private boolean persistCascade;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean queryOnly;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean localReadOnly;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Boolean updateAllLoadedProperties;
    descriptor: Ljava/lang/Boolean;
    flags: (0x0002) ACC_PRIVATE

  private boolean oldBatchMode;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean batchMode;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean batchOnCascadeMode;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private int batchSize;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private boolean batchFlushOnQuery;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Boolean batchGetGeneratedKeys;
    descriptor: Ljava/lang/Boolean;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Boolean batchFlushOnMixed;
    descriptor: Ljava/lang/Boolean;
    flags: (0x0002) ACC_PRIVATE

  private final java.lang.String logPrefix;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.lang.Object tenantId;
    descriptor: Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE

  private int depth;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private boolean autoCommit;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private java.util.IdentityHashMap<java.lang.Object, java.lang.Object> persistingBeans;
    descriptor: Ljava/util/IdentityHashMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/IdentityHashMap<Ljava/lang/Object;Ljava/lang/Object;>;

  private java.util.HashSet<java.lang.Integer> deletingBeansHash;
    descriptor: Ljava/util/HashSet;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/HashSet<Ljava/lang/Integer;>;

  private java.util.HashMap<java.lang.String, java.lang.String> m2mIntersectionSave;
    descriptor: Ljava/util/HashMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/String;>;

  private java.util.Map<java.lang.String, java.lang.Object> userObjects;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;

  private java.util.List<io.ebean.TransactionCallback> callbackList;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Lio/ebean/TransactionCallback;>;

  private boolean batchOnCascadeSet;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private io.ebeaninternal.server.transaction.TChangeLogHolder changeLogHolder;
    descriptor: Lio/ebeaninternal/server/transaction/TChangeLogHolder;
    flags: (0x0002) ACC_PRIVATE

  private java.util.List<io.ebeaninternal.server.core.PersistDeferredRelationship> deferredList;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Lio/ebeaninternal/server/core/PersistDeferredRelationship;>;

  private io.ebean.annotation.DocStoreMode docStoreMode;
    descriptor: Lio/ebean/annotation/DocStoreMode;
    flags: (0x0002) ACC_PRIVATE

  private int docStoreBatchSize;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Boolean skipCache;
    descriptor: Ljava/lang/Boolean;
    flags: (0x0002) ACC_PRIVATE

  private final boolean skipCacheAfterWrite;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  io.ebeanservice.docstore.api.DocStoreTransaction docStoreTxn;
    descriptor: Lio/ebeanservice/docstore/api/DocStoreTransaction;
    flags: (0x0000) 

  private io.ebeaninternal.server.transaction.ProfileStream profileStream;
    descriptor: Lio/ebeaninternal/server/transaction/ProfileStream;
    flags: (0x0002) ACC_PRIVATE

  private io.ebean.ProfileLocation profileLocation;
    descriptor: Lio/ebean/ProfileLocation;
    flags: (0x0002) ACC_PRIVATE

  private final long startNanos;
    descriptor: J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 41
            ldc Lio/ebeaninternal/server/transaction/JdbcTransaction;
            invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
            putstatic io.ebeaninternal.server.transaction.JdbcTransaction.logger:Lorg/slf4j/Logger;
         1: .line 43
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic io.ebeaninternal.server.transaction.JdbcTransaction.PLACEHOLDER:Ljava/lang/Object;
         2: .line 45
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(java.lang.String, boolean, java.sql.Connection, io.ebeaninternal.server.transaction.TransactionManager);
    descriptor: (Ljava/lang/String;ZLjava/sql/Connection;Lio/ebeaninternal/server/transaction/TransactionManager;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=6, args_size=5
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.String id
        start local 2 // boolean explicit
        start local 3 // java.sql.Connection connection
        start local 4 // io.ebeaninternal.server.transaction.TransactionManager manager
         0: .line 193
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 108
            aload 0 /* this */
            iconst_1
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.persistCascade:Z
         2: .line 114
            aload 0 /* this */
            iconst_1
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.queryOnly:Z
         3: .line 126
            aload 0 /* this */
            iconst_m1
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchSize:I
         4: .line 128
            aload 0 /* this */
            iconst_1
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchFlushOnQuery:Z
         5: .line 195
            aload 0 /* this */
            iconst_1
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.active:Z
         6: .line 196
            aload 0 /* this */
            aload 1 /* id */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.id:Ljava/lang/String;
         7: .line 197
            aload 0 /* this */
            aload 1 /* id */
            invokestatic io.ebeaninternal.server.transaction.JdbcTransaction.deriveLogPrefix:(Ljava/lang/String;)Ljava/lang/String;
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.logPrefix:Ljava/lang/String;
         8: .line 198
            aload 0 /* this */
            iload 2 /* explicit */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.explicit:Z
         9: .line 199
            aload 0 /* this */
            aload 4 /* manager */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
        10: .line 200
            aload 0 /* this */
            aload 3 /* connection */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.connection:Ljava/sql/Connection;
        11: .line 201
            aload 0 /* this */
            new io.ebeaninternal.server.transaction.DefaultPersistenceContext
            dup
            invokespecial io.ebeaninternal.server.transaction.DefaultPersistenceContext.<init>:()V
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.persistenceContext:Lio/ebean/bean/PersistenceContext;
        12: .line 202
            aload 0 /* this */
            invokestatic java.lang.System.nanoTime:()J
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.startNanos:J
        13: .line 204
            aload 4 /* manager */
            ifnonnull 21
        14: .line 205
            aload 0 /* this */
            iconst_0
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.logSql:Z
        15: .line 206
            aload 0 /* this */
            iconst_0
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.logSummary:Z
        16: .line 207
            aload 0 /* this */
            iconst_1
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.skipCacheAfterWrite:Z
        17: .line 208
            aload 0 /* this */
            iconst_0
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchMode:Z
        18: .line 209
            aload 0 /* this */
            iconst_0
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchOnCascadeMode:Z
        19: .line 210
            aload 0 /* this */
            getstatic io.ebean.config.dbplatform.DatabasePlatform$OnQueryOnly.ROLLBACK:Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.onQueryOnly:Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
        20: .line 211
            goto 27
        21: .line 212
      StackMap locals: io.ebeaninternal.server.transaction.JdbcTransaction java.lang.String int java.sql.Connection io.ebeaninternal.server.transaction.TransactionManager
      StackMap stack:
            aload 0 /* this */
            aload 4 /* manager */
            invokevirtual io.ebeaninternal.server.transaction.TransactionManager.isLogSql:()Z
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.logSql:Z
        22: .line 213
            aload 0 /* this */
            aload 4 /* manager */
            invokevirtual io.ebeaninternal.server.transaction.TransactionManager.isLogSummary:()Z
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.logSummary:Z
        23: .line 214
            aload 0 /* this */
            aload 4 /* manager */
            invokevirtual io.ebeaninternal.server.transaction.TransactionManager.isSkipCacheAfterWrite:()Z
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.skipCacheAfterWrite:Z
        24: .line 215
            aload 0 /* this */
            aload 4 /* manager */
            invokevirtual io.ebeaninternal.server.transaction.TransactionManager.getPersistBatch:()Z
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchMode:Z
        25: .line 216
            aload 0 /* this */
            aload 4 /* manager */
            invokevirtual io.ebeaninternal.server.transaction.TransactionManager.getPersistBatchOnCascade:()Z
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchOnCascadeMode:Z
        26: .line 217
            aload 0 /* this */
            aload 4 /* manager */
            invokevirtual io.ebeaninternal.server.transaction.TransactionManager.getOnQueryOnly:()Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.onQueryOnly:Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
        27: .line 220
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* connection */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.checkAutoCommit:(Ljava/sql/Connection;)V
        28: .line 222
            goto 31
      StackMap locals:
      StackMap stack: java.lang.Exception
        29: astore 5 /* e */
        start local 5 // java.lang.Exception e
        30: .line 223
            new javax.persistence.PersistenceException
            dup
            aload 5 /* e */
            invokespecial javax.persistence.PersistenceException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 5 // java.lang.Exception e
        31: .line 225
      StackMap locals:
      StackMap stack:
            return
        end local 4 // io.ebeaninternal.server.transaction.TransactionManager manager
        end local 3 // java.sql.Connection connection
        end local 2 // boolean explicit
        end local 1 // java.lang.String id
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   32     0        this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0   32     1          id  Ljava/lang/String;
            0   32     2    explicit  Z
            0   32     3  connection  Ljava/sql/Connection;
            0   32     4     manager  Lio/ebeaninternal/server/transaction/TransactionManager;
           30   31     5           e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           5    28      29  Class java.lang.Exception
    MethodParameters:
            Name  Flags
      id          
      explicit    
      connection  
      manager     

  public void setLabel(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.String label
         0: .line 229
            aload 0 /* this */
            aload 1 /* label */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.label:Ljava/lang/String;
         1: .line 230
            return
        end local 1 // java.lang.String label
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    2     1  label  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      label  

  public java.lang.String getLabel();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 234
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.label:Ljava/lang/String;
            areturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public long getStartNanoTime();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 239
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.startNanos:J
            lreturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public long profileOffset();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 244
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.profileStream:Lio/ebeaninternal/server/transaction/ProfileStream;
            ifnonnull 1
            lconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.profileStream:Lio/ebeaninternal/server/transaction/ProfileStream;
            invokeinterface io.ebeaninternal.server.transaction.ProfileStream.offset:()J
      StackMap locals:
      StackMap stack: long
         2: lreturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void profileEvent(io.ebeaninternal.api.SpiProfileTransactionEvent);
    descriptor: (Lio/ebeaninternal/api/SpiProfileTransactionEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // io.ebeaninternal.api.SpiProfileTransactionEvent event
         0: .line 249
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.profileStream:Lio/ebeaninternal/server/transaction/ProfileStream;
            ifnull 2
         1: .line 250
            aload 1 /* event */
            invokeinterface io.ebeaninternal.api.SpiProfileTransactionEvent.profile:()V
         2: .line 252
      StackMap locals:
      StackMap stack:
            return
        end local 1 // io.ebeaninternal.api.SpiProfileTransactionEvent event
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    3     1  event  Lio/ebeaninternal/api/SpiProfileTransactionEvent;
    MethodParameters:
       Name  Flags
      event  

  public void setProfileStream(io.ebeaninternal.server.transaction.ProfileStream);
    descriptor: (Lio/ebeaninternal/server/transaction/ProfileStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // io.ebeaninternal.server.transaction.ProfileStream profileStream
         0: .line 256
            aload 0 /* this */
            aload 1 /* profileStream */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.profileStream:Lio/ebeaninternal/server/transaction/ProfileStream;
         1: .line 257
            return
        end local 1 // io.ebeaninternal.server.transaction.ProfileStream profileStream
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    2     1  profileStream  Lio/ebeaninternal/server/transaction/ProfileStream;
    MethodParameters:
               Name  Flags
      profileStream  

  public io.ebeaninternal.server.transaction.ProfileStream profileStream();
    descriptor: ()Lio/ebeaninternal/server/transaction/ProfileStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 261
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.profileStream:Lio/ebeaninternal/server/transaction/ProfileStream;
            areturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void setProfileLocation(io.ebean.ProfileLocation);
    descriptor: (Lio/ebean/ProfileLocation;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // io.ebean.ProfileLocation profileLocation
         0: .line 266
            aload 0 /* this */
            aload 1 /* profileLocation */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.profileLocation:Lio/ebean/ProfileLocation;
         1: .line 267
            return
        end local 1 // io.ebean.ProfileLocation profileLocation
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    2     1  profileLocation  Lio/ebean/ProfileLocation;
    MethodParameters:
                 Name  Flags
      profileLocation  

  public io.ebean.ProfileLocation getProfileLocation();
    descriptor: ()Lio/ebean/ProfileLocation;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 271
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.profileLocation:Lio/ebean/ProfileLocation;
            areturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  void checkAutoCommit(java.sql.Connection);
    descriptor: (Ljava/sql/Connection;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.sql.Connection connection
         0: .line 278
            aload 1 /* connection */
            ifnull 4
         1: .line 279
            aload 0 /* this */
            aload 1 /* connection */
            invokeinterface java.sql.Connection.getAutoCommit:()Z
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.autoCommit:Z
         2: .line 280
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.autoCommit:Z
            ifeq 4
         3: .line 281
            aload 1 /* connection */
            iconst_0
            invokeinterface java.sql.Connection.setAutoCommit:(Z)V
         4: .line 284
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.sql.Connection connection
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    5     1  connection  Ljava/sql/Connection;
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
            Name  Flags
      connection  

  private static java.lang.String deriveLogPrefix(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String id
         0: .line 288
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 289
            aload 1 /* sb */
            ldc "txn["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         2: .line 290
            aload 0 /* id */
            ifnull 4
         3: .line 291
            aload 1 /* sb */
            aload 0 /* id */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 293
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 1 /* sb */
            ldc "] "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 294
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder sb
        end local 0 // java.lang.String id
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0    id  Ljava/lang/String;
            1    6     1    sb  Ljava/lang/StringBuilder;
    MethodParameters:
      Name  Flags
      id    

  public boolean isSkipCacheExplicit();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 299
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.skipCache:Ljava/lang/Boolean;
            ifnull 1
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.skipCache:Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public boolean isSkipCache();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 304
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.skipCache:Ljava/lang/Boolean;
            ifnull 1
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.skipCache:Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
         1: .line 305
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.skipCacheAfterWrite:Z
            ifeq 2
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.queryOnly:Z
            ifne 2
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void setSkipCache(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // boolean skipCache
         0: .line 310
            aload 0 /* this */
            iload 1 /* skipCache */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.skipCache:Ljava/lang/Boolean;
         1: .line 311
            return
        end local 1 // boolean skipCache
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    2     1  skipCache  Z
    MethodParameters:
           Name  Flags
      skipCache  

  public java.lang.String getLogPrefix();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 315
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.logPrefix:Ljava/lang/String;
            areturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 320
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.active:Z
            ifeq 2
         1: .line 321
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.logPrefix:Ljava/lang/String;
            areturn
         2: .line 323
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.logPrefix:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "(inactive)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void addBeanChange(io.ebean.event.changelog.BeanChange);
    descriptor: (Lio/ebean/event/changelog/BeanChange;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // io.ebean.event.changelog.BeanChange beanChange
         0: .line 329
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.changeLogHolder:Lio/ebeaninternal/server/transaction/TChangeLogHolder;
            ifnonnull 2
         1: .line 330
            aload 0 /* this */
            new io.ebeaninternal.server.transaction.TChangeLogHolder
            dup
            aload 0 /* this */
            bipush 100
            invokespecial io.ebeaninternal.server.transaction.TChangeLogHolder.<init>:(Lio/ebeaninternal/api/SpiTransaction;I)V
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.changeLogHolder:Lio/ebeaninternal/server/transaction/TChangeLogHolder;
         2: .line 332
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.changeLogHolder:Lio/ebeaninternal/server/transaction/TChangeLogHolder;
            aload 1 /* beanChange */
            invokevirtual io.ebeaninternal.server.transaction.TChangeLogHolder.addBeanChange:(Lio/ebean/event/changelog/BeanChange;)V
         3: .line 333
            return
        end local 1 // io.ebean.event.changelog.BeanChange beanChange
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    4     1  beanChange  Lio/ebean/event/changelog/BeanChange;
    MethodParameters:
            Name  Flags
      beanChange  

  public void sendChangeLog(io.ebean.event.changelog.ChangeSet);
    descriptor: (Lio/ebean/event/changelog/ChangeSet;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // io.ebean.event.changelog.ChangeSet changesRequest
         0: .line 337
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
            ifnull 2
         1: .line 338
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
            aload 1 /* changesRequest */
            invokevirtual io.ebeaninternal.server.transaction.TransactionManager.sendChangeLog:(Lio/ebean/event/changelog/ChangeSet;)V
         2: .line 340
      StackMap locals:
      StackMap stack:
            return
        end local 1 // io.ebean.event.changelog.ChangeSet changesRequest
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    3     1  changesRequest  Lio/ebean/event/changelog/ChangeSet;
    MethodParameters:
                Name  Flags
      changesRequest  

  public void register(io.ebean.TransactionCallback);
    descriptor: (Lio/ebean/TransactionCallback;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // io.ebean.TransactionCallback callback
         0: .line 344
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.callbackList:Ljava/util/List;
            ifnonnull 2
         1: .line 345
            aload 0 /* this */
            new java.util.ArrayList
            dup
            iconst_4
            invokespecial java.util.ArrayList.<init>:(I)V
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.callbackList:Ljava/util/List;
         2: .line 347
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.callbackList:Ljava/util/List;
            aload 1 /* callback */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 348
            return
        end local 1 // io.ebean.TransactionCallback callback
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    4     1  callback  Lio/ebean/TransactionCallback;
    MethodParameters:
          Name  Flags
      callback  

  private void withEachCallback(java.util.function.Consumer<io.ebean.TransactionCallback>);
    descriptor: (Ljava/util/function/Consumer;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.util.function.Consumer consumer
         0: .line 351
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.callbackList:Ljava/util/List;
            ifnull 9
         1: .line 353
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 8
         3: .line 355
      StackMap locals: int
      StackMap stack:
            aload 1 /* consumer */
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.callbackList:Ljava/util/List;
            iload 2 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast io.ebean.TransactionCallback
            invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
         4: .line 356
            goto 7
      StackMap locals:
      StackMap stack: java.lang.Exception
         5: astore 3 /* e */
        start local 3 // java.lang.Exception e
         6: .line 357
            getstatic io.ebeaninternal.server.transaction.JdbcTransaction.logger:Lorg/slf4j/Logger;
            ldc "Error executing transaction callback"
            aload 3 /* e */
            invokeinterface org.slf4j.Logger.error:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 3 // java.lang.Exception e
         7: .line 353
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 2 /* i */
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.callbackList:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmplt 3
        end local 2 // int i
         9: .line 361
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.function.Consumer consumer
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0   10     1  consumer  Ljava/util/function/Consumer<Lio/ebean/TransactionCallback;>;
            2    9     2         i  I
            6    7     3         e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           3     4       5  Class java.lang.Exception
    Signature: (Ljava/util/function/Consumer<Lio/ebean/TransactionCallback;>;)V
    MethodParameters:
          Name  Flags
      consumer  

  private void firePreRollback();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 364
            aload 0 /* this */
            invokedynamic accept()Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  io/ebean/TransactionCallback.preRollback()V (9 itf)
                  (Lio/ebean/TransactionCallback;)V
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.withEachCallback:(Ljava/util/function/Consumer;)V
         1: .line 365
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  private void firePostRollback();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 368
            aload 0 /* this */
            invokedynamic accept()Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  io/ebean/TransactionCallback.postRollback()V (9 itf)
                  (Lio/ebean/TransactionCallback;)V
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.withEachCallback:(Ljava/util/function/Consumer;)V
         1: .line 369
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.changeLogHolder:Lio/ebeaninternal/server/transaction/TChangeLogHolder;
            ifnull 3
         2: .line 370
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.changeLogHolder:Lio/ebeaninternal/server/transaction/TChangeLogHolder;
            invokevirtual io.ebeaninternal.server.transaction.TChangeLogHolder.postRollback:()V
         3: .line 372
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  private void firePreCommit();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 375
            aload 0 /* this */
            invokedynamic accept()Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  io/ebean/TransactionCallback.preCommit()V (9 itf)
                  (Lio/ebean/TransactionCallback;)V
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.withEachCallback:(Ljava/util/function/Consumer;)V
         1: .line 376
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.changeLogHolder:Lio/ebeaninternal/server/transaction/TChangeLogHolder;
            ifnull 3
         2: .line 377
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.changeLogHolder:Lio/ebeaninternal/server/transaction/TChangeLogHolder;
            invokevirtual io.ebeaninternal.server.transaction.TChangeLogHolder.preCommit:()V
         3: .line 379
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  private void firePostCommit();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 382
            aload 0 /* this */
            invokedynamic accept()Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  io/ebean/TransactionCallback.postCommit()V (9 itf)
                  (Lio/ebean/TransactionCallback;)V
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.withEachCallback:(Ljava/util/function/Consumer;)V
         1: .line 383
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.changeLogHolder:Lio/ebeaninternal/server/transaction/TChangeLogHolder;
            ifnull 3
         2: .line 384
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.changeLogHolder:Lio/ebeaninternal/server/transaction/TChangeLogHolder;
            invokevirtual io.ebeaninternal.server.transaction.TChangeLogHolder.postCommit:()V
         3: .line 386
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public int getDocStoreBatchSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 390
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.docStoreBatchSize:I
            ireturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void setDocStoreBatchSize(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // int docStoreBatchSize
         0: .line 395
            aload 0 /* this */
            iload 1 /* docStoreBatchSize */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.docStoreBatchSize:I
         1: .line 396
            return
        end local 1 // int docStoreBatchSize
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    2     1  docStoreBatchSize  I
    MethodParameters:
                   Name  Flags
      docStoreBatchSize  

  public io.ebean.annotation.DocStoreMode getDocStoreMode();
    descriptor: ()Lio/ebean/annotation/DocStoreMode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 400
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.docStoreMode:Lio/ebean/annotation/DocStoreMode;
            areturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void setDocStoreMode(io.ebean.annotation.DocStoreMode);
    descriptor: (Lio/ebean/annotation/DocStoreMode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // io.ebean.annotation.DocStoreMode docStoreMode
         0: .line 405
            aload 0 /* this */
            aload 1 /* docStoreMode */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.docStoreMode:Lio/ebean/annotation/DocStoreMode;
         1: .line 406
            return
        end local 1 // io.ebean.annotation.DocStoreMode docStoreMode
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    2     1  docStoreMode  Lio/ebean/annotation/DocStoreMode;
    MethodParameters:
              Name  Flags
      docStoreMode  

  public void registerDeferred(io.ebeaninternal.server.core.PersistDeferredRelationship);
    descriptor: (Lio/ebeaninternal/server/core/PersistDeferredRelationship;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // io.ebeaninternal.server.core.PersistDeferredRelationship derived
         0: .line 410
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.deferredList:Ljava/util/List;
            ifnonnull 2
         1: .line 411
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.deferredList:Ljava/util/List;
         2: .line 413
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.deferredList:Ljava/util/List;
            aload 1 /* derived */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 414
            return
        end local 1 // io.ebeaninternal.server.core.PersistDeferredRelationship derived
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    4     1  derived  Lio/ebeaninternal/server/core/PersistDeferredRelationship;
    MethodParameters:
         Name  Flags
      derived  

  public void registerDeleteBean(java.lang.Integer);
    descriptor: (Ljava/lang/Integer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.Integer persistingBean
         0: .line 424
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.deletingBeansHash:Ljava/util/HashSet;
            ifnonnull 2
         1: .line 425
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.deletingBeansHash:Ljava/util/HashSet;
         2: .line 427
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.deletingBeansHash:Ljava/util/HashSet;
            aload 1 /* persistingBean */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
         3: .line 428
            return
        end local 1 // java.lang.Integer persistingBean
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    4     1  persistingBean  Ljava/lang/Integer;
    MethodParameters:
                Name  Flags
      persistingBean  

  public boolean isRegisteredDeleteBean(java.lang.Integer);
    descriptor: (Ljava/lang/Integer;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.Integer persistingBean
         0: .line 435
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.deletingBeansHash:Ljava/util/HashSet;
            ifnull 1
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.deletingBeansHash:Ljava/util/HashSet;
            aload 1 /* persistingBean */
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.Integer persistingBean
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    2     1  persistingBean  Ljava/lang/Integer;
    MethodParameters:
                Name  Flags
      persistingBean  

  public void unregisterBeans();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 443
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.persistingBeans:Ljava/util/IdentityHashMap;
            invokevirtual java.util.IdentityHashMap.clear:()V
         1: .line 444
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public boolean isRegisteredBean(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.Object bean
         0: .line 452
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.persistingBeans:Ljava/util/IdentityHashMap;
            ifnonnull 2
         1: .line 453
            aload 0 /* this */
            new java.util.IdentityHashMap
            dup
            invokespecial java.util.IdentityHashMap.<init>:()V
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.persistingBeans:Ljava/util/IdentityHashMap;
         2: .line 455
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.persistingBeans:Ljava/util/IdentityHashMap;
            aload 1 /* bean */
            getstatic io.ebeaninternal.server.transaction.JdbcTransaction.PLACEHOLDER:Ljava/lang/Object;
            invokevirtual java.util.IdentityHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            ifnull 3
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 1 // java.lang.Object bean
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    4     1  bean  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      bean  

  public boolean isSaveAssocManyIntersection(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.String intersectionTable
        start local 2 // java.lang.String beanName
         0: .line 464
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.m2mIntersectionSave:Ljava/util/HashMap;
            ifnonnull 4
         1: .line 466
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.m2mIntersectionSave:Ljava/util/HashMap;
         2: .line 467
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.m2mIntersectionSave:Ljava/util/HashMap;
            aload 1 /* intersectionTable */
            aload 2 /* beanName */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 468
            iconst_1
            ireturn
         4: .line 470
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.m2mIntersectionSave:Ljava/util/HashMap;
            aload 1 /* intersectionTable */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* existingBean */
        start local 3 // java.lang.String existingBean
         5: .line 471
            aload 3 /* existingBean */
            ifnonnull 8
         6: .line 473
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.m2mIntersectionSave:Ljava/util/HashMap;
            aload 1 /* intersectionTable */
            aload 2 /* beanName */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 474
            iconst_1
            ireturn
         8: .line 479
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* existingBean */
            aload 2 /* beanName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 3 // java.lang.String existingBean
        end local 2 // java.lang.String beanName
        end local 1 // java.lang.String intersectionTable
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    9     0               this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    9     1  intersectionTable  Ljava/lang/String;
            0    9     2           beanName  Ljava/lang/String;
            5    9     3       existingBean  Ljava/lang/String;
    MethodParameters:
                   Name  Flags
      intersectionTable  
      beanName           

  public void depth(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // int diff
         0: .line 499
            aload 0 /* this */
            dup
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.depth:I
            iload 1 /* diff */
            iadd
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.depth:I
         1: .line 500
            return
        end local 1 // int diff
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    2     1  diff  I
    MethodParameters:
      Name  Flags
      diff  

  public int depth();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 507
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.depth:I
            ireturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void markNotQueryOnly();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 512
            aload 0 /* this */
            iconst_0
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.queryOnly:Z
         1: .line 513
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public boolean isReadOnly();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 517
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.isActive:()Z
            ifne 2
         1: .line 518
            new java.lang.IllegalStateException
            dup
            ldc "Transaction is Inactive"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 521
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.connection:Ljava/sql/Connection;
            invokeinterface java.sql.Connection.isReadOnly:()Z
         3: ireturn
         4: .line 522
      StackMap locals:
      StackMap stack: java.sql.SQLException
            astore 1 /* e */
        start local 1 // java.sql.SQLException e
         5: .line 523
            new javax.persistence.PersistenceException
            dup
            aload 1 /* e */
            invokespecial javax.persistence.PersistenceException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 1 // java.sql.SQLException e
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            5    6     1     e  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
           2     3       4  Class java.sql.SQLException

  public void setReadOnly(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // boolean readOnly
         0: .line 529
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.isActive:()Z
            ifne 2
         1: .line 530
            new java.lang.IllegalStateException
            dup
            ldc "Transaction is Inactive"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 533
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* readOnly */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.localReadOnly:Z
         3: .line 534
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.connection:Ljava/sql/Connection;
            iload 1 /* readOnly */
            invokeinterface java.sql.Connection.setReadOnly:(Z)V
         4: .line 535
            goto 7
      StackMap locals:
      StackMap stack: java.sql.SQLException
         5: astore 2 /* e */
        start local 2 // java.sql.SQLException e
         6: .line 536
            new javax.persistence.PersistenceException
            dup
            aload 2 /* e */
            invokespecial javax.persistence.PersistenceException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.sql.SQLException e
         7: .line 538
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean readOnly
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    8     1  readOnly  Z
            6    7     2         e  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
           2     4       5  Class java.sql.SQLException
    MethodParameters:
          Name  Flags
      readOnly  

  public void setUpdateAllLoadedProperties(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // boolean updateAllLoadedProperties
         0: .line 542
            aload 0 /* this */
            iload 1 /* updateAllLoadedProperties */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.updateAllLoadedProperties:Ljava/lang/Boolean;
         1: .line 543
            return
        end local 1 // boolean updateAllLoadedProperties
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0    2     0                       this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    2     1  updateAllLoadedProperties  Z
    MethodParameters:
                           Name  Flags
      updateAllLoadedProperties  

  public java.lang.Boolean isUpdateAllLoadedProperties();
    descriptor: ()Ljava/lang/Boolean;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 547
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.updateAllLoadedProperties:Ljava/lang/Boolean;
            areturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void setBatchMode(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // boolean batchMode
         0: .line 552
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.isActive:()Z
            ifne 2
         1: .line 553
            new java.lang.IllegalStateException
            dup
            ldc "Transaction is Inactive"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 555
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* batchMode */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchMode:Z
         3: .line 556
            return
        end local 1 // boolean batchMode
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    4     1  batchMode  Z
    MethodParameters:
           Name  Flags
      batchMode  

  public boolean isBatchMode();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 560
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchMode:Z
            ireturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void setBatchOnCascade(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // boolean batchMode
         0: .line 565
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.isActive:()Z
            ifne 2
         1: .line 566
            new java.lang.IllegalStateException
            dup
            ldc "Transaction is Inactive"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 568
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* batchMode */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchOnCascadeMode:Z
         3: .line 569
            return
        end local 1 // boolean batchMode
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    4     1  batchMode  Z
    MethodParameters:
           Name  Flags
      batchMode  

  public boolean isBatchOnCascade();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 573
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchOnCascadeMode:Z
            ireturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public java.lang.Boolean getBatchGetGeneratedKeys();
    descriptor: ()Ljava/lang/Boolean;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 578
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchGetGeneratedKeys:Ljava/lang/Boolean;
            areturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void setGetGeneratedKeys(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // boolean getGeneratedKeys
         0: .line 583
            aload 0 /* this */
            iload 1 /* getGeneratedKeys */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchGetGeneratedKeys:Ljava/lang/Boolean;
         1: .line 584
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchControl:Lio/ebeaninternal/server/persist/BatchControl;
            ifnull 3
         2: .line 585
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchControl:Lio/ebeaninternal/server/persist/BatchControl;
            iload 1 /* getGeneratedKeys */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokevirtual io.ebeaninternal.server.persist.BatchControl.setGetGeneratedKeys:(Ljava/lang/Boolean;)V
         3: .line 587
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean getGeneratedKeys
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0              this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    4     1  getGeneratedKeys  Z
    MethodParameters:
                  Name  Flags
      getGeneratedKeys  

  public void setFlushOnMixed(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // boolean batchFlushOnMixed
         0: .line 591
            aload 0 /* this */
            iload 1 /* batchFlushOnMixed */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchFlushOnMixed:Ljava/lang/Boolean;
         1: .line 592
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchControl:Lio/ebeaninternal/server/persist/BatchControl;
            ifnull 3
         2: .line 593
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchControl:Lio/ebeaninternal/server/persist/BatchControl;
            iload 1 /* batchFlushOnMixed */
            invokevirtual io.ebeaninternal.server.persist.BatchControl.setBatchFlushOnMixed:(Z)V
         3: .line 595
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean batchFlushOnMixed
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0               this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    4     1  batchFlushOnMixed  Z
    MethodParameters:
                   Name  Flags
      batchFlushOnMixed  

  public int getBatchSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 605
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchSize:I
            ireturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void setBatchSize(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // int batchSize
         0: .line 610
            aload 0 /* this */
            iload 1 /* batchSize */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchSize:I
         1: .line 611
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchControl:Lio/ebeaninternal/server/persist/BatchControl;
            ifnull 3
         2: .line 612
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchControl:Lio/ebeaninternal/server/persist/BatchControl;
            iload 1 /* batchSize */
            invokevirtual io.ebeaninternal.server.persist.BatchControl.setBatchSize:(I)V
         3: .line 614
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int batchSize
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    4     1  batchSize  I
    MethodParameters:
           Name  Flags
      batchSize  

  public boolean isFlushOnQuery();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 618
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchFlushOnQuery:Z
            ireturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void setFlushOnQuery(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // boolean batchFlushOnQuery
         0: .line 623
            aload 0 /* this */
            iload 1 /* batchFlushOnQuery */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchFlushOnQuery:Z
         1: .line 624
            return
        end local 1 // boolean batchFlushOnQuery
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    2     1  batchFlushOnQuery  Z
    MethodParameters:
                   Name  Flags
      batchFlushOnQuery  

  public boolean isBatchThisRequest();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 632
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchMode:Z
            ireturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void checkBatchEscalationOnCollection();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 637
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchMode:Z
            ifne 3
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchOnCascadeMode:Z
            ifeq 3
         1: .line 638
            aload 0 /* this */
            iconst_1
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchMode:Z
         2: .line 639
            aload 0 /* this */
            iconst_1
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchOnCascadeSet:Z
         3: .line 641
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void flushBatchOnCollection();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 645
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchOnCascadeSet:Z
            ifeq 3
         1: .line 646
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.batchFlushReset:()V
         2: .line 648
            aload 0 /* this */
            iconst_0
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchMode:Z
         3: .line 650
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  private void batchFlush();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 653
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchControl:Lio/ebeaninternal/server/persist/BatchControl;
            ifnull 5
         1: .line 655
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchControl:Lio/ebeaninternal/server/persist/BatchControl;
            invokevirtual io.ebeaninternal.server.persist.BatchControl.flushOnCommit:()V
         2: .line 656
            goto 5
      StackMap locals:
      StackMap stack: io.ebeaninternal.server.persist.BatchedSqlException
         3: astore 1 /* e */
        start local 1 // io.ebeaninternal.server.persist.BatchedSqlException e
         4: .line 657
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual io.ebeaninternal.server.persist.BatchedSqlException.getMessage:()Ljava/lang/String;
            aload 1 /* e */
            invokevirtual io.ebeaninternal.server.persist.BatchedSqlException.getCause:()Ljava/sql/SQLException;
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.translate:(Ljava/lang/String;Ljava/sql/SQLException;)Ljavax/persistence/PersistenceException;
            athrow
        end local 1 // io.ebeaninternal.server.persist.BatchedSqlException e
         5: .line 660
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            4    5     1     e  Lio/ebeaninternal/server/persist/BatchedSqlException;
      Exception table:
        from    to  target  type
           1     2       3  Class io.ebeaninternal.server.persist.BatchedSqlException

  private void batchFlushReset();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 663
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchControl:Lio/ebeaninternal/server/persist/BatchControl;
            ifnull 5
         1: .line 665
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchControl:Lio/ebeaninternal/server/persist/BatchControl;
            invokevirtual io.ebeaninternal.server.persist.BatchControl.flushReset:()V
         2: .line 666
            goto 5
      StackMap locals:
      StackMap stack: io.ebeaninternal.server.persist.BatchedSqlException
         3: astore 1 /* e */
        start local 1 // io.ebeaninternal.server.persist.BatchedSqlException e
         4: .line 667
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual io.ebeaninternal.server.persist.BatchedSqlException.getMessage:()Ljava/lang/String;
            aload 1 /* e */
            invokevirtual io.ebeaninternal.server.persist.BatchedSqlException.getCause:()Ljava/sql/SQLException;
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.translate:(Ljava/lang/String;Ljava/sql/SQLException;)Ljavax/persistence/PersistenceException;
            athrow
        end local 1 // io.ebeaninternal.server.persist.BatchedSqlException e
         5: .line 670
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            4    5     1     e  Lio/ebeaninternal/server/persist/BatchedSqlException;
      Exception table:
        from    to  target  type
           1     2       3  Class io.ebeaninternal.server.persist.BatchedSqlException

  public javax.persistence.PersistenceException translate(java.lang.String, java.sql.SQLException);
    descriptor: (Ljava/lang/String;Ljava/sql/SQLException;)Ljavax/persistence/PersistenceException;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.String message
        start local 2 // java.sql.SQLException cause
         0: .line 674
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
            ifnull 2
         1: .line 675
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
            aload 1 /* message */
            aload 2 /* cause */
            invokevirtual io.ebeaninternal.server.transaction.TransactionManager.translate:(Ljava/lang/String;Ljava/sql/SQLException;)Ljavax/persistence/PersistenceException;
            areturn
         2: .line 677
      StackMap locals:
      StackMap stack:
            new javax.persistence.PersistenceException
            dup
            aload 1 /* message */
            aload 2 /* cause */
            invokespecial javax.persistence.PersistenceException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            areturn
        end local 2 // java.sql.SQLException cause
        end local 1 // java.lang.String message
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    3     1  message  Ljava/lang/String;
            0    3     2    cause  Ljava/sql/SQLException;
    MethodParameters:
         Name  Flags
      message  
      cause    

  public void flushBatchOnCascade();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 685
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.batchFlushReset:()V
         1: .line 687
            aload 0 /* this */
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.oldBatchMode:Z
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchMode:Z
         2: .line 688
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void flushBatchOnRollback();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 692
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.internalBatchClear:()V
         1: .line 694
            aload 0 /* this */
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.oldBatchMode:Z
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchMode:Z
         2: .line 695
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  private void internalBatchClear();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 701
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchControl:Lio/ebeaninternal/server/persist/BatchControl;
            ifnull 2
         1: .line 702
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchControl:Lio/ebeaninternal/server/persist/BatchControl;
            invokevirtual io.ebeaninternal.server.persist.BatchControl.clear:()V
         2: .line 704
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public boolean checkBatchEscalationOnCascade(io.ebeaninternal.server.core.PersistRequestBean<?>);
    descriptor: (Lio/ebeaninternal/server/core/PersistRequestBean;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // io.ebeaninternal.server.core.PersistRequestBean request
         0: .line 709
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchMode:Z
            ifeq 2
         1: .line 711
            iconst_0
            ireturn
         2: .line 714
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchOnCascadeMode:Z
            ifeq 8
         3: .line 716
            aload 0 /* this */
            iconst_0
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.oldBatchMode:Z
         4: .line 717
            aload 0 /* this */
            iconst_1
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchMode:Z
         5: .line 718
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.batchFlushReset:()V
         6: .line 720
            aload 1 /* request */
            invokevirtual io.ebeaninternal.server.core.PersistRequestBean.setSkipBatchForTopLevel:()V
         7: .line 721
            iconst_1
            ireturn
         8: .line 724
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.batchFlushReset:()V
         9: .line 725
            iconst_0
            ireturn
        end local 1 // io.ebeaninternal.server.core.PersistRequestBean request
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0   10     1  request  Lio/ebeaninternal/server/core/PersistRequestBean<*>;
    Signature: (Lio/ebeaninternal/server/core/PersistRequestBean<*>;)Z
    MethodParameters:
         Name  Flags
      request  

  public io.ebeaninternal.server.persist.BatchControl getBatchControl();
    descriptor: ()Lio/ebeaninternal/server/persist/BatchControl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 730
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchControl:Lio/ebeaninternal/server/persist/BatchControl;
            areturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void setBatchControl(io.ebeaninternal.server.persist.BatchControl);
    descriptor: (Lio/ebeaninternal/server/persist/BatchControl;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // io.ebeaninternal.server.persist.BatchControl batchControl
         0: .line 739
            aload 0 /* this */
            iconst_0
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.queryOnly:Z
         1: .line 740
            aload 0 /* this */
            aload 1 /* batchControl */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.batchControl:Lio/ebeaninternal/server/persist/BatchControl;
         2: .line 742
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchGetGeneratedKeys:Ljava/lang/Boolean;
            ifnull 4
         3: .line 743
            aload 1 /* batchControl */
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchGetGeneratedKeys:Ljava/lang/Boolean;
            invokevirtual io.ebeaninternal.server.persist.BatchControl.setGetGeneratedKeys:(Ljava/lang/Boolean;)V
         4: .line 745
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchSize:I
            iconst_m1
            if_icmpeq 6
         5: .line 746
            aload 1 /* batchControl */
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchSize:I
            invokevirtual io.ebeaninternal.server.persist.BatchControl.setBatchSize:(I)V
         6: .line 748
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchFlushOnMixed:Ljava/lang/Boolean;
            ifnull 8
         7: .line 749
            aload 1 /* batchControl */
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.batchFlushOnMixed:Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            invokevirtual io.ebeaninternal.server.persist.BatchControl.setBatchFlushOnMixed:(Z)V
         8: .line 751
      StackMap locals:
      StackMap stack:
            return
        end local 1 // io.ebeaninternal.server.persist.BatchControl batchControl
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0          this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    9     1  batchControl  Lio/ebeaninternal/server/persist/BatchControl;
    MethodParameters:
              Name  Flags
      batchControl  

  public void flush();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 762
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.isActive:()Z
            ifne 2
         1: .line 763
            new java.lang.IllegalStateException
            dup
            ldc "Transaction is Inactive"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 765
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.internalBatchFlush:()V
         3: .line 766
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void flushBatch();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 770
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.flush:()V
         1: .line 771
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  private void internalBatchFlush();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 777
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.batchFlush:()V
         1: .line 778
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.deferredList:Ljava/util/List;
            ifnull 8
         2: .line 779
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.deferredList:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 5
      StackMap locals: io.ebeaninternal.server.transaction.JdbcTransaction top java.util.Iterator
      StackMap stack:
         3: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast io.ebeaninternal.server.core.PersistDeferredRelationship
            astore 1 /* deferred */
        start local 1 // io.ebeaninternal.server.core.PersistDeferredRelationship deferred
         4: .line 780
            aload 1 /* deferred */
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.core.PersistDeferredRelationship.execute:(Lio/ebeaninternal/api/SpiTransaction;)V
        end local 1 // io.ebeaninternal.server.core.PersistDeferredRelationship deferred
         5: .line 779
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 782
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.batchFlush:()V
         7: .line 783
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.deferredList:Ljava/util/List;
            invokeinterface java.util.List.clear:()V
         8: .line 785
      StackMap locals: io.ebeaninternal.server.transaction.JdbcTransaction
      StackMap stack:
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            4    5     1  deferred  Lio/ebeaninternal/server/core/PersistDeferredRelationship;

  public io.ebean.bean.PersistenceContext getPersistenceContext();
    descriptor: ()Lio/ebean/bean/PersistenceContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 792
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.persistenceContext:Lio/ebean/bean/PersistenceContext;
            areturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void setPersistenceContext(io.ebean.bean.PersistenceContext);
    descriptor: (Lio/ebean/bean/PersistenceContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // io.ebean.bean.PersistenceContext context
         0: .line 805
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.isActive:()Z
            ifne 2
         1: .line 806
            new java.lang.IllegalStateException
            dup
            ldc "Transaction is Inactive"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 808
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.persistenceContext:Lio/ebean/bean/PersistenceContext;
         3: .line 809
            return
        end local 1 // io.ebean.bean.PersistenceContext context
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    4     1  context  Lio/ebean/bean/PersistenceContext;
    MethodParameters:
         Name  Flags
      context  

  public io.ebeaninternal.api.TransactionEvent getEvent();
    descriptor: ()Lio/ebeaninternal/api/TransactionEvent;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 816
            aload 0 /* this */
            iconst_0
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.queryOnly:Z
         1: .line 817
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.event:Lio/ebeaninternal/api/TransactionEvent;
            ifnonnull 3
         2: .line 818
            aload 0 /* this */
            new io.ebeaninternal.api.TransactionEvent
            dup
            invokespecial io.ebeaninternal.api.TransactionEvent.<init>:()V
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.event:Lio/ebeaninternal/api/TransactionEvent;
         3: .line 820
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.event:Lio/ebeaninternal/api/TransactionEvent;
            areturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public boolean isExplicit();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 828
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.explicit:Z
            ireturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public boolean isLogSql();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 833
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.logSql:Z
            ireturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public boolean isLogSummary();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 838
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.logSummary:Z
            ireturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void logSql(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.String msg
         0: .line 843
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
            invokevirtual io.ebeaninternal.server.transaction.TransactionManager.log:()Lio/ebeaninternal/api/SpiLogManager;
            invokeinterface io.ebeaninternal.api.SpiLogManager.sql:()Lio/ebeaninternal/api/SpiLogger;
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.logPrefix:Ljava/lang/String;
            aload 1 /* msg */
            invokestatic io.ebeaninternal.server.lib.Str.add:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokeinterface io.ebeaninternal.api.SpiLogger.debug:(Ljava/lang/String;)V
         1: .line 844
            return
        end local 1 // java.lang.String msg
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    2     1   msg  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      msg   

  public void logSummary(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.String msg
         0: .line 848
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
            invokevirtual io.ebeaninternal.server.transaction.TransactionManager.log:()Lio/ebeaninternal/api/SpiLogManager;
            invokeinterface io.ebeaninternal.api.SpiLogManager.sum:()Lio/ebeaninternal/api/SpiLogger;
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.logPrefix:Ljava/lang/String;
            aload 1 /* msg */
            invokestatic io.ebeaninternal.server.lib.Str.add:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokeinterface io.ebeaninternal.api.SpiLogger.debug:(Ljava/lang/String;)V
         1: .line 849
            return
        end local 1 // java.lang.String msg
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    2     1   msg  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      msg   

  public java.lang.String getId();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 856
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.id:Ljava/lang/String;
            areturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void setTenantId(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.Object tenantId
         0: .line 861
            aload 0 /* this */
            aload 1 /* tenantId */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.tenantId:Ljava/lang/Object;
         1: .line 862
            return
        end local 1 // java.lang.Object tenantId
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    2     1  tenantId  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      tenantId  

  public java.lang.Object getTenantId();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 866
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.tenantId:Ljava/lang/Object;
            areturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public java.sql.Connection getInternalConnection();
    descriptor: ()Ljava/sql/Connection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 874
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.isActive:()Z
            ifne 2
         1: .line 875
            new java.lang.IllegalStateException
            dup
            ldc "Transaction is Inactive"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 877
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.connection:Ljava/sql/Connection;
            areturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public java.sql.Connection getConnection();
    descriptor: ()Ljava/sql/Connection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 885
            aload 0 /* this */
            iconst_0
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.queryOnly:Z
         1: .line 886
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.getInternalConnection:()Ljava/sql/Connection;
            areturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  void deactivate();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 891
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.localReadOnly:Z
            ifeq 5
         1: .line 893
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.connection:Ljava/sql/Connection;
            iconst_0
            invokeinterface java.sql.Connection.setReadOnly:(Z)V
         2: .line 895
            goto 5
      StackMap locals:
      StackMap stack: java.sql.SQLException
         3: astore 1 /* e */
        start local 1 // java.sql.SQLException e
         4: .line 896
            getstatic io.ebeaninternal.server.transaction.JdbcTransaction.logger:Lorg/slf4j/Logger;
            ldc "Error setting to readOnly?"
            aload 1 /* e */
            invokeinterface org.slf4j.Logger.error:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 1 // java.sql.SQLException e
         5: .line 899
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.autoCommit:Z
            ifeq 10
         6: .line 901
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.connection:Ljava/sql/Connection;
            iconst_1
            invokeinterface java.sql.Connection.setAutoCommit:(Z)V
         7: .line 903
            goto 10
      StackMap locals:
      StackMap stack: java.sql.SQLException
         8: astore 1 /* e */
        start local 1 // java.sql.SQLException e
         9: .line 904
            getstatic io.ebeaninternal.server.transaction.JdbcTransaction.logger:Lorg/slf4j/Logger;
            ldc "Error setting to readOnly?"
            aload 1 /* e */
            invokeinterface org.slf4j.Logger.error:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 1 // java.sql.SQLException e
        10: .line 907
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.connection:Ljava/sql/Connection;
            invokeinterface java.sql.Connection.close:()V
        11: .line 908
            goto 14
      StackMap locals:
      StackMap stack: java.lang.Exception
        12: astore 1 /* ex */
        start local 1 // java.lang.Exception ex
        13: .line 911
            getstatic io.ebeaninternal.server.transaction.JdbcTransaction.logger:Lorg/slf4j/Logger;
            ldc "Error closing connection"
            aload 1 /* ex */
            invokeinterface org.slf4j.Logger.error:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 1 // java.lang.Exception ex
        14: .line 913
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.connection:Ljava/sql/Connection;
        15: .line 914
            aload 0 /* this */
            iconst_0
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.active:Z
        16: .line 915
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.profileEnd:()V
        17: .line 916
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   18     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            4    5     1     e  Ljava/sql/SQLException;
            9   10     1     e  Ljava/sql/SQLException;
           13   14     1    ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     2       3  Class java.sql.SQLException
           5     7       8  Class java.sql.SQLException
          10    11      12  Class java.lang.Exception

  void notifyCommit();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 922
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
            ifnull 5
         1: .line 923
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.queryOnly:Z
            ifeq 4
         2: .line 924
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.TransactionManager.notifyOfQueryOnly:(Lio/ebeaninternal/api/SpiTransaction;)V
         3: .line 925
            goto 5
         4: .line 926
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.TransactionManager.notifyOfCommit:(Lio/ebeaninternal/api/SpiTransaction;)V
         5: .line 929
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  private void connectionEndForQueryOnly();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 936
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.onQueryOnly:Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
            getstatic io.ebean.config.dbplatform.DatabasePlatform$OnQueryOnly.COMMIT:Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
            if_acmpne 3
         1: .line 937
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.performCommit:()V
         2: .line 938
            goto 7
         3: .line 939
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.performRollback:()V
         4: .line 941
            goto 7
      StackMap locals:
      StackMap stack: java.sql.SQLException
         5: astore 1 /* e */
        start local 1 // java.sql.SQLException e
         6: .line 942
            getstatic io.ebeaninternal.server.transaction.JdbcTransaction.logger:Lorg/slf4j/Logger;
            new java.lang.StringBuilder
            dup
            ldc "Error when ending a query only transaction via "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.onQueryOnly:Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1 /* e */
            invokeinterface org.slf4j.Logger.error:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 1 // java.sql.SQLException e
         7: .line 944
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            6    7     1     e  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
           0     4       5  Class java.sql.SQLException

  void performRollback();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 950
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.profileOffset:()J
            lstore 1 /* offset */
        start local 1 // long offset
         1: .line 951
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.connection:Ljava/sql/Connection;
            invokeinterface java.sql.Connection.rollback:()V
         2: .line 952
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.profileStream:Lio/ebeaninternal/server/transaction/ProfileStream;
            ifnull 4
         3: .line 953
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.profileStream:Lio/ebeaninternal/server/transaction/ProfileStream;
            ldc "r"
            lload 1 /* offset */
            invokeinterface io.ebeaninternal.server.transaction.ProfileStream.addEvent:(Ljava/lang/String;J)V
         4: .line 955
      StackMap locals: long
      StackMap stack:
            return
        end local 1 // long offset
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            1    5     1  offset  J
    Exceptions:
      throws java.sql.SQLException

  void performCommit();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 961
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.profileOffset:()J
            lstore 1 /* offset */
        start local 1 // long offset
         1: .line 962
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.connection:Ljava/sql/Connection;
            invokeinterface java.sql.Connection.commit:()V
         2: .line 963
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.profileStream:Lio/ebeaninternal/server/transaction/ProfileStream;
            ifnull 4
         3: .line 964
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.profileStream:Lio/ebeaninternal/server/transaction/ProfileStream;
            ldc "c"
            lload 1 /* offset */
            invokeinterface io.ebeaninternal.server.transaction.ProfileStream.addEvent:(Ljava/lang/String;J)V
         4: .line 966
      StackMap locals: long
      StackMap stack:
            return
        end local 1 // long offset
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            1    5     1  offset  J
    Exceptions:
      throws java.sql.SQLException

  private void profileEnd();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 969
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
            ifnull 10
         1: .line 970
            invokestatic java.lang.System.nanoTime:()J
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.startNanos:J
            lsub
            ldc 1000
            ldiv
            lstore 1 /* exeMicros */
        start local 1 // long exeMicros
         2: .line 971
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.profileLocation:Lio/ebean/ProfileLocation;
            ifnull 5
         3: .line 972
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.profileLocation:Lio/ebean/ProfileLocation;
            lload 1 /* exeMicros */
            invokeinterface io.ebean.ProfileLocation.add:(J)V
         4: .line 973
            goto 7
      StackMap locals: long
      StackMap stack:
         5: aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.label:Ljava/lang/String;
            ifnull 7
         6: .line 974
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
            lload 1 /* exeMicros */
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.label:Ljava/lang/String;
            invokevirtual io.ebeaninternal.server.transaction.TransactionManager.collectMetricNamed:(JLjava/lang/String;)V
         7: .line 976
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
            lload 1 /* exeMicros */
            invokevirtual io.ebeaninternal.server.transaction.TransactionManager.collectMetric:(J)V
         8: .line 977
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.profileStream:Lio/ebeaninternal/server/transaction/ProfileStream;
            ifnull 10
         9: .line 978
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.profileStream:Lio/ebeaninternal/server/transaction/ProfileStream;
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
            invokeinterface io.ebeaninternal.server.transaction.ProfileStream.end:(Lio/ebeaninternal/server/transaction/TransactionManager;)V
        end local 1 // long exeMicros
        10: .line 981
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            2   10     1  exeMicros  J

  private void flushCommitAndNotify();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 987
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.preCommit:()V
         1: .line 988
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.performCommit:()V
         2: .line 989
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.postCommit:()V
         3: .line 990
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
    Exceptions:
      throws java.sql.SQLException

  public void postCommit();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 994
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.firePostCommit:()V
         1: .line 995
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.notifyCommit:()V
         2: .line 996
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void preCommit();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 1000
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.internalBatchFlush:()V
         1: .line 1001
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.firePreCommit:()V
         2: .line 1002
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void commitAndContinue();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 1013
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.rollbackOnly:Z
            ifeq 2
         1: .line 1014
            return
         2: .line 1016
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.isActive:()Z
            ifne 4
         3: .line 1017
            new java.lang.IllegalStateException
            dup
            ldc "Transaction is Inactive"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1020
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.flushCommitAndNotify:()V
         5: .line 1024
            aload 0 /* this */
            new io.ebeaninternal.api.TransactionEvent
            dup
            invokespecial io.ebeaninternal.api.TransactionEvent.<init>:()V
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.event:Lio/ebeaninternal/api/TransactionEvent;
         6: .line 1026
            goto 10
      StackMap locals:
      StackMap stack: java.lang.Exception
         7: astore 1 /* e */
        start local 1 // java.lang.Exception e
         8: .line 1027
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.doRollback:(Ljava/lang/Throwable;)V
         9: .line 1028
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.wrapIfNeeded:(Ljava/lang/Exception;)Ljava/lang/RuntimeException;
            athrow
        end local 1 // java.lang.Exception e
        10: .line 1030
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            8   10     1     e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           4     6       7  Class java.lang.Exception

  public void commit();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 1037
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.rollbackOnly:Z
            ifeq 3
         1: .line 1038
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.rollback:()V
         2: .line 1039
            return
         3: .line 1041
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.isActive:()Z
            ifne 5
         4: .line 1042
            new java.lang.IllegalStateException
            dup
            ldc "Transaction is Inactive"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 1045
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.queryOnly:Z
            ifeq 8
         6: .line 1046
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.connectionEndForQueryOnly:()V
         7: .line 1047
            goto 16
         8: .line 1048
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.flushCommitAndNotify:()V
         9: .line 1051
            goto 16
      StackMap locals:
      StackMap stack: java.lang.Exception
        10: astore 1 /* e */
        start local 1 // java.lang.Exception e
        11: .line 1052
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.doRollback:(Ljava/lang/Throwable;)V
        12: .line 1053
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.wrapIfNeeded:(Ljava/lang/Exception;)Ljava/lang/RuntimeException;
            athrow
        end local 1 // java.lang.Exception e
        13: .line 1055
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2
        14: .line 1056
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.deactivate:()V
        15: .line 1057
            aload 2
            athrow
        16: .line 1056
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.deactivate:()V
        17: .line 1058
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   18     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
           11   13     1     e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           5     9      10  Class java.lang.Exception
           5    13      13  any

  private java.lang.RuntimeException wrapIfNeeded(java.lang.Exception);
    descriptor: (Ljava/lang/Exception;)Ljava/lang/RuntimeException;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.Exception e
         0: .line 1064
            aload 1 /* e */
            instanceof javax.persistence.PersistenceException
            ifeq 2
         1: .line 1066
            aload 1 /* e */
            checkcast javax.persistence.PersistenceException
            areturn
         2: .line 1068
      StackMap locals:
      StackMap stack:
            new javax.persistence.RollbackException
            dup
            aload 1 /* e */
            invokespecial javax.persistence.RollbackException.<init>:(Ljava/lang/Throwable;)V
            areturn
        end local 1 // java.lang.Exception e
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    3     1     e  Ljava/lang/Exception;
    MethodParameters:
      Name  Flags
      e     

  void notifyRollback(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.Throwable cause
         0: .line 1075
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
            ifnull 5
         1: .line 1076
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.queryOnly:Z
            ifeq 4
         2: .line 1077
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.TransactionManager.notifyOfQueryOnly:(Lio/ebeaninternal/api/SpiTransaction;)V
         3: .line 1078
            goto 5
         4: .line 1079
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
            aload 0 /* this */
            aload 1 /* cause */
            invokevirtual io.ebeaninternal.server.transaction.TransactionManager.notifyOfRollback:(Lio/ebeaninternal/api/SpiTransaction;Ljava/lang/Throwable;)V
         5: .line 1082
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Throwable cause
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    6     1  cause  Ljava/lang/Throwable;
    MethodParameters:
       Name  Flags
      cause  

  public boolean isRollbackOnly();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 1089
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.rollbackOnly:Z
            ireturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void setRollbackOnly();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 1097
            aload 0 /* this */
            iconst_1
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.rollbackOnly:Z
         1: .line 1098
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public boolean isNestedUseSavepoint();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 1102
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.nestedUseSavepoint:Z
            ireturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void setNestedUseSavepoint();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 1107
            aload 0 /* this */
            iconst_1
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.nestedUseSavepoint:Z
         1: .line 1108
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void rollback();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 1115
            aload 0 /* this */
            aconst_null
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.rollback:(Ljava/lang/Throwable;)V
         1: .line 1116
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
    Exceptions:
      throws javax.persistence.PersistenceException

  public void rollback(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.Throwable cause
         0: .line 1124
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.isActive:()Z
            ifne 2
         1: .line 1125
            new java.lang.IllegalStateException
            dup
            ldc "Transaction is Inactive"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1128
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cause */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.doRollback:(Ljava/lang/Throwable;)V
         3: .line 1129
            goto 7
      StackMap locals:
      StackMap stack: java.lang.Throwable
         4: astore 2
         5: .line 1130
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.deactivate:()V
         6: .line 1131
            aload 2
            athrow
         7: .line 1130
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.deactivate:()V
         8: .line 1132
            return
        end local 1 // java.lang.Throwable cause
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    9     1  cause  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           2     4       4  any
    Exceptions:
      throws javax.persistence.PersistenceException
    MethodParameters:
       Name  Flags
      cause  

  private void doRollback(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.Throwable cause
         0: .line 1138
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.internalBatchClear:()V
         1: .line 1139
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.firePreRollback:()V
         2: .line 1141
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.performRollback:()V
         3: .line 1142
            goto 9
      StackMap locals:
      StackMap stack: java.sql.SQLException
         4: astore 2 /* ex */
        start local 2 // java.sql.SQLException ex
         5: .line 1143
            new javax.persistence.PersistenceException
            dup
            aload 2 /* ex */
            invokespecial javax.persistence.PersistenceException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.sql.SQLException ex
         6: .line 1145
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3
         7: .line 1147
            aload 0 /* this */
            aload 1 /* cause */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.postRollback:(Ljava/lang/Throwable;)V
         8: .line 1148
            aload 3
            athrow
         9: .line 1147
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cause */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.postRollback:(Ljava/lang/Throwable;)V
        10: .line 1149
            return
        end local 1 // java.lang.Throwable cause
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0   this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0   11     1  cause  Ljava/lang/Throwable;
            5    6     2     ex  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
           2     3       4  Class java.sql.SQLException
           2     6       6  any
    MethodParameters:
       Name  Flags
      cause  

  public void postRollback(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.Throwable cause
         0: .line 1153
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.firePostRollback:()V
         1: .line 1154
            aload 0 /* this */
            aload 1 /* cause */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.notifyRollback:(Ljava/lang/Throwable;)V
         2: .line 1155
            return
        end local 1 // java.lang.Throwable cause
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    3     1  cause  Ljava/lang/Throwable;
    MethodParameters:
       Name  Flags
      cause  

  public void end();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 1162
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.isActive:()Z
            ifeq 2
         1: .line 1163
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.rollback:()V
         2: .line 1165
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
    Exceptions:
      throws javax.persistence.PersistenceException

  public boolean isActive();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 1172
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.active:Z
            ireturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public boolean isPersistCascade();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 1177
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.persistCascade:Z
            ireturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void setPersistCascade(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // boolean persistCascade
         0: .line 1182
            aload 0 /* this */
            iload 1 /* persistCascade */
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.persistCascade:Z
         1: .line 1183
            return
        end local 1 // boolean persistCascade
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    2     1  persistCascade  Z
    MethodParameters:
                Name  Flags
      persistCascade  

  public void addModification(java.lang.String, boolean, boolean, boolean);
    descriptor: (Ljava/lang/String;ZZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.String tableName
        start local 2 // boolean inserts
        start local 3 // boolean updates
        start local 4 // boolean deletes
         0: .line 1187
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.getEvent:()Lio/ebeaninternal/api/TransactionEvent;
            aload 1 /* tableName */
            iload 2 /* inserts */
            iload 3 /* updates */
            iload 4 /* deletes */
            invokevirtual io.ebeaninternal.api.TransactionEvent.add:(Ljava/lang/String;ZZZ)V
         1: .line 1188
            return
        end local 4 // boolean deletes
        end local 3 // boolean updates
        end local 2 // boolean inserts
        end local 1 // java.lang.String tableName
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    2     1  tableName  Ljava/lang/String;
            0    2     2    inserts  Z
            0    2     3    updates  Z
            0    2     4    deletes  Z
    MethodParameters:
           Name  Flags
      tableName  
      inserts    
      updates    
      deletes    

  public io.ebeanservice.docstore.api.DocStoreTransaction getDocStoreTransaction();
    descriptor: ()Lio/ebeanservice/docstore/api/DocStoreTransaction;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 1192
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.docStoreTxn:Lio/ebeanservice/docstore/api/DocStoreTransaction;
            ifnonnull 3
         1: .line 1193
            aload 0 /* this */
            iconst_0
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.queryOnly:Z
         2: .line 1194
            aload 0 /* this */
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.manager:Lio/ebeaninternal/server/transaction/TransactionManager;
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.docStoreBatchSize:I
            invokevirtual io.ebeaninternal.server.transaction.TransactionManager.createDocStoreTransaction:(I)Lio/ebeanservice/docstore/api/DocStoreTransaction;
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.docStoreTxn:Lio/ebeanservice/docstore/api/DocStoreTransaction;
         3: .line 1196
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.docStoreTxn:Lio/ebeanservice/docstore/api/DocStoreTransaction;
            areturn
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;

  public void putUserObject(java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.String name
        start local 2 // java.lang.Object value
         0: .line 1201
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.userObjects:Ljava/util/Map;
            ifnonnull 2
         1: .line 1202
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield io.ebeaninternal.server.transaction.JdbcTransaction.userObjects:Ljava/util/Map;
         2: .line 1204
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.userObjects:Ljava/util/Map;
            aload 1 /* name */
            aload 2 /* value */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 1205
            return
        end local 2 // java.lang.Object value
        end local 1 // java.lang.String name
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    4     1   name  Ljava/lang/String;
            0    4     2  value  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      name   
      value  

  public java.lang.Object getUserObject(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
        start local 1 // java.lang.String name
         0: .line 1209
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.userObjects:Ljava/util/Map;
            ifnonnull 2
         1: .line 1210
            aconst_null
            areturn
         2: .line 1212
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.transaction.JdbcTransaction.userObjects:Ljava/util/Map;
            aload 1 /* name */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.String name
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
            0    3     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
         0: .line 1220
            aload 0 /* this */
            invokevirtual io.ebeaninternal.server.transaction.JdbcTransaction.end:()V
         1: .line 1221
            return
        end local 0 // io.ebeaninternal.server.transaction.JdbcTransaction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/ebeaninternal/server/transaction/JdbcTransaction;
}
SourceFile: "JdbcTransaction.java"
InnerClasses:
  public final OnQueryOnly = io.ebean.config.dbplatform.DatabasePlatform$OnQueryOnly of io.ebean.config.dbplatform.DatabasePlatform
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles