public class org.hibernate.id.MultipleHiLoPerTableGenerator implements org.hibernate.id.PersistentIdentifierGenerator, org.hibernate.id.Configurable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.hibernate.id.MultipleHiLoPerTableGenerator
super_class: java.lang.Object
{
private static final org.hibernate.internal.CoreMessageLogger LOG;
descriptor: Lorg/hibernate/internal/CoreMessageLogger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
public static final java.lang.String ID_TABLE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "table"
public static final java.lang.String PK_COLUMN_NAME;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "primary_key_column"
public static final java.lang.String PK_VALUE_NAME;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "primary_key_value"
public static final java.lang.String VALUE_COLUMN_NAME;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "value_column"
public static final java.lang.String PK_LENGTH_NAME;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "primary_key_length"
private static final int DEFAULT_PK_LENGTH;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 255
public static final java.lang.String DEFAULT_TABLE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "hibernate_sequences"
private static final java.lang.String DEFAULT_PK_COLUMN;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "sequence_name"
private static final java.lang.String DEFAULT_VALUE_COLUMN;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "sequence_next_hi_value"
private org.hibernate.boot.model.relational.QualifiedName qualifiedTableName;
descriptor: Lorg/hibernate/boot/model/relational/QualifiedName;
flags: (0x0002) ACC_PRIVATE
private java.lang.String tableName;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String segmentColumnName;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String segmentName;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String valueColumnName;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String query;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String insert;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String update;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
public static final java.lang.String MAX_LO;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "max_lo"
private int maxLo;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private org.hibernate.id.enhanced.LegacyHiLoAlgorithmOptimizer hiloOptimizer;
descriptor: Lorg/hibernate/id/enhanced/LegacyHiLoAlgorithmOptimizer;
flags: (0x0002) ACC_PRIVATE
private java.lang.Class returnClass;
descriptor: Ljava/lang/Class;
flags: (0x0002) ACC_PRIVATE
private int keySize;
descriptor: I
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
invokestatic org.hibernate.internal.CoreLogging.messageLogger:(Ljava/lang/Class;)Lorg/hibernate/internal/CoreMessageLogger;
putstatic org.hibernate.id.MultipleHiLoPerTableGenerator.LOG:Lorg/hibernate/internal/CoreMessageLogger;
1: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
public synchronized java.io.Serializable generate(org.hibernate.engine.spi.SharedSessionContractImplementor, java.lang.Object);
descriptor: (Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/lang/Object;)Ljava/io/Serializable;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=6, locals=7, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.hibernate.internal.log.DeprecationLogger.DEPRECATION_LOGGER:Lorg/hibernate/internal/log/DeprecationLogger;
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokeinterface org.hibernate.internal.log.DeprecationLogger.deprecatedTableGenerator:(Ljava/lang/String;)V
1: aload 1
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
invokeinterface org.hibernate.engine.spi.SessionFactoryImplementor.getServiceRegistry:()Lorg/hibernate/service/spi/ServiceRegistryImplementor;
2: ldc Lorg/hibernate/engine/jdbc/spi/JdbcServices;
invokeinterface org.hibernate.service.spi.ServiceRegistryImplementor.getService:(Ljava/lang/Class;)Lorg/hibernate/service/Service;
checkcast org.hibernate.engine.jdbc.spi.JdbcServices
3: invokeinterface org.hibernate.engine.jdbc.spi.JdbcServices.getSqlStatementLogger:()Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;
4: astore 3
start local 3 5: aload 1
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getEventListenerManager:()Lorg/hibernate/engine/spi/SessionEventListenerManager;
astore 4
start local 4 6: new org.hibernate.id.MultipleHiLoPerTableGenerator$1
dup
aload 0
aload 3
aload 4
invokespecial org.hibernate.id.MultipleHiLoPerTableGenerator$1.<init>:(Lorg/hibernate/id/MultipleHiLoPerTableGenerator;Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;Lorg/hibernate/engine/spi/SessionEventListenerManager;)V
astore 5
start local 5 7: aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.maxLo:I
iconst_1
if_icmpge 13
8: aconst_null
astore 6
start local 6 9: goto 11
10: StackMap locals: org.hibernate.id.MultipleHiLoPerTableGenerator org.hibernate.engine.spi.SharedSessionContractImplementor java.lang.Object org.hibernate.engine.jdbc.spi.SqlStatementLogger org.hibernate.engine.spi.SessionEventListenerManager org.hibernate.jdbc.WorkExecutorVisitable org.hibernate.id.IntegralDataTypeHolder
StackMap stack:
aload 1
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getTransactionCoordinator:()Lorg/hibernate/resource/transaction/spi/TransactionCoordinator;
invokeinterface org.hibernate.resource.transaction.spi.TransactionCoordinator.createIsolationDelegate:()Lorg/hibernate/engine/transaction/spi/IsolationDelegate;
aload 5
iconst_1
invokeinterface org.hibernate.engine.transaction.spi.IsolationDelegate.delegateWork:(Lorg/hibernate/jdbc/WorkExecutorVisitable;Z)Ljava/lang/Object;
checkcast org.hibernate.id.IntegralDataTypeHolder
astore 6
11: StackMap locals:
StackMap stack:
aload 6
ifnull 10
aload 6
lconst_1
invokeinterface org.hibernate.id.IntegralDataTypeHolder.lt:(J)Z
ifne 10
12: aload 6
invokeinterface org.hibernate.id.IntegralDataTypeHolder.makeValue:()Ljava/lang/Number;
areturn
end local 6 13: StackMap locals:
StackMap stack:
aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.hiloOptimizer:Lorg/hibernate/id/enhanced/LegacyHiLoAlgorithmOptimizer;
14: new org.hibernate.id.MultipleHiLoPerTableGenerator$2
dup
aload 0
aload 1
aload 5
invokespecial org.hibernate.id.MultipleHiLoPerTableGenerator$2.<init>:(Lorg/hibernate/id/MultipleHiLoPerTableGenerator;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Lorg/hibernate/jdbc/WorkExecutorVisitable;)V
15: invokevirtual org.hibernate.id.enhanced.LegacyHiLoAlgorithmOptimizer.generate:(Lorg/hibernate/id/enhanced/AccessCallback;)Ljava/io/Serializable;
areturn
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 16 0 this Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
0 16 1 session Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
0 16 2 obj Ljava/lang/Object;
5 16 3 statementLogger Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;
6 16 4 statsCollector Lorg/hibernate/engine/spi/SessionEventListenerManager;
7 16 5 work Lorg/hibernate/jdbc/WorkExecutorVisitable<Lorg/hibernate/id/IntegralDataTypeHolder;>;
9 13 6 value Lorg/hibernate/id/IntegralDataTypeHolder;
MethodParameters:
Name Flags
session final
obj
private java.sql.PreparedStatement prepareStatement(java.sql.Connection, java.lang.String, org.hibernate.engine.jdbc.spi.SqlStatementLogger, org.hibernate.engine.spi.SessionEventListenerManager);
descriptor: (Ljava/sql/Connection;Ljava/lang/String;Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;Lorg/hibernate/engine/spi/SessionEventListenerManager;)Ljava/sql/PreparedStatement;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 3
aload 2
getstatic org.hibernate.engine.jdbc.internal.FormatStyle.BASIC:Lorg/hibernate/engine/jdbc/internal/FormatStyle;
invokevirtual org.hibernate.engine.jdbc.internal.FormatStyle.getFormatter:()Lorg/hibernate/engine/jdbc/internal/Formatter;
invokevirtual org.hibernate.engine.jdbc.spi.SqlStatementLogger.logStatement:(Ljava/lang/String;Lorg/hibernate/engine/jdbc/internal/Formatter;)V
1: aload 4
invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcPrepareStatementStart:()V
2: aload 1
aload 2
invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
astore 6
3: aload 4
invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcPrepareStatementEnd:()V
4: aload 6
areturn
5: StackMap locals:
StackMap stack: java.lang.Throwable
astore 5
6: aload 4
invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcPrepareStatementEnd:()V
7: aload 5
athrow
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/id/MultipleHiLoPerTableGenerator;
0 8 1 connection Ljava/sql/Connection;
0 8 2 sql Ljava/lang/String;
0 8 3 statementLogger Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;
0 8 4 statsCollector Lorg/hibernate/engine/spi/SessionEventListenerManager;
Exception table:
from to target type
1 3 5 any
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
connection
sql
statementLogger
statsCollector
private int executeUpdate(java.sql.PreparedStatement, org.hibernate.engine.spi.SessionEventListenerManager);
descriptor: (Ljava/sql/PreparedStatement;Lorg/hibernate/engine/spi/SessionEventListenerManager;)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcExecuteStatementStart:()V
1: aload 1
invokeinterface java.sql.PreparedStatement.executeUpdate:()I
istore 4
2: aload 2
invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcExecuteStatementEnd:()V
3: iload 4
ireturn
4: StackMap locals:
StackMap stack: java.lang.Throwable
astore 3
5: aload 2
invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcExecuteStatementEnd:()V
6: aload 3
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
0 7 1 ps Ljava/sql/PreparedStatement;
0 7 2 statsCollector Lorg/hibernate/engine/spi/SessionEventListenerManager;
Exception table:
from to target type
0 2 4 any
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
ps
statsCollector
private java.sql.ResultSet executeQuery(java.sql.PreparedStatement, org.hibernate.engine.spi.SessionEventListenerManager);
descriptor: (Ljava/sql/PreparedStatement;Lorg/hibernate/engine/spi/SessionEventListenerManager;)Ljava/sql/ResultSet;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcExecuteStatementStart:()V
1: aload 1
invokeinterface java.sql.PreparedStatement.executeQuery:()Ljava/sql/ResultSet;
astore 4
2: aload 2
invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcExecuteStatementEnd:()V
3: aload 4
areturn
4: StackMap locals:
StackMap stack: java.lang.Throwable
astore 3
5: aload 2
invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.jdbcExecuteStatementEnd:()V
6: aload 3
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
0 7 1 ps Ljava/sql/PreparedStatement;
0 7 2 statsCollector Lorg/hibernate/engine/spi/SessionEventListenerManager;
Exception table:
from to target type
0 2 4 any
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
ps
statsCollector
public void configure(org.hibernate.type.Type, java.util.Properties, org.hibernate.service.ServiceRegistry);
descriptor: (Lorg/hibernate/type/Type;Ljava/util/Properties;Lorg/hibernate/service/ServiceRegistry;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
invokeinterface org.hibernate.type.Type.getReturnedClass:()Ljava/lang/Class;
putfield org.hibernate.id.MultipleHiLoPerTableGenerator.returnClass:Ljava/lang/Class;
1: aload 3
ldc Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
invokeinterface org.hibernate.service.ServiceRegistry.getService:(Ljava/lang/Class;)Lorg/hibernate/service/Service;
checkcast org.hibernate.engine.jdbc.env.spi.JdbcEnvironment
astore 4
start local 4 2: aload 0
aload 0
aload 2
aload 4
invokevirtual org.hibernate.id.MultipleHiLoPerTableGenerator.determineGeneratorTableName:(Ljava/util/Properties;Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;)Lorg/hibernate/boot/model/relational/QualifiedName;
putfield org.hibernate.id.MultipleHiLoPerTableGenerator.qualifiedTableName:Lorg/hibernate/boot/model/relational/QualifiedName;
3: aload 0
aload 0
aload 2
aload 4
invokevirtual org.hibernate.id.MultipleHiLoPerTableGenerator.determineSegmentColumnName:(Ljava/util/Properties;Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;)Ljava/lang/String;
putfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentColumnName:Ljava/lang/String;
4: aload 0
ldc "primary_key_length"
aload 2
sipush 255
invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getInt:(Ljava/lang/String;Ljava/util/Map;I)I
putfield org.hibernate.id.MultipleHiLoPerTableGenerator.keySize:I
5: aload 0
ldc "primary_key_value"
aload 2
aload 2
ldc "target_table"
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getString:(Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String;
putfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentName:Ljava/lang/String;
6: aload 0
aload 0
aload 2
aload 4
invokevirtual org.hibernate.id.MultipleHiLoPerTableGenerator.determineValueColumnName:(Ljava/util/Properties;Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;)Ljava/lang/String;
putfield org.hibernate.id.MultipleHiLoPerTableGenerator.valueColumnName:Ljava/lang/String;
7: aload 0
ldc "max_lo"
aload 2
sipush 32767
invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getInt:(Ljava/lang/String;Ljava/util/Map;I)I
putfield org.hibernate.id.MultipleHiLoPerTableGenerator.maxLo:I
8: aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.maxLo:I
iconst_1
if_icmplt 10
9: aload 0
new org.hibernate.id.enhanced.LegacyHiLoAlgorithmOptimizer
dup
aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.returnClass:Ljava/lang/Class;
aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.maxLo:I
invokespecial org.hibernate.id.enhanced.LegacyHiLoAlgorithmOptimizer.<init>:(Ljava/lang/Class;I)V
putfield org.hibernate.id.MultipleHiLoPerTableGenerator.hiloOptimizer:Lorg/hibernate/id/enhanced/LegacyHiLoAlgorithmOptimizer;
10: StackMap locals: org.hibernate.engine.jdbc.env.spi.JdbcEnvironment
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
0 11 1 type Lorg/hibernate/type/Type;
0 11 2 params Ljava/util/Properties;
0 11 3 serviceRegistry Lorg/hibernate/service/ServiceRegistry;
2 11 4 jdbcEnvironment Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
Exceptions:
throws org.hibernate.MappingException
MethodParameters:
Name Flags
type
params
serviceRegistry
protected org.hibernate.boot.model.relational.QualifiedName determineGeneratorTableName(java.util.Properties, org.hibernate.engine.jdbc.env.spi.JdbcEnvironment);
descriptor: (Ljava/util/Properties;Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;)Lorg/hibernate/boot/model/relational/QualifiedName;
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 2 0: ldc "table"
aload 1
ldc "hibernate_sequences"
invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getString:(Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 1: aload 3
ldc "."
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 3
2: getstatic org.hibernate.boot.model.relational.QualifiedNameParser.INSTANCE:Lorg/hibernate/boot/model/relational/QualifiedNameParser;
aload 3
invokevirtual org.hibernate.boot.model.relational.QualifiedNameParser.parse:(Ljava/lang/String;)Lorg/hibernate/boot/model/relational/QualifiedNameParser$NameParts;
areturn
3: StackMap locals: java.lang.String
StackMap stack:
aload 2
invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getIdentifierHelper:()Lorg/hibernate/engine/jdbc/env/spi/IdentifierHelper;
4: ldc "catalog"
aload 1
invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getString:(Ljava/lang/String;Ljava/util/Map;)Ljava/lang/String;
5: invokeinterface org.hibernate.engine.jdbc.env.spi.IdentifierHelper.toIdentifier:(Ljava/lang/String;)Lorg/hibernate/boot/model/naming/Identifier;
astore 4
start local 4 6: aload 2
invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getIdentifierHelper:()Lorg/hibernate/engine/jdbc/env/spi/IdentifierHelper;
7: ldc "schema"
aload 1
invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getString:(Ljava/lang/String;Ljava/util/Map;)Ljava/lang/String;
8: invokeinterface org.hibernate.engine.jdbc.env.spi.IdentifierHelper.toIdentifier:(Ljava/lang/String;)Lorg/hibernate/boot/model/naming/Identifier;
astore 5
start local 5 9: new org.hibernate.boot.model.relational.QualifiedNameParser$NameParts
dup
10: aload 4
11: aload 5
12: aload 2
invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getIdentifierHelper:()Lorg/hibernate/engine/jdbc/env/spi/IdentifierHelper;
aload 3
invokeinterface org.hibernate.engine.jdbc.env.spi.IdentifierHelper.toIdentifier:(Ljava/lang/String;)Lorg/hibernate/boot/model/naming/Identifier;
13: invokespecial org.hibernate.boot.model.relational.QualifiedNameParser$NameParts.<init>:(Lorg/hibernate/boot/model/naming/Identifier;Lorg/hibernate/boot/model/naming/Identifier;Lorg/hibernate/boot/model/naming/Identifier;)V
areturn
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 14 0 this Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
0 14 1 params Ljava/util/Properties;
0 14 2 jdbcEnvironment Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
1 14 3 tableName Ljava/lang/String;
6 14 4 catalog Lorg/hibernate/boot/model/naming/Identifier;
9 14 5 schema Lorg/hibernate/boot/model/naming/Identifier;
MethodParameters:
Name Flags
params
jdbcEnvironment
protected java.lang.String determineSegmentColumnName(java.util.Properties, org.hibernate.engine.jdbc.env.spi.JdbcEnvironment);
descriptor: (Ljava/util/Properties;Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;)Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: ldc "primary_key_column"
aload 1
ldc "sequence_name"
invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getString:(Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 1: aload 2
invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getIdentifierHelper:()Lorg/hibernate/engine/jdbc/env/spi/IdentifierHelper;
aload 3
invokeinterface org.hibernate.engine.jdbc.env.spi.IdentifierHelper.toIdentifier:(Ljava/lang/String;)Lorg/hibernate/boot/model/naming/Identifier;
aload 2
invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getDialect:()Lorg/hibernate/dialect/Dialect;
invokevirtual org.hibernate.boot.model.naming.Identifier.render:(Lorg/hibernate/dialect/Dialect;)Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
0 2 1 params Ljava/util/Properties;
0 2 2 jdbcEnvironment Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
1 2 3 name Ljava/lang/String;
MethodParameters:
Name Flags
params
jdbcEnvironment
protected java.lang.String determineValueColumnName(java.util.Properties, org.hibernate.engine.jdbc.env.spi.JdbcEnvironment);
descriptor: (Ljava/util/Properties;Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;)Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: ldc "value_column"
aload 1
ldc "sequence_next_hi_value"
invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getString:(Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 1: aload 2
invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getIdentifierHelper:()Lorg/hibernate/engine/jdbc/env/spi/IdentifierHelper;
aload 3
invokeinterface org.hibernate.engine.jdbc.env.spi.IdentifierHelper.toIdentifier:(Ljava/lang/String;)Lorg/hibernate/boot/model/naming/Identifier;
aload 2
invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getDialect:()Lorg/hibernate/dialect/Dialect;
invokevirtual org.hibernate.boot.model.naming.Identifier.render:(Lorg/hibernate/dialect/Dialect;)Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
0 2 1 params Ljava/util/Properties;
0 2 2 jdbcEnvironment Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
1 2 3 name Ljava/lang/String;
MethodParameters:
Name Flags
params
jdbcEnvironment
public void registerExportables(org.hibernate.boot.model.relational.Database);
descriptor: (Lorg/hibernate/boot/model/relational/Database;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=12, locals=6, args_size=2
start local 0 start local 1 0: aload 1
1: aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.qualifiedTableName:Lorg/hibernate/boot/model/relational/QualifiedName;
invokeinterface org.hibernate.boot.model.relational.QualifiedName.getCatalogName:()Lorg/hibernate/boot/model/naming/Identifier;
2: aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.qualifiedTableName:Lorg/hibernate/boot/model/relational/QualifiedName;
invokeinterface org.hibernate.boot.model.relational.QualifiedName.getSchemaName:()Lorg/hibernate/boot/model/naming/Identifier;
3: invokevirtual org.hibernate.boot.model.relational.Database.locateNamespace:(Lorg/hibernate/boot/model/naming/Identifier;Lorg/hibernate/boot/model/naming/Identifier;)Lorg/hibernate/boot/model/relational/Namespace;
astore 2
start local 2 4: aload 2
aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.qualifiedTableName:Lorg/hibernate/boot/model/relational/QualifiedName;
invokeinterface org.hibernate.boot.model.relational.QualifiedName.getObjectName:()Lorg/hibernate/boot/model/naming/Identifier;
invokevirtual org.hibernate.boot.model.relational.Namespace.locateTable:(Lorg/hibernate/boot/model/naming/Identifier;)Lorg/hibernate/mapping/Table;
astore 3
start local 3 5: aload 3
ifnonnull 25
6: aload 2
aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.qualifiedTableName:Lorg/hibernate/boot/model/relational/QualifiedName;
invokeinterface org.hibernate.boot.model.relational.QualifiedName.getObjectName:()Lorg/hibernate/boot/model/naming/Identifier;
iconst_0
invokevirtual org.hibernate.boot.model.relational.Namespace.createTable:(Lorg/hibernate/boot/model/naming/Identifier;Z)Lorg/hibernate/mapping/Table;
astore 3
7: aload 3
new org.hibernate.mapping.PrimaryKey
dup
aload 3
invokespecial org.hibernate.mapping.PrimaryKey.<init>:(Lorg/hibernate/mapping/Table;)V
invokevirtual org.hibernate.mapping.Table.setPrimaryKey:(Lorg/hibernate/mapping/PrimaryKey;)V
8: new org.hibernate.id.ExportableColumn
dup
9: aload 1
10: aload 3
11: aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentColumnName:Ljava/lang/String;
12: getstatic org.hibernate.type.StringType.INSTANCE:Lorg/hibernate/type/StringType;
13: aload 1
invokevirtual org.hibernate.boot.model.relational.Database.getDialect:()Lorg/hibernate/dialect/Dialect;
bipush 12
aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.keySize:I
i2l
iconst_0
iconst_0
invokevirtual org.hibernate.dialect.Dialect.getTypeName:(IJII)Ljava/lang/String;
14: invokespecial org.hibernate.id.ExportableColumn.<init>:(Lorg/hibernate/boot/model/relational/Database;Lorg/hibernate/mapping/Table;Ljava/lang/String;Lorg/hibernate/type/BasicType;Ljava/lang/String;)V
astore 4
start local 4 15: aload 4
iconst_0
invokevirtual org.hibernate.mapping.Column.setNullable:(Z)V
16: aload 3
aload 4
invokevirtual org.hibernate.mapping.Table.addColumn:(Lorg/hibernate/mapping/Column;)V
17: aload 3
invokevirtual org.hibernate.mapping.Table.getPrimaryKey:()Lorg/hibernate/mapping/PrimaryKey;
aload 4
invokevirtual org.hibernate.mapping.PrimaryKey.addColumn:(Lorg/hibernate/mapping/Column;)V
18: new org.hibernate.id.ExportableColumn
dup
19: aload 1
20: aload 3
21: aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.valueColumnName:Ljava/lang/String;
22: getstatic org.hibernate.type.LongType.INSTANCE:Lorg/hibernate/type/LongType;
23: invokespecial org.hibernate.id.ExportableColumn.<init>:(Lorg/hibernate/boot/model/relational/Database;Lorg/hibernate/mapping/Table;Ljava/lang/String;Lorg/hibernate/type/BasicType;)V
astore 5
start local 5 24: aload 3
aload 5
invokevirtual org.hibernate.mapping.Table.addColumn:(Lorg/hibernate/mapping/Column;)V
end local 5 end local 4 25: StackMap locals: org.hibernate.boot.model.relational.Namespace org.hibernate.mapping.Table
StackMap stack:
aload 1
invokevirtual org.hibernate.boot.model.relational.Database.getJdbcEnvironment:()Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
astore 4
start local 4 26: aload 0
aload 4
invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getQualifiedObjectNameFormatter:()Lorg/hibernate/engine/jdbc/env/spi/QualifiedObjectNameFormatter;
27: aload 3
invokevirtual org.hibernate.mapping.Table.getQualifiedTableName:()Lorg/hibernate/boot/model/relational/QualifiedTableName;
28: aload 4
invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getDialect:()Lorg/hibernate/dialect/Dialect;
29: invokeinterface org.hibernate.engine.jdbc.env.spi.QualifiedObjectNameFormatter.format:(Lorg/hibernate/boot/model/relational/QualifiedTableName;Lorg/hibernate/dialect/Dialect;)Ljava/lang/String;
putfield org.hibernate.id.MultipleHiLoPerTableGenerator.tableName:Ljava/lang/String;
30: aload 0
new java.lang.StringBuilder
dup
ldc "select "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
31: aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.valueColumnName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
32: ldc " from "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
33: aload 4
invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getDialect:()Lorg/hibernate/dialect/Dialect;
getstatic org.hibernate.LockMode.PESSIMISTIC_WRITE:Lorg/hibernate/LockMode;
aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.tableName:Ljava/lang/String;
invokevirtual org.hibernate.dialect.Dialect.appendLockHint:(Lorg/hibernate/LockMode;Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
34: ldc " where "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentColumnName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " = '"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
35: aload 4
invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getDialect:()Lorg/hibernate/dialect/Dialect;
invokevirtual org.hibernate.dialect.Dialect.getForUpdateString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
36: putfield org.hibernate.id.MultipleHiLoPerTableGenerator.query:Ljava/lang/String;
37: aload 0
new java.lang.StringBuilder
dup
ldc "update "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
38: aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.tableName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
39: ldc " set "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
40: aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.valueColumnName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
41: ldc " = ? where "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
42: aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.valueColumnName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
43: ldc " = ? and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
44: aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentColumnName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
45: ldc " = '"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
46: aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
47: ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
48: putfield org.hibernate.id.MultipleHiLoPerTableGenerator.update:Ljava/lang/String;
49: aload 0
new java.lang.StringBuilder
dup
ldc "insert into "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.tableName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
50: ldc "("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentColumnName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.valueColumnName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ") "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
51: ldc "values('"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "', ?)"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
52: putfield org.hibernate.id.MultipleHiLoPerTableGenerator.insert:Ljava/lang/String;
53: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 54 0 this Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
0 54 1 database Lorg/hibernate/boot/model/relational/Database;
4 54 2 namespace Lorg/hibernate/boot/model/relational/Namespace;
5 54 3 table Lorg/hibernate/mapping/Table;
15 25 4 pkColumn Lorg/hibernate/mapping/Column;
24 25 5 valueColumn Lorg/hibernate/mapping/Column;
26 54 4 jdbcEnvironment Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
MethodParameters:
Name Flags
database
public java.lang.String[] sqlCreateStrings(org.hibernate.dialect.Dialect);
descriptor: (Lorg/hibernate/dialect/Dialect;)[Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=2, args_size=2
start local 0 start local 1 0: iconst_1
anewarray java.lang.String
dup
iconst_0
1: new java.lang.StringBuilder
dup
aload 1
invokevirtual org.hibernate.dialect.Dialect.getCreateTableString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
2: bipush 32
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.tableName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " ( "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.segmentColumnName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 32
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 1
bipush 12
aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.keySize:I
i2l
iconst_0
iconst_0
invokevirtual org.hibernate.dialect.Dialect.getTypeName:(IJII)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
4: aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.valueColumnName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 32
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 1
iconst_4
invokevirtual org.hibernate.dialect.Dialect.getTypeName:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: ldc " )"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual org.hibernate.dialect.Dialect.getTableTypeString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
6: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aastore
7: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
0 8 1 dialect Lorg/hibernate/dialect/Dialect;
Exceptions:
throws org.hibernate.HibernateException
MethodParameters:
Name Flags
dialect
public java.lang.String[] sqlDropStrings(org.hibernate.dialect.Dialect);
descriptor: (Lorg/hibernate/dialect/Dialect;)[Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: iconst_1
anewarray java.lang.String
dup
iconst_0
aload 1
aload 0
getfield org.hibernate.id.MultipleHiLoPerTableGenerator.tableName:Ljava/lang/String;
invokevirtual org.hibernate.dialect.Dialect.getDropTableString:(Ljava/lang/String;)Ljava/lang/String;
aastore
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
0 1 1 dialect Lorg/hibernate/dialect/Dialect;
Exceptions:
throws org.hibernate.HibernateException
MethodParameters:
Name Flags
dialect
public java.lang.Object generatorKey();
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.id.MultipleHiLoPerTableGenerator.tableName:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
}
SourceFile: "MultipleHiLoPerTableGenerator.java"
NestMembers:
org.hibernate.id.MultipleHiLoPerTableGenerator$1 org.hibernate.id.MultipleHiLoPerTableGenerator$2
InnerClasses:
public NameParts = org.hibernate.boot.model.relational.QualifiedNameParser$NameParts of org.hibernate.boot.model.relational.QualifiedNameParser
org.hibernate.id.MultipleHiLoPerTableGenerator$1
org.hibernate.id.MultipleHiLoPerTableGenerator$2
RuntimeVisibleAnnotations:
java.lang.Deprecated()