public class org.hibernate.procedure.internal.StandardCallableStatementSupport implements org.hibernate.procedure.spi.CallableStatementSupport
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.hibernate.procedure.internal.StandardCallableStatementSupport
super_class: java.lang.Object
{
public static final org.hibernate.procedure.internal.StandardCallableStatementSupport NO_REF_CURSOR_INSTANCE;
descriptor: Lorg/hibernate/procedure/internal/StandardCallableStatementSupport;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.hibernate.procedure.internal.StandardCallableStatementSupport REF_CURSOR_INSTANCE;
descriptor: Lorg/hibernate/procedure/internal/StandardCallableStatementSupport;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private final boolean supportsRefCursors;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: new org.hibernate.procedure.internal.StandardCallableStatementSupport
dup
iconst_0
invokespecial org.hibernate.procedure.internal.StandardCallableStatementSupport.<init>:(Z)V
putstatic org.hibernate.procedure.internal.StandardCallableStatementSupport.NO_REF_CURSOR_INSTANCE:Lorg/hibernate/procedure/internal/StandardCallableStatementSupport;
1: new org.hibernate.procedure.internal.StandardCallableStatementSupport
dup
iconst_1
invokespecial org.hibernate.procedure.internal.StandardCallableStatementSupport.<init>:(Z)V
putstatic org.hibernate.procedure.internal.StandardCallableStatementSupport.REF_CURSOR_INSTANCE:Lorg/hibernate/procedure/internal/StandardCallableStatementSupport;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
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
iload 1
putfield org.hibernate.procedure.internal.StandardCallableStatementSupport.supportsRefCursors:Z
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/hibernate/procedure/internal/StandardCallableStatementSupport;
0 3 1 supportsRefCursors Z
MethodParameters:
Name Flags
supportsRefCursors
public java.lang.String renderCallableStatement(java.lang.String, org.hibernate.procedure.spi.ParameterStrategy, java.util.List<org.hibernate.procedure.spi.ParameterRegistrationImplementor<?>>, org.hibernate.engine.spi.SharedSessionContractImplementor);
descriptor: (Ljava/lang/String;Lorg/hibernate/procedure/spi/ParameterStrategy;Ljava/util/List;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=10, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
ldc "{call "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: ldc "("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: astore 5
start local 5 4: ldc ""
astore 6
start local 6 5: aload 3
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 8
goto 20
StackMap locals: org.hibernate.procedure.internal.StandardCallableStatementSupport java.lang.String org.hibernate.procedure.spi.ParameterStrategy java.util.List org.hibernate.engine.spi.SharedSessionContractImplementor java.lang.StringBuilder java.lang.String top java.util.Iterator
StackMap stack:
6: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.hibernate.procedure.spi.ParameterRegistrationImplementor
astore 7
start local 7 7: aload 7
ifnonnull 9
8: new org.hibernate.QueryException
dup
ldc "Parameter registrations had gaps"
invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals: org.hibernate.procedure.internal.StandardCallableStatementSupport java.lang.String org.hibernate.procedure.spi.ParameterStrategy java.util.List org.hibernate.engine.spi.SharedSessionContractImplementor java.lang.StringBuilder java.lang.String org.hibernate.procedure.spi.ParameterRegistrationImplementor java.util.Iterator
StackMap stack:
aload 7
invokeinterface org.hibernate.procedure.spi.ParameterRegistrationImplementor.getMode:()Ljavax/persistence/ParameterMode;
getstatic javax.persistence.ParameterMode.REF_CURSOR:Ljavax/persistence/ParameterMode;
if_acmpne 14
10: aload 0
aload 4
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;
invokevirtual org.hibernate.procedure.internal.StandardCallableStatementSupport.verifyRefCursorSupport:(Lorg/hibernate/dialect/Dialect;)V
11: aload 5
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "?"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
12: ldc ","
astore 6
13: goto 20
14: StackMap locals:
StackMap stack:
iconst_0
istore 9
start local 9 15: goto 19
16: StackMap locals: int
StackMap stack:
aload 5
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "?"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
17: ldc ","
astore 6
18: iinc 9 1
StackMap locals:
StackMap stack:
19: iload 9
aload 7
invokeinterface org.hibernate.procedure.spi.ParameterRegistrationImplementor.getSqlTypes:()[I
arraylength
if_icmplt 16
end local 9 end local 7 20: StackMap locals: org.hibernate.procedure.internal.StandardCallableStatementSupport java.lang.String org.hibernate.procedure.spi.ParameterStrategy java.util.List org.hibernate.engine.spi.SharedSessionContractImplementor java.lang.StringBuilder java.lang.String top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
21: aload 5
ldc ")}"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
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 22 0 this Lorg/hibernate/procedure/internal/StandardCallableStatementSupport;
0 22 1 procedureName Ljava/lang/String;
0 22 2 parameterStrategy Lorg/hibernate/procedure/spi/ParameterStrategy;
0 22 3 parameterRegistrations Ljava/util/List<Lorg/hibernate/procedure/spi/ParameterRegistrationImplementor<*>;>;
0 22 4 session Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
4 22 5 buffer Ljava/lang/StringBuilder;
5 22 6 sep Ljava/lang/String;
7 20 7 parameter Lorg/hibernate/procedure/spi/ParameterRegistrationImplementor;
15 20 9 i I
Signature: (Ljava/lang/String;Lorg/hibernate/procedure/spi/ParameterStrategy;Ljava/util/List<Lorg/hibernate/procedure/spi/ParameterRegistrationImplementor<*>;>;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/lang/String;
MethodParameters:
Name Flags
procedureName
parameterStrategy
parameterRegistrations
session
private void verifyRefCursorSupport(org.hibernate.dialect.Dialect);
descriptor: (Lorg/hibernate/dialect/Dialect;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.hibernate.procedure.internal.StandardCallableStatementSupport.supportsRefCursors:Z
ifne 2
1: new org.hibernate.QueryException
dup
new java.lang.StringBuilder
dup
ldc "Dialect ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "] not known to support REF_CURSOR parameters"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/hibernate/procedure/internal/StandardCallableStatementSupport;
0 3 1 dialect Lorg/hibernate/dialect/Dialect;
MethodParameters:
Name Flags
dialect
public void registerParameters(java.lang.String, java.sql.CallableStatement, org.hibernate.procedure.spi.ParameterStrategy, java.util.List<org.hibernate.procedure.spi.ParameterRegistrationImplementor<?>>, org.hibernate.engine.spi.SharedSessionContractImplementor);
descriptor: (Ljava/lang/String;Ljava/sql/CallableStatement;Lorg/hibernate/procedure/spi/ParameterStrategy;Ljava/util/List;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: iconst_1
istore 6
start local 6 1: aload 4
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 8
goto 8
StackMap locals: org.hibernate.procedure.internal.StandardCallableStatementSupport java.lang.String java.sql.CallableStatement org.hibernate.procedure.spi.ParameterStrategy java.util.List org.hibernate.engine.spi.SharedSessionContractImplementor int top java.util.Iterator
StackMap stack:
2: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.hibernate.procedure.spi.ParameterRegistrationImplementor
astore 7
start local 7 3: aload 7
aload 2
iload 6
invokeinterface org.hibernate.procedure.spi.ParameterRegistrationImplementor.prepare:(Ljava/sql/CallableStatement;I)V
4: aload 7
invokeinterface org.hibernate.procedure.spi.ParameterRegistrationImplementor.getMode:()Ljavax/persistence/ParameterMode;
getstatic javax.persistence.ParameterMode.REF_CURSOR:Ljavax/persistence/ParameterMode;
if_acmpne 7
5: iinc 6 1
6: goto 8
7: StackMap locals: org.hibernate.procedure.internal.StandardCallableStatementSupport java.lang.String java.sql.CallableStatement org.hibernate.procedure.spi.ParameterStrategy java.util.List org.hibernate.engine.spi.SharedSessionContractImplementor int org.hibernate.procedure.spi.ParameterRegistrationImplementor java.util.Iterator
StackMap stack:
iload 6
aload 7
invokeinterface org.hibernate.procedure.spi.ParameterRegistrationImplementor.getSqlTypes:()[I
arraylength
iadd
istore 6
end local 7 8: StackMap locals: org.hibernate.procedure.internal.StandardCallableStatementSupport java.lang.String java.sql.CallableStatement org.hibernate.procedure.spi.ParameterStrategy java.util.List org.hibernate.engine.spi.SharedSessionContractImplementor int top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
9: goto 16
10: StackMap locals: org.hibernate.procedure.internal.StandardCallableStatementSupport java.lang.String java.sql.CallableStatement org.hibernate.procedure.spi.ParameterStrategy java.util.List org.hibernate.engine.spi.SharedSessionContractImplementor int
StackMap stack: java.sql.SQLException
astore 7
start local 7 11: aload 5
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;
12: aload 7
13: ldc "Error registering CallableStatement parameters"
14: aload 1
15: invokevirtual org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert:(Ljava/sql/SQLException;Ljava/lang/String;Ljava/lang/String;)Lorg/hibernate/JDBCException;
athrow
end local 7 16: StackMap locals:
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 17 0 this Lorg/hibernate/procedure/internal/StandardCallableStatementSupport;
0 17 1 procedureName Ljava/lang/String;
0 17 2 statement Ljava/sql/CallableStatement;
0 17 3 parameterStrategy Lorg/hibernate/procedure/spi/ParameterStrategy;
0 17 4 parameterRegistrations Ljava/util/List<Lorg/hibernate/procedure/spi/ParameterRegistrationImplementor<*>;>;
0 17 5 session Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
1 17 6 i I
3 8 7 parameter Lorg/hibernate/procedure/spi/ParameterRegistrationImplementor;
11 16 7 e Ljava/sql/SQLException;
Exception table:
from to target type
1 9 10 Class java.sql.SQLException
Signature: (Ljava/lang/String;Ljava/sql/CallableStatement;Lorg/hibernate/procedure/spi/ParameterStrategy;Ljava/util/List<Lorg/hibernate/procedure/spi/ParameterRegistrationImplementor<*>;>;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)V
MethodParameters:
Name Flags
procedureName
statement
parameterStrategy
parameterRegistrations
session
}
SourceFile: "StandardCallableStatementSupport.java"