public abstract class org.hibernate.id.insert.AbstractSelectingDelegate implements org.hibernate.id.insert.InsertGeneratedIdentifierDelegate
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.hibernate.id.insert.AbstractSelectingDelegate
super_class: java.lang.Object
{
private final org.hibernate.id.PostInsertIdentityPersister persister;
descriptor: Lorg/hibernate/id/PostInsertIdentityPersister;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
protected void <init>(org.hibernate.id.PostInsertIdentityPersister);
descriptor: (Lorg/hibernate/id/PostInsertIdentityPersister;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.hibernate.id.insert.AbstractSelectingDelegate.persister:Lorg/hibernate/id/PostInsertIdentityPersister;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/hibernate/id/insert/AbstractSelectingDelegate;
0 3 1 persister Lorg/hibernate/id/PostInsertIdentityPersister;
MethodParameters:
Name Flags
persister
public final java.io.Serializable performInsert(java.lang.String, org.hibernate.engine.spi.SharedSessionContractImplementor, org.hibernate.id.insert.Binder);
descriptor: (Ljava/lang/String;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Lorg/hibernate/id/insert/Binder;)Ljava/io/Serializable;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=10, args_size=4
start local 0 start local 1 start local 2 start local 3 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_2
invokeinterface org.hibernate.engine.jdbc.spi.StatementPreparer.prepareStatement:(Ljava/lang/String;I)Ljava/sql/PreparedStatement;
4: astore 4
start local 4 5: aload 3
aload 4
invokeinterface org.hibernate.id.insert.Binder.bindValues:(Ljava/sql/PreparedStatement;)V
6: 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 4
invokeinterface org.hibernate.engine.jdbc.spi.ResultSetReturn.executeUpdate:(Ljava/sql/PreparedStatement;)I
pop
7: goto 12
8: StackMap locals: org.hibernate.id.insert.AbstractSelectingDelegate java.lang.String org.hibernate.engine.spi.SharedSessionContractImplementor org.hibernate.id.insert.Binder java.sql.PreparedStatement
StackMap stack: java.lang.Throwable
astore 5
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 4
invokeinterface org.hibernate.resource.jdbc.ResourceRegistry.release:(Ljava/sql/Statement;)V
10: aload 2
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcCoordinator:()Lorg/hibernate/engine/jdbc/spi/JdbcCoordinator;
invokeinterface org.hibernate.engine.jdbc.spi.JdbcCoordinator.afterStatementExecution:()V
11: aload 5
athrow
12: StackMap locals:
StackMap stack:
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 4
invokeinterface org.hibernate.resource.jdbc.ResourceRegistry.release:(Ljava/sql/Statement;)V
13: aload 2
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcCoordinator:()Lorg/hibernate/engine/jdbc/spi/JdbcCoordinator;
invokeinterface org.hibernate.engine.jdbc.spi.JdbcCoordinator.afterStatementExecution:()V
end local 4 14: goto 21
15: StackMap locals: org.hibernate.id.insert.AbstractSelectingDelegate java.lang.String org.hibernate.engine.spi.SharedSessionContractImplementor org.hibernate.id.insert.Binder
StackMap stack: java.sql.SQLException
astore 4
start local 4 16: aload 2
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcServices:()Lorg/hibernate/engine/jdbc/spi/JdbcServices;
invokeinterface org.hibernate.engine.jdbc.spi.JdbcServices.getSqlExceptionHelper:()Lorg/hibernate/engine/jdbc/spi/SqlExceptionHelper;
17: aload 4
18: new java.lang.StringBuilder
dup
ldc "could not insert: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.hibernate.id.insert.AbstractSelectingDelegate.persister:Lorg/hibernate/id/PostInsertIdentityPersister;
invokestatic org.hibernate.pretty.MessageHelper.infoString:(Lorg/hibernate/persister/entity/EntityPersister;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
19: aload 1
20: invokevirtual org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert:(Ljava/sql/SQLException;Ljava/lang/String;Ljava/lang/String;)Lorg/hibernate/JDBCException;
athrow
end local 4 21: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.hibernate.id.insert.AbstractSelectingDelegate.getSelectSQL:()Ljava/lang/String;
astore 4
start local 4 22: aload 2
23: invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcCoordinator:()Lorg/hibernate/engine/jdbc/spi/JdbcCoordinator;
24: invokeinterface org.hibernate.engine.jdbc.spi.JdbcCoordinator.getStatementPreparer:()Lorg/hibernate/engine/jdbc/spi/StatementPreparer;
25: aload 4
iconst_0
invokeinterface org.hibernate.engine.jdbc.spi.StatementPreparer.prepareStatement:(Ljava/lang/String;Z)Ljava/sql/PreparedStatement;
26: astore 5
start local 5 27: aload 0
aload 2
aload 5
aload 3
invokeinterface org.hibernate.id.insert.Binder.getEntity:()Ljava/lang/Object;
invokevirtual org.hibernate.id.insert.AbstractSelectingDelegate.bindParameters:(Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/sql/PreparedStatement;Ljava/lang/Object;)V
28: 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 5
invokeinterface org.hibernate.engine.jdbc.spi.ResultSetReturn.extract:(Ljava/sql/PreparedStatement;)Ljava/sql/ResultSet;
astore 6
start local 6 29: aload 0
aload 2
aload 6
aload 3
invokeinterface org.hibernate.id.insert.Binder.getEntity:()Ljava/lang/Object;
invokevirtual org.hibernate.id.insert.AbstractSelectingDelegate.getResult:(Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/sql/ResultSet;Ljava/lang/Object;)Ljava/io/Serializable;
astore 8
30: 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 6
aload 5
invokeinterface org.hibernate.resource.jdbc.ResourceRegistry.release:(Ljava/sql/ResultSet;Ljava/sql/Statement;)V
31: 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 5
invokeinterface org.hibernate.resource.jdbc.ResourceRegistry.release:(Ljava/sql/Statement;)V
32: aload 2
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcCoordinator:()Lorg/hibernate/engine/jdbc/spi/JdbcCoordinator;
invokeinterface org.hibernate.engine.jdbc.spi.JdbcCoordinator.afterStatementExecution:()V
33: aload 8
areturn
34: StackMap locals: org.hibernate.id.insert.AbstractSelectingDelegate java.lang.String org.hibernate.engine.spi.SharedSessionContractImplementor org.hibernate.id.insert.Binder java.lang.String java.sql.PreparedStatement java.sql.ResultSet
StackMap stack: java.lang.Throwable
astore 7
35: 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 6
aload 5
invokeinterface org.hibernate.resource.jdbc.ResourceRegistry.release:(Ljava/sql/ResultSet;Ljava/sql/Statement;)V
36: aload 7
athrow
end local 6 37: StackMap locals: org.hibernate.id.insert.AbstractSelectingDelegate java.lang.String org.hibernate.engine.spi.SharedSessionContractImplementor org.hibernate.id.insert.Binder java.lang.String java.sql.PreparedStatement
StackMap stack: java.lang.Throwable
astore 9
38: 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 5
invokeinterface org.hibernate.resource.jdbc.ResourceRegistry.release:(Ljava/sql/Statement;)V
39: aload 2
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcCoordinator:()Lorg/hibernate/engine/jdbc/spi/JdbcCoordinator;
invokeinterface org.hibernate.engine.jdbc.spi.JdbcCoordinator.afterStatementExecution:()V
40: aload 9
athrow
end local 5 41: StackMap locals: org.hibernate.id.insert.AbstractSelectingDelegate java.lang.String org.hibernate.engine.spi.SharedSessionContractImplementor org.hibernate.id.insert.Binder java.lang.String
StackMap stack: java.sql.SQLException
astore 5
start local 5 42: aload 2
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcServices:()Lorg/hibernate/engine/jdbc/spi/JdbcServices;
invokeinterface org.hibernate.engine.jdbc.spi.JdbcServices.getSqlExceptionHelper:()Lorg/hibernate/engine/jdbc/spi/SqlExceptionHelper;
43: aload 5
44: new java.lang.StringBuilder
dup
ldc "could not retrieve generated id after insert: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.hibernate.id.insert.AbstractSelectingDelegate.persister:Lorg/hibernate/id/PostInsertIdentityPersister;
invokestatic org.hibernate.pretty.MessageHelper.infoString:(Lorg/hibernate/persister/entity/EntityPersister;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
45: aload 1
46: invokevirtual org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert:(Ljava/sql/SQLException;Ljava/lang/String;Ljava/lang/String;)Lorg/hibernate/JDBCException;
athrow
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 47 0 this Lorg/hibernate/id/insert/AbstractSelectingDelegate;
0 47 1 insertSQL Ljava/lang/String;
0 47 2 session Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
0 47 3 binder Lorg/hibernate/id/insert/Binder;
5 14 4 insert Ljava/sql/PreparedStatement;
16 21 4 sqle Ljava/sql/SQLException;
22 47 4 selectSQL Ljava/lang/String;
27 41 5 idSelect Ljava/sql/PreparedStatement;
29 37 6 rs Ljava/sql/ResultSet;
42 47 5 sqle Ljava/sql/SQLException;
Exception table:
from to target type
5 8 8 any
0 14 15 Class java.sql.SQLException
29 30 34 any
27 31 37 any
34 37 37 any
22 33 41 Class java.sql.SQLException
34 41 41 Class java.sql.SQLException
MethodParameters:
Name Flags
insertSQL
session
binder
protected abstract java.lang.String getSelectSQL();
descriptor: ()Ljava/lang/String;
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
protected void bindParameters(org.hibernate.engine.spi.SharedSessionContractImplementor, java.sql.PreparedStatement, java.lang.Object);
descriptor: (Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/sql/PreparedStatement;Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=0, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/id/insert/AbstractSelectingDelegate;
0 1 1 session Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
0 1 2 ps Ljava/sql/PreparedStatement;
0 1 3 entity Ljava/lang/Object;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
session
ps
entity
protected abstract java.io.Serializable getResult(org.hibernate.engine.spi.SharedSessionContractImplementor, java.sql.ResultSet, java.lang.Object);
descriptor: (Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/sql/ResultSet;Ljava/lang/Object;)Ljava/io/Serializable;
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
session
rs
entity
}
SourceFile: "AbstractSelectingDelegate.java"