class org.hibernate.engine.spi.CascadingActions$8 extends org.hibernate.engine.spi.CascadingActions$BaseCascadingAction
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.hibernate.engine.spi.CascadingActions$8
  super_class: org.hibernate.engine.spi.CascadingActions$BaseCascadingAction
{
  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.engine.spi.CascadingActions$8 this
         0: .line 331
            aload 0 /* this */
            invokespecial org.hibernate.engine.spi.CascadingActions$BaseCascadingAction.<init>:()V
            return
        end local 0 // org.hibernate.engine.spi.CascadingActions$8 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/engine/spi/CascadingActions$8;

  public void cascade(org.hibernate.event.spi.EventSource, java.lang.Object, java.lang.String, java.lang.Object, boolean);
    descriptor: (Lorg/hibernate/event/spi/EventSource;Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=6
        start local 0 // org.hibernate.engine.spi.CascadingActions$8 this
        start local 1 // org.hibernate.event.spi.EventSource session
        start local 2 // java.lang.Object child
        start local 3 // java.lang.String entityName
        start local 4 // java.lang.Object anything
        start local 5 // boolean isCascadeDeleteEnabled
         0: .line 340
            getstatic org.hibernate.engine.spi.CascadingActions.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Cascading to persist on flush: {0}"
            aload 3 /* entityName */
            invokeinterface org.hibernate.internal.CoreMessageLogger.tracev:(Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 341
            aload 1 /* session */
            aload 3 /* entityName */
            aload 2 /* child */
            aload 4 /* anything */
            checkcast java.util.Map
            invokeinterface org.hibernate.event.spi.EventSource.persistOnFlush:(Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)V
         2: .line 342
            return
        end local 5 // boolean isCascadeDeleteEnabled
        end local 4 // java.lang.Object anything
        end local 3 // java.lang.String entityName
        end local 2 // java.lang.Object child
        end local 1 // org.hibernate.event.spi.EventSource session
        end local 0 // org.hibernate.engine.spi.CascadingActions$8 this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    3     0                    this  Lorg/hibernate/engine/spi/CascadingActions$8;
            0    3     1                 session  Lorg/hibernate/event/spi/EventSource;
            0    3     2                   child  Ljava/lang/Object;
            0    3     3              entityName  Ljava/lang/String;
            0    3     4                anything  Ljava/lang/Object;
            0    3     5  isCascadeDeleteEnabled  Z
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
                        Name  Flags
      session                 
      child                   
      entityName              
      anything                
      isCascadeDeleteEnabled  

  public java.util.Iterator getCascadableChildrenIterator(org.hibernate.event.spi.EventSource, org.hibernate.type.CollectionType, java.lang.Object);
    descriptor: (Lorg/hibernate/event/spi/EventSource;Lorg/hibernate/type/CollectionType;Ljava/lang/Object;)Ljava/util/Iterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.hibernate.engine.spi.CascadingActions$8 this
        start local 1 // org.hibernate.event.spi.EventSource session
        start local 2 // org.hibernate.type.CollectionType collectionType
        start local 3 // java.lang.Object collection
         0: .line 350
            aload 1 /* session */
            aload 2 /* collectionType */
            aload 3 /* collection */
            invokestatic org.hibernate.engine.spi.CascadingActions.getLoadedElementsIterator:(Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Lorg/hibernate/type/CollectionType;Ljava/lang/Object;)Ljava/util/Iterator;
            areturn
        end local 3 // java.lang.Object collection
        end local 2 // org.hibernate.type.CollectionType collectionType
        end local 1 // org.hibernate.event.spi.EventSource session
        end local 0 // org.hibernate.engine.spi.CascadingActions$8 this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lorg/hibernate/engine/spi/CascadingActions$8;
            0    1     1         session  Lorg/hibernate/event/spi/EventSource;
            0    1     2  collectionType  Lorg/hibernate/type/CollectionType;
            0    1     3      collection  Ljava/lang/Object;
    MethodParameters:
                Name  Flags
      session         
      collectionType  
      collection      

  public boolean deleteOrphans();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.engine.spi.CascadingActions$8 this
         0: .line 355
            iconst_1
            ireturn
        end local 0 // org.hibernate.engine.spi.CascadingActions$8 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/engine/spi/CascadingActions$8;

  public boolean requiresNoCascadeChecking();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.engine.spi.CascadingActions$8 this
         0: .line 360
            iconst_1
            ireturn
        end local 0 // org.hibernate.engine.spi.CascadingActions$8 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/engine/spi/CascadingActions$8;

  public void noCascade(org.hibernate.event.spi.EventSource, java.lang.Object, org.hibernate.persister.entity.EntityPersister, org.hibernate.type.Type, int);
    descriptor: (Lorg/hibernate/event/spi/EventSource;Ljava/lang/Object;Lorg/hibernate/persister/entity/EntityPersister;Lorg/hibernate/type/Type;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=10, args_size=6
        start local 0 // org.hibernate.engine.spi.CascadingActions$8 this
        start local 1 // org.hibernate.event.spi.EventSource session
        start local 2 // java.lang.Object parent
        start local 3 // org.hibernate.persister.entity.EntityPersister persister
        start local 4 // org.hibernate.type.Type propertyType
        start local 5 // int propertyIndex
         0: .line 370
            aload 4 /* propertyType */
            invokeinterface org.hibernate.type.Type.isEntityType:()Z
            ifeq 15
         1: .line 371
            aload 3 /* persister */
            aload 2 /* parent */
            iload 5 /* propertyIndex */
            invokeinterface org.hibernate.persister.entity.EntityPersister.getPropertyValue:(Ljava/lang/Object;I)Ljava/lang/Object;
            astore 6 /* child */
        start local 6 // java.lang.Object child
         2: .line 372
            aload 4 /* propertyType */
            checkcast org.hibernate.type.EntityType
            aload 1 /* session */
            invokeinterface org.hibernate.event.spi.EventSource.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            invokevirtual org.hibernate.type.EntityType.getAssociatedEntityName:(Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Ljava/lang/String;
            astore 7 /* childEntityName */
        start local 7 // java.lang.String childEntityName
         3: .line 374
            aload 6 /* child */
            ifnull 15
         4: .line 375
            aload 0 /* this */
            aload 6 /* child */
            aload 1 /* session */
            invokevirtual org.hibernate.engine.spi.CascadingActions$8.isInManagedState:(Ljava/lang/Object;Lorg/hibernate/event/spi/EventSource;)Z
            ifne 15
         5: .line 376
            aload 6 /* child */
            instanceof org.hibernate.proxy.HibernateProxy
            ifne 15
         6: .line 377
            aload 7 /* childEntityName */
            aload 6 /* child */
            aconst_null
            aload 1 /* session */
            invokestatic org.hibernate.engine.internal.ForeignKeys.isTransient:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Boolean;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Z
            ifeq 15
         7: .line 378
            aload 3 /* persister */
            invokeinterface org.hibernate.persister.entity.EntityPersister.getEntityName:()Ljava/lang/String;
            astore 8 /* parentEntiytName */
        start local 8 // java.lang.String parentEntiytName
         8: .line 379
            aload 3 /* persister */
            invokeinterface org.hibernate.persister.entity.EntityPersister.getPropertyNames:()[Ljava/lang/String;
            iload 5 /* propertyIndex */
            aaload
            astore 9 /* propertyName */
        start local 9 // java.lang.String propertyName
         9: .line 380
            new org.hibernate.TransientPropertyValueException
            dup
        10: .line 381
            ldc "object references an unsaved transient instance - save the transient instance before flushing"
        11: .line 382
            aload 7 /* childEntityName */
        12: .line 383
            aload 8 /* parentEntiytName */
        13: .line 384
            aload 9 /* propertyName */
        14: .line 380
            invokespecial org.hibernate.TransientPropertyValueException.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
            athrow
        end local 9 // java.lang.String propertyName
        end local 8 // java.lang.String parentEntiytName
        end local 7 // java.lang.String childEntityName
        end local 6 // java.lang.Object child
        15: .line 389
      StackMap locals:
      StackMap stack:
            return
        end local 5 // int propertyIndex
        end local 4 // org.hibernate.type.Type propertyType
        end local 3 // org.hibernate.persister.entity.EntityPersister persister
        end local 2 // java.lang.Object parent
        end local 1 // org.hibernate.event.spi.EventSource session
        end local 0 // org.hibernate.engine.spi.CascadingActions$8 this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   16     0              this  Lorg/hibernate/engine/spi/CascadingActions$8;
            0   16     1           session  Lorg/hibernate/event/spi/EventSource;
            0   16     2            parent  Ljava/lang/Object;
            0   16     3         persister  Lorg/hibernate/persister/entity/EntityPersister;
            0   16     4      propertyType  Lorg/hibernate/type/Type;
            0   16     5     propertyIndex  I
            2   15     6             child  Ljava/lang/Object;
            3   15     7   childEntityName  Ljava/lang/String;
            8   15     8  parentEntiytName  Ljava/lang/String;
            9   15     9      propertyName  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      session        
      parent         
      persister      
      propertyType   
      propertyIndex  

  public boolean performOnLazyProperty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.engine.spi.CascadingActions$8 this
         0: .line 393
            iconst_0
            ireturn
        end local 0 // org.hibernate.engine.spi.CascadingActions$8 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/engine/spi/CascadingActions$8;

  private boolean isInManagedState(java.lang.Object, org.hibernate.event.spi.EventSource);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/event/spi/EventSource;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.hibernate.engine.spi.CascadingActions$8 this
        start local 1 // java.lang.Object child
        start local 2 // org.hibernate.event.spi.EventSource session
         0: .line 397
            aload 2 /* session */
            invokeinterface org.hibernate.event.spi.EventSource.getPersistenceContext:()Lorg/hibernate/engine/spi/PersistenceContext;
            aload 1 /* child */
            invokeinterface org.hibernate.engine.spi.PersistenceContext.getEntry:(Ljava/lang/Object;)Lorg/hibernate/engine/spi/EntityEntry;
            astore 3 /* entry */
        start local 3 // org.hibernate.engine.spi.EntityEntry entry
         1: .line 398
            aload 3 /* entry */
            ifnull 6
         2: .line 400
            aload 3 /* entry */
            invokeinterface org.hibernate.engine.spi.EntityEntry.getStatus:()Lorg/hibernate/engine/spi/Status;
            getstatic org.hibernate.engine.spi.Status.MANAGED:Lorg/hibernate/engine/spi/Status;
            if_acmpeq 5
         3: .line 401
            aload 3 /* entry */
            invokeinterface org.hibernate.engine.spi.EntityEntry.getStatus:()Lorg/hibernate/engine/spi/Status;
            getstatic org.hibernate.engine.spi.Status.READ_ONLY:Lorg/hibernate/engine/spi/Status;
            if_acmpeq 5
         4: .line 402
            aload 3 /* entry */
            invokeinterface org.hibernate.engine.spi.EntityEntry.getStatus:()Lorg/hibernate/engine/spi/Status;
            getstatic org.hibernate.engine.spi.Status.SAVING:Lorg/hibernate/engine/spi/Status;
            if_acmpne 6
         5: .line 398
      StackMap locals: org.hibernate.engine.spi.EntityEntry
      StackMap stack:
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         6: iconst_0
            ireturn
        end local 3 // org.hibernate.engine.spi.EntityEntry entry
        end local 2 // org.hibernate.event.spi.EventSource session
        end local 1 // java.lang.Object child
        end local 0 // org.hibernate.engine.spi.CascadingActions$8 this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/hibernate/engine/spi/CascadingActions$8;
            0    7     1    child  Ljava/lang/Object;
            0    7     2  session  Lorg/hibernate/event/spi/EventSource;
            1    7     3    entry  Lorg/hibernate/engine/spi/EntityEntry;
    MethodParameters:
         Name  Flags
      child    
      session  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.engine.spi.CascadingActions$8 this
         0: .line 408
            ldc "ACTION_PERSIST_ON_FLUSH"
            areturn
        end local 0 // org.hibernate.engine.spi.CascadingActions$8 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/engine/spi/CascadingActions$8;
}
SourceFile: "CascadingActions.java"
EnclosingMethod: org.hibernate.engine.spi.CascadingActions
NestHost: org.hibernate.engine.spi.CascadingActions
InnerClasses:
  org.hibernate.engine.spi.CascadingActions$8
  public abstract BaseCascadingAction = org.hibernate.engine.spi.CascadingActions$BaseCascadingAction of org.hibernate.engine.spi.CascadingActions