Class TableStructure
java.lang.Object
org.hibernate.id.enhanced.TableStructure
- All Implemented Interfaces:
ExportableProducer, DatabaseStructure
Describes a table used to mimic sequence behavior
-
Constructor Summary
ConstructorsConstructorDescriptionTableStructure(String contributor, QualifiedName qualifiedTableName, Identifier valueColumnNameIdentifier, int initialValue, int incrementSize, Class<?> numberType) TableStructure(String contributor, QualifiedName qualifiedTableName, Identifier valueColumnNameIdentifier, int initialValue, int incrementSize, String options, Class<?> numberType) -
Method Summary
Modifier and TypeMethodDescriptionA callback to be able to get the next value from the underlying structure as needed.String[]Deprecated.intThe configured increment sizeintThe configured initial valueThe physical name of the database structure (table or sequence).intHow many times has this structure been accessed through this reference?voidinitialize(SqlStringGenerationContext context) Initializes this structure, in particular pre-generates SQL as necessary.booleanIs the structure physically a sequence?voidDeprecated.voidregisterExportables(Database database) Register database objects involved in this structure, e.g.voidregisterExtraExportables(Table table, Optimizer optimizer) Register additional database objects which need to be aware of the table for which this structure is used to generate values.Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface DatabaseStructure
configure
-
Constructor Details
-
TableStructure
public TableStructure(String contributor, QualifiedName qualifiedTableName, Identifier valueColumnNameIdentifier, int initialValue, int incrementSize, Class<?> numberType) -
TableStructure
public TableStructure(String contributor, QualifiedName qualifiedTableName, Identifier valueColumnNameIdentifier, int initialValue, int incrementSize, String options, Class<?> numberType)
-
-
Method Details
-
getPhysicalName
Description copied from interface:DatabaseStructureThe physical name of the database structure (table or sequence).Only available after
DatabaseStructure.registerExportables(Database)has been called.- Specified by:
getPhysicalNamein interfaceDatabaseStructure- Returns:
- The structure name.
-
getLogicalValueColumnNameIdentifier
-
getInitialValue
public int getInitialValue()Description copied from interface:DatabaseStructureThe configured initial value- Specified by:
getInitialValuein interfaceDatabaseStructure- Returns:
- The configured initial value
-
getIncrementSize
public int getIncrementSize()Description copied from interface:DatabaseStructureThe configured increment size- Specified by:
getIncrementSizein interfaceDatabaseStructure- Returns:
- The configured increment size
-
getTimesAccessed
public int getTimesAccessed()Description copied from interface:DatabaseStructureHow many times has this structure been accessed through this reference?- Specified by:
getTimesAccessedin interfaceDatabaseStructure- Returns:
- The number of accesses.
-
getAllSqlForTests
Deprecated.- Specified by:
getAllSqlForTestsin interfaceDatabaseStructure
-
prepare
Deprecated.Description copied from interface:DatabaseStructurePrepare this structure for use. Called sometime after instantiation, but before first use.- Specified by:
preparein interfaceDatabaseStructure- Parameters:
optimizer- The optimizer being applied to the generator.
-
isPhysicalSequence
public boolean isPhysicalSequence()Description copied from interface:DatabaseStructureIs the structure physically a sequence?- Specified by:
isPhysicalSequencein interfaceDatabaseStructure- Returns:
trueif the actual database structure is a sequence;falseotherwise.
-
registerExportables
Description copied from interface:DatabaseStructureRegister database objects involved in this structure, e.g. sequences, tables, etc.This method is called just once, after
DatabaseStructure.configure(Optimizer), but beforeDatabaseStructure.initialize(SqlStringGenerationContext).- Specified by:
registerExportablesin interfaceDatabaseStructure- Specified by:
registerExportablesin interfaceExportableProducer- Parameters:
database- The database instance
-
initialize
Description copied from interface:DatabaseStructureInitializes this structure, in particular pre-generates SQL as necessary.This method is called just once, after
DatabaseStructure.registerExportables(Database), before first use.- Specified by:
initializein interfaceDatabaseStructure- Parameters:
context- A context to help generate SQL strings
-
registerExtraExportables
Description copied from interface:DatabaseStructureRegister additional database objects which need to be aware of the table for which this structure is used to generate values. Used to deal with automatic sequence resynchronization after data import.- Specified by:
registerExtraExportablesin interfaceDatabaseStructure- Parameters:
table- The table for which this structure is used to generate valuesoptimizer- TheOptimizerfor this generator- See Also:
-