public class org.springframework.orm.hibernate5.SessionHolder extends org.springframework.orm.jpa.EntityManagerHolder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.springframework.orm.hibernate5.SessionHolder
  super_class: org.springframework.orm.jpa.EntityManagerHolder
{
  private final org.hibernate.Session session;
    descriptor: Lorg/hibernate/Session;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private org.hibernate.Transaction transaction;
    descriptor: Lorg/hibernate/Transaction;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  private org.hibernate.FlushMode previousFlushMode;
    descriptor: Lorg/hibernate/FlushMode;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  public void <init>(org.hibernate.Session);
    descriptor: (Lorg/hibernate/Session;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.SessionHolder this
        start local 1 // org.hibernate.Session session
         0: .line 54
            aload 0 /* this */
            ldc Ljavax/persistence/EntityManager;
            aload 1 /* session */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 1
            aload 1 /* session */
            goto 2
      StackMap locals:
      StackMap stack: uninitialized-this
         1: aconst_null
      StackMap locals: uninitialized-this org.hibernate.Session
      StackMap stack: uninitialized-this org.hibernate.Session
         2: invokespecial org.springframework.orm.jpa.EntityManagerHolder.<init>:(Ljavax/persistence/EntityManager;)V
         3: .line 55
            aload 0 /* this */
            aload 1 /* session */
            putfield org.springframework.orm.hibernate5.SessionHolder.session:Lorg/hibernate/Session;
         4: .line 56
            return
        end local 1 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.SessionHolder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/springframework/orm/hibernate5/SessionHolder;
            0    5     1  session  Lorg/hibernate/Session;
    MethodParameters:
         Name  Flags
      session  

  public org.hibernate.Session getSession();
    descriptor: ()Lorg/hibernate/Session;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.orm.hibernate5.SessionHolder this
         0: .line 60
            aload 0 /* this */
            getfield org.springframework.orm.hibernate5.SessionHolder.session:Lorg/hibernate/Session;
            areturn
        end local 0 // org.springframework.orm.hibernate5.SessionHolder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/orm/hibernate5/SessionHolder;

  public void setTransaction(org.hibernate.Transaction);
    descriptor: (Lorg/hibernate/Transaction;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.SessionHolder this
        start local 1 // org.hibernate.Transaction transaction
         0: .line 64
            aload 0 /* this */
            aload 1 /* transaction */
            putfield org.springframework.orm.hibernate5.SessionHolder.transaction:Lorg/hibernate/Transaction;
         1: .line 65
            aload 0 /* this */
            aload 1 /* transaction */
            ifnull 2
            iconst_1
            goto 3
      StackMap locals:
      StackMap stack: org.springframework.orm.hibernate5.SessionHolder
         2: iconst_0
      StackMap locals: org.springframework.orm.hibernate5.SessionHolder org.hibernate.Transaction
      StackMap stack: org.springframework.orm.hibernate5.SessionHolder int
         3: invokevirtual org.springframework.orm.hibernate5.SessionHolder.setTransactionActive:(Z)V
         4: .line 66
            return
        end local 1 // org.hibernate.Transaction transaction
        end local 0 // org.springframework.orm.hibernate5.SessionHolder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lorg/springframework/orm/hibernate5/SessionHolder;
            0    5     1  transaction  Lorg/hibernate/Transaction;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
             Name  Flags
      transaction  

  public org.hibernate.Transaction getTransaction();
    descriptor: ()Lorg/hibernate/Transaction;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.orm.hibernate5.SessionHolder this
         0: .line 70
            aload 0 /* this */
            getfield org.springframework.orm.hibernate5.SessionHolder.transaction:Lorg/hibernate/Transaction;
            areturn
        end local 0 // org.springframework.orm.hibernate5.SessionHolder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/orm/hibernate5/SessionHolder;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  public void setPreviousFlushMode(org.hibernate.FlushMode);
    descriptor: (Lorg/hibernate/FlushMode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.SessionHolder this
        start local 1 // org.hibernate.FlushMode previousFlushMode
         0: .line 74
            aload 0 /* this */
            aload 1 /* previousFlushMode */
            putfield org.springframework.orm.hibernate5.SessionHolder.previousFlushMode:Lorg/hibernate/FlushMode;
         1: .line 75
            return
        end local 1 // org.hibernate.FlushMode previousFlushMode
        end local 0 // org.springframework.orm.hibernate5.SessionHolder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lorg/springframework/orm/hibernate5/SessionHolder;
            0    2     1  previousFlushMode  Lorg/hibernate/FlushMode;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
                   Name  Flags
      previousFlushMode  

  public org.hibernate.FlushMode getPreviousFlushMode();
    descriptor: ()Lorg/hibernate/FlushMode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.orm.hibernate5.SessionHolder this
         0: .line 79
            aload 0 /* this */
            getfield org.springframework.orm.hibernate5.SessionHolder.previousFlushMode:Lorg/hibernate/FlushMode;
            areturn
        end local 0 // org.springframework.orm.hibernate5.SessionHolder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/orm/hibernate5/SessionHolder;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.springframework.orm.hibernate5.SessionHolder this
         0: .line 85
            aload 0 /* this */
            invokespecial org.springframework.orm.jpa.EntityManagerHolder.clear:()V
         1: .line 86
            aload 0 /* this */
            aconst_null
            putfield org.springframework.orm.hibernate5.SessionHolder.transaction:Lorg/hibernate/Transaction;
         2: .line 87
            aload 0 /* this */
            aconst_null
            putfield org.springframework.orm.hibernate5.SessionHolder.previousFlushMode:Lorg/hibernate/FlushMode;
         3: .line 88
            return
        end local 0 // org.springframework.orm.hibernate5.SessionHolder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/springframework/orm/hibernate5/SessionHolder;
}
SourceFile: "SessionHolder.java"