Package org.hibernate.id.enhanced
Class TableStructure
java.lang.Object
org.hibernate.id.enhanced.TableStructure
- All Implemented Interfaces:
ExportableProducer,DatabaseStructure
Describes a table used to mimic sequence behavior
- Author:
- Steve Ebersole
-
Constructor Summary
ConstructorsConstructorDescriptionTableStructure(JdbcEnvironment jdbcEnvironment, String contributor, QualifiedName qualifiedTableName, Identifier valueColumnNameIdentifier, int initialValue, int incrementSize, Class numberType) -
Method Summary
Modifier and TypeMethodDescriptionA callback to be able to get the next value from the underlying structure as needed.String[]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?voidPrepare this structure for use.voidregisterExportables(Database database) Register database objects involved in this structure, e.g. sequences, tables, etc.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.hibernate.id.enhanced.DatabaseStructure
configure
-
Constructor Details
-
TableStructure
public TableStructure(JdbcEnvironment jdbcEnvironment, String contributor, QualifiedName qualifiedTableName, Identifier valueColumnNameIdentifier, int initialValue, int incrementSize, 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.
-
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
- Specified by:
getAllSqlForTestsin interfaceDatabaseStructure
-
prepare
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
-