public abstract class org.hibernate.action.internal.AbstractEntityInsertAction extends org.hibernate.action.internal.EntityAction
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.hibernate.action.internal.AbstractEntityInsertAction
super_class: org.hibernate.action.internal.EntityAction
{
private transient java.lang.Object[] state;
descriptor: [Ljava/lang/Object;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private final boolean isVersionIncrementDisabled;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private boolean isExecuted;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean areTransientReferencesNullified;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
protected void <init>(java.io.Serializable, java.lang.Object[], java.lang.Object, boolean, org.hibernate.persister.entity.EntityPersister, org.hibernate.engine.spi.SessionImplementor);
descriptor: (Ljava/io/Serializable;[Ljava/lang/Object;Ljava/lang/Object;ZLorg/hibernate/persister/entity/EntityPersister;Lorg/hibernate/engine/spi/SessionImplementor;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
aload 6
aload 1
aload 3
aload 5
invokespecial org.hibernate.action.internal.EntityAction.<init>:(Lorg/hibernate/engine/spi/SessionImplementor;Ljava/io/Serializable;Ljava/lang/Object;Lorg/hibernate/persister/entity/EntityPersister;)V
1: aload 0
aload 2
putfield org.hibernate.action.internal.AbstractEntityInsertAction.state:[Ljava/lang/Object;
2: aload 0
iload 4
putfield org.hibernate.action.internal.AbstractEntityInsertAction.isVersionIncrementDisabled:Z
3: aload 0
iconst_0
putfield org.hibernate.action.internal.AbstractEntityInsertAction.isExecuted:Z
4: aload 0
iconst_0
putfield org.hibernate.action.internal.AbstractEntityInsertAction.areTransientReferencesNullified:Z
5: aload 1
ifnull 7
6: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.handleNaturalIdPreSaveNotifications:()V
7: StackMap locals: org.hibernate.action.internal.AbstractEntityInsertAction java.io.Serializable java.lang.Object[] java.lang.Object int org.hibernate.persister.entity.EntityPersister org.hibernate.engine.spi.SessionImplementor
StackMap stack:
return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/hibernate/action/internal/AbstractEntityInsertAction;
0 8 1 id Ljava/io/Serializable;
0 8 2 state [Ljava/lang/Object;
0 8 3 instance Ljava/lang/Object;
0 8 4 isVersionIncrementDisabled Z
0 8 5 persister Lorg/hibernate/persister/entity/EntityPersister;
0 8 6 session Lorg/hibernate/engine/spi/SessionImplementor;
MethodParameters:
Name Flags
id
state
instance
isVersionIncrementDisabled
persister
session
public java.lang.Object[] getState();
descriptor: ()[Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.hibernate.action.internal.AbstractEntityInsertAction.state:[Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/action/internal/AbstractEntityInsertAction;
public abstract boolean isEarlyInsert();
descriptor: ()Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public org.hibernate.engine.internal.NonNullableTransientDependencies findNonNullableTransientEntities();
descriptor: ()Lorg/hibernate/engine/internal/NonNullableTransientDependencies;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getPersister:()Lorg/hibernate/persister/entity/EntityPersister;
invokeinterface org.hibernate.persister.entity.EntityPersister.getEntityName:()Ljava/lang/String;
1: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getInstance:()Ljava/lang/Object;
2: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getState:()[Ljava/lang/Object;
3: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.isEarlyInsert:()Z
4: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getSession:()Lorg/hibernate/engine/spi/SessionImplementor;
5: invokestatic org.hibernate.engine.internal.ForeignKeys.findNonNullableTransientEntities:(Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;ZLorg/hibernate/engine/spi/SessionImplementor;)Lorg/hibernate/engine/internal/NonNullableTransientDependencies;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/hibernate/action/internal/AbstractEntityInsertAction;
protected final void nullifyTransientReferencesIfNotAlready();
descriptor: ()V
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
getfield org.hibernate.action.internal.AbstractEntityInsertAction.areTransientReferencesNullified:Z
ifne 5
1: new org.hibernate.engine.internal.ForeignKeys$Nullifier
dup
aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getInstance:()Ljava/lang/Object;
iconst_0
aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.isEarlyInsert:()Z
aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getSession:()Lorg/hibernate/engine/spi/SessionImplementor;
invokespecial org.hibernate.engine.internal.ForeignKeys$Nullifier.<init>:(Ljava/lang/Object;ZZLorg/hibernate/engine/spi/SessionImplementor;)V
2: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getState:()[Ljava/lang/Object;
aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getPersister:()Lorg/hibernate/persister/entity/EntityPersister;
invokeinterface org.hibernate.persister.entity.EntityPersister.getPropertyTypes:()[Lorg/hibernate/type/Type;
invokevirtual org.hibernate.engine.internal.ForeignKeys$Nullifier.nullifyTransientReferences:([Ljava/lang/Object;[Lorg/hibernate/type/Type;)V
3: new org.hibernate.engine.internal.Nullability
dup
aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getSession:()Lorg/hibernate/engine/spi/SessionImplementor;
invokespecial org.hibernate.engine.internal.Nullability.<init>:(Lorg/hibernate/engine/spi/SessionImplementor;)V
aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getState:()[Ljava/lang/Object;
aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getPersister:()Lorg/hibernate/persister/entity/EntityPersister;
iconst_0
invokevirtual org.hibernate.engine.internal.Nullability.checkNullability:([Ljava/lang/Object;Lorg/hibernate/persister/entity/EntityPersister;Z)V
4: aload 0
iconst_1
putfield org.hibernate.action.internal.AbstractEntityInsertAction.areTransientReferencesNullified:Z
5: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/hibernate/action/internal/AbstractEntityInsertAction;
public final void makeEntityManaged();
descriptor: ()V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=11, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.nullifyTransientReferencesIfNotAlready:()V
1: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getState:()[Ljava/lang/Object;
aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getPersister:()Lorg/hibernate/persister/entity/EntityPersister;
invokestatic org.hibernate.engine.internal.Versioning.getVersion:([Ljava/lang/Object;Lorg/hibernate/persister/entity/EntityPersister;)Ljava/lang/Object;
astore 1
start local 1 2: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getSession:()Lorg/hibernate/engine/spi/SessionImplementor;
invokeinterface org.hibernate.engine.spi.SessionImplementor.getPersistenceContext:()Lorg/hibernate/engine/spi/PersistenceContext;
3: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getInstance:()Ljava/lang/Object;
4: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getPersister:()Lorg/hibernate/persister/entity/EntityPersister;
invokeinterface org.hibernate.persister.entity.EntityPersister.isMutable:()Z
ifeq 5
getstatic org.hibernate.engine.spi.Status.MANAGED:Lorg/hibernate/engine/spi/Status;
goto 6
StackMap locals: org.hibernate.action.internal.AbstractEntityInsertAction java.lang.Object
StackMap stack: org.hibernate.engine.spi.PersistenceContext java.lang.Object
5: getstatic org.hibernate.engine.spi.Status.READ_ONLY:Lorg/hibernate/engine/spi/Status;
6: StackMap locals: org.hibernate.action.internal.AbstractEntityInsertAction java.lang.Object
StackMap stack: org.hibernate.engine.spi.PersistenceContext java.lang.Object org.hibernate.engine.spi.Status
aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getState:()[Ljava/lang/Object;
7: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getEntityKey:()Lorg/hibernate/engine/spi/EntityKey;
8: aload 1
9: getstatic org.hibernate.LockMode.WRITE:Lorg/hibernate/LockMode;
10: aload 0
getfield org.hibernate.action.internal.AbstractEntityInsertAction.isExecuted:Z
11: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getPersister:()Lorg/hibernate/persister/entity/EntityPersister;
12: aload 0
getfield org.hibernate.action.internal.AbstractEntityInsertAction.isVersionIncrementDisabled:Z
13: iconst_0
14: invokeinterface org.hibernate.engine.spi.PersistenceContext.addEntity:(Ljava/lang/Object;Lorg/hibernate/engine/spi/Status;[Ljava/lang/Object;Lorg/hibernate/engine/spi/EntityKey;Ljava/lang/Object;Lorg/hibernate/LockMode;ZLorg/hibernate/persister/entity/EntityPersister;ZZ)Lorg/hibernate/engine/spi/EntityEntry;
pop
15: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/hibernate/action/internal/AbstractEntityInsertAction;
2 16 1 version Ljava/lang/Object;
protected void markExecuted();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
putfield org.hibernate.action.internal.AbstractEntityInsertAction.isExecuted:Z
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/hibernate/action/internal/AbstractEntityInsertAction;
protected abstract org.hibernate.engine.spi.EntityKey getEntityKey();
descriptor: ()Lorg/hibernate/engine/spi/EntityKey;
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
public void afterDeserialize(org.hibernate.engine.spi.SessionImplementor);
descriptor: (Lorg/hibernate/engine/spi/SessionImplementor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.hibernate.action.internal.EntityAction.afterDeserialize:(Lorg/hibernate/engine/spi/SessionImplementor;)V
1: aload 1
ifnull 4
2: aload 1
invokeinterface org.hibernate.engine.spi.SessionImplementor.getPersistenceContext:()Lorg/hibernate/engine/spi/PersistenceContext;
aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getInstance:()Ljava/lang/Object;
invokeinterface org.hibernate.engine.spi.PersistenceContext.getEntry:(Ljava/lang/Object;)Lorg/hibernate/engine/spi/EntityEntry;
astore 2
start local 2 3: aload 0
aload 2
invokevirtual org.hibernate.engine.spi.EntityEntry.getLoadedState:()[Ljava/lang/Object;
putfield org.hibernate.action.internal.AbstractEntityInsertAction.state:[Ljava/lang/Object;
end local 2 4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/hibernate/action/internal/AbstractEntityInsertAction;
0 5 1 session Lorg/hibernate/engine/spi/SessionImplementor;
3 4 2 entityEntry Lorg/hibernate/engine/spi/EntityEntry;
MethodParameters:
Name Flags
session
protected void handleNaturalIdPreSaveNotifications();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getSession:()Lorg/hibernate/engine/spi/SessionImplementor;
invokeinterface org.hibernate.engine.spi.SessionImplementor.getPersistenceContext:()Lorg/hibernate/engine/spi/PersistenceContext;
invokeinterface org.hibernate.engine.spi.PersistenceContext.getNaturalIdHelper:()Lorg/hibernate/engine/spi/PersistenceContext$NaturalIdHelper;
1: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getPersister:()Lorg/hibernate/persister/entity/EntityPersister;
2: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getId:()Ljava/io/Serializable;
3: aload 0
getfield org.hibernate.action.internal.AbstractEntityInsertAction.state:[Ljava/lang/Object;
4: aconst_null
5: getstatic org.hibernate.engine.spi.CachedNaturalIdValueSource.INSERT:Lorg/hibernate/engine/spi/CachedNaturalIdValueSource;
6: invokeinterface org.hibernate.engine.spi.PersistenceContext$NaturalIdHelper.manageLocalNaturalIdCrossReference:(Lorg/hibernate/persister/entity/EntityPersister;Ljava/io/Serializable;[Ljava/lang/Object;[Ljava/lang/Object;Lorg/hibernate/engine/spi/CachedNaturalIdValueSource;)V
7: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/hibernate/action/internal/AbstractEntityInsertAction;
public void handleNaturalIdPostSaveNotifications(java.io.Serializable);
descriptor: (Ljava/io/Serializable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.isEarlyInsert:()Z
ifeq 8
1: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getSession:()Lorg/hibernate/engine/spi/SessionImplementor;
invokeinterface org.hibernate.engine.spi.SessionImplementor.getPersistenceContext:()Lorg/hibernate/engine/spi/PersistenceContext;
invokeinterface org.hibernate.engine.spi.PersistenceContext.getNaturalIdHelper:()Lorg/hibernate/engine/spi/PersistenceContext$NaturalIdHelper;
2: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getPersister:()Lorg/hibernate/persister/entity/EntityPersister;
3: aload 1
4: aload 0
getfield org.hibernate.action.internal.AbstractEntityInsertAction.state:[Ljava/lang/Object;
5: aconst_null
6: getstatic org.hibernate.engine.spi.CachedNaturalIdValueSource.INSERT:Lorg/hibernate/engine/spi/CachedNaturalIdValueSource;
7: invokeinterface org.hibernate.engine.spi.PersistenceContext$NaturalIdHelper.manageLocalNaturalIdCrossReference:(Lorg/hibernate/persister/entity/EntityPersister;Ljava/io/Serializable;[Ljava/lang/Object;[Ljava/lang/Object;Lorg/hibernate/engine/spi/CachedNaturalIdValueSource;)V
8: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getSession:()Lorg/hibernate/engine/spi/SessionImplementor;
invokeinterface org.hibernate.engine.spi.SessionImplementor.getPersistenceContext:()Lorg/hibernate/engine/spi/PersistenceContext;
invokeinterface org.hibernate.engine.spi.PersistenceContext.getNaturalIdHelper:()Lorg/hibernate/engine/spi/PersistenceContext$NaturalIdHelper;
9: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getPersister:()Lorg/hibernate/persister/entity/EntityPersister;
10: aload 0
invokevirtual org.hibernate.action.internal.AbstractEntityInsertAction.getId:()Ljava/io/Serializable;
11: aload 0
getfield org.hibernate.action.internal.AbstractEntityInsertAction.state:[Ljava/lang/Object;
12: aconst_null
13: getstatic org.hibernate.engine.spi.CachedNaturalIdValueSource.INSERT:Lorg/hibernate/engine/spi/CachedNaturalIdValueSource;
14: invokeinterface org.hibernate.engine.spi.PersistenceContext$NaturalIdHelper.manageSharedNaturalIdCrossReference:(Lorg/hibernate/persister/entity/EntityPersister;Ljava/io/Serializable;[Ljava/lang/Object;[Ljava/lang/Object;Lorg/hibernate/engine/spi/CachedNaturalIdValueSource;)V
15: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/hibernate/action/internal/AbstractEntityInsertAction;
0 16 1 generatedId Ljava/io/Serializable;
MethodParameters:
Name Flags
generatedId
}
SourceFile: "AbstractEntityInsertAction.java"
InnerClasses:
public Nullifier = org.hibernate.engine.internal.ForeignKeys$Nullifier of org.hibernate.engine.internal.ForeignKeys
public abstract NaturalIdHelper = org.hibernate.engine.spi.PersistenceContext$NaturalIdHelper of org.hibernate.engine.spi.PersistenceContext