public class org.hibernate.dialect.identity.GetGeneratedKeysDelegate extends org.hibernate.id.insert.AbstractReturningDelegate implements org.hibernate.id.insert.InsertGeneratedIdentifierDelegate
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.hibernate.dialect.identity.GetGeneratedKeysDelegate
super_class: org.hibernate.id.insert.AbstractReturningDelegate
{
private final org.hibernate.id.PostInsertIdentityPersister persister;
descriptor: Lorg/hibernate/id/PostInsertIdentityPersister;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.hibernate.dialect.Dialect dialect;
descriptor: Lorg/hibernate/dialect/Dialect;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(org.hibernate.id.PostInsertIdentityPersister, org.hibernate.dialect.Dialect);
descriptor: (Lorg/hibernate/id/PostInsertIdentityPersister;Lorg/hibernate/dialect/Dialect;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokespecial org.hibernate.id.insert.AbstractReturningDelegate.<init>:(Lorg/hibernate/id/PostInsertIdentityPersister;)V
1: aload 0
aload 1
putfield org.hibernate.dialect.identity.GetGeneratedKeysDelegate.persister:Lorg/hibernate/id/PostInsertIdentityPersister;
2: aload 0
aload 2
putfield org.hibernate.dialect.identity.GetGeneratedKeysDelegate.dialect:Lorg/hibernate/dialect/Dialect;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/hibernate/dialect/identity/GetGeneratedKeysDelegate;
0 4 1 persister Lorg/hibernate/id/PostInsertIdentityPersister;
0 4 2 dialect Lorg/hibernate/dialect/Dialect;
MethodParameters:
Name Flags
persister
dialect
public org.hibernate.id.insert.IdentifierGeneratingInsert prepareIdentifierGeneratingInsert();
descriptor: ()Lorg/hibernate/id/insert/IdentifierGeneratingInsert;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: new org.hibernate.id.insert.IdentifierGeneratingInsert
dup
aload 0
getfield org.hibernate.dialect.identity.GetGeneratedKeysDelegate.dialect:Lorg/hibernate/dialect/Dialect;
invokespecial org.hibernate.id.insert.IdentifierGeneratingInsert.<init>:(Lorg/hibernate/dialect/Dialect;)V
astore 1
start local 1 1: aload 1
aload 0
getfield org.hibernate.dialect.identity.GetGeneratedKeysDelegate.persister:Lorg/hibernate/id/PostInsertIdentityPersister;
invokeinterface org.hibernate.id.PostInsertIdentityPersister.getRootTableKeyColumnNames:()[Ljava/lang/String;
iconst_0
aaload
invokevirtual org.hibernate.id.insert.IdentifierGeneratingInsert.addIdentityColumn:(Ljava/lang/String;)Lorg/hibernate/sql/Insert;
pop
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/hibernate/dialect/identity/GetGeneratedKeysDelegate;
1 3 1 insert Lorg/hibernate/id/insert/IdentifierGeneratingInsert;
protected java.sql.PreparedStatement prepare(java.lang.String, org.hibernate.engine.spi.SharedSessionContractImplementor);
descriptor: (Ljava/lang/String;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/sql/PreparedStatement;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
1: invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcCoordinator:()Lorg/hibernate/engine/jdbc/spi/JdbcCoordinator;
2: invokeinterface org.hibernate.engine.jdbc.spi.JdbcCoordinator.getStatementPreparer:()Lorg/hibernate/engine/jdbc/spi/StatementPreparer;
3: aload 1
iconst_1
invokeinterface org.hibernate.engine.jdbc.spi.StatementPreparer.prepareStatement:(Ljava/lang/String;I)Ljava/sql/PreparedStatement;
4: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/hibernate/dialect/identity/GetGeneratedKeysDelegate;
0 5 1 insertSQL Ljava/lang/String;
0 5 2 session Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
insertSQL
session
public java.io.Serializable executeAndExtract(java.sql.PreparedStatement, org.hibernate.engine.spi.SharedSessionContractImplementor);
descriptor: (Ljava/sql/PreparedStatement;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/io/Serializable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcCoordinator:()Lorg/hibernate/engine/jdbc/spi/JdbcCoordinator;
invokeinterface org.hibernate.engine.jdbc.spi.JdbcCoordinator.getResultSetReturn:()Lorg/hibernate/engine/jdbc/spi/ResultSetReturn;
aload 1
invokeinterface org.hibernate.engine.jdbc.spi.ResultSetReturn.executeUpdate:(Ljava/sql/PreparedStatement;)I
pop
1: aconst_null
astore 3
start local 3 2: aload 1
invokeinterface java.sql.PreparedStatement.getGeneratedKeys:()Ljava/sql/ResultSet;
astore 3
3: aload 3
4: aload 0
getfield org.hibernate.dialect.identity.GetGeneratedKeysDelegate.persister:Lorg/hibernate/id/PostInsertIdentityPersister;
invokeinterface org.hibernate.id.PostInsertIdentityPersister.getRootTableKeyColumnNames:()[Ljava/lang/String;
iconst_0
aaload
5: aload 0
getfield org.hibernate.dialect.identity.GetGeneratedKeysDelegate.persister:Lorg/hibernate/id/PostInsertIdentityPersister;
invokeinterface org.hibernate.id.PostInsertIdentityPersister.getIdentifierType:()Lorg/hibernate/type/Type;
6: aload 2
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcServices:()Lorg/hibernate/engine/jdbc/spi/JdbcServices;
invokeinterface org.hibernate.engine.jdbc.spi.JdbcServices.getJdbcEnvironment:()Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getDialect:()Lorg/hibernate/dialect/Dialect;
7: invokestatic org.hibernate.id.IdentifierGeneratorHelper.getGeneratedIdentity:(Ljava/sql/ResultSet;Ljava/lang/String;Lorg/hibernate/type/Type;Lorg/hibernate/dialect/Dialect;)Ljava/io/Serializable;
astore 5
8: aload 3
ifnull 10
9: aload 2
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcCoordinator:()Lorg/hibernate/engine/jdbc/spi/JdbcCoordinator;
invokeinterface org.hibernate.engine.jdbc.spi.JdbcCoordinator.getLogicalConnection:()Lorg/hibernate/resource/jdbc/spi/LogicalConnectionImplementor;
invokeinterface org.hibernate.resource.jdbc.spi.LogicalConnectionImplementor.getResourceRegistry:()Lorg/hibernate/resource/jdbc/ResourceRegistry;
aload 3
aload 1
invokeinterface org.hibernate.resource.jdbc.ResourceRegistry.release:(Ljava/sql/ResultSet;Ljava/sql/Statement;)V
10: StackMap locals: org.hibernate.dialect.identity.GetGeneratedKeysDelegate java.sql.PreparedStatement org.hibernate.engine.spi.SharedSessionContractImplementor java.sql.ResultSet top java.io.Serializable
StackMap stack:
aload 5
areturn
11: StackMap locals: org.hibernate.dialect.identity.GetGeneratedKeysDelegate java.sql.PreparedStatement org.hibernate.engine.spi.SharedSessionContractImplementor java.sql.ResultSet
StackMap stack: java.lang.Throwable
astore 4
12: aload 3
ifnull 14
13: aload 2
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcCoordinator:()Lorg/hibernate/engine/jdbc/spi/JdbcCoordinator;
invokeinterface org.hibernate.engine.jdbc.spi.JdbcCoordinator.getLogicalConnection:()Lorg/hibernate/resource/jdbc/spi/LogicalConnectionImplementor;
invokeinterface org.hibernate.resource.jdbc.spi.LogicalConnectionImplementor.getResourceRegistry:()Lorg/hibernate/resource/jdbc/ResourceRegistry;
aload 3
aload 1
invokeinterface org.hibernate.resource.jdbc.ResourceRegistry.release:(Ljava/sql/ResultSet;Ljava/sql/Statement;)V
14: StackMap locals: java.lang.Throwable
StackMap stack:
aload 4
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/hibernate/dialect/identity/GetGeneratedKeysDelegate;
0 15 1 insert Ljava/sql/PreparedStatement;
0 15 2 session Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
2 15 3 rs Ljava/sql/ResultSet;
Exception table:
from to target type
2 8 11 any
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
insert
session
}
SourceFile: "GetGeneratedKeysDelegate.java"