Package org.hibernate.id.enhanced
Interface DatabaseStructure
- All Known Implementing Classes:
SequenceStructure,TableStructure
public interface DatabaseStructure
Encapsulates definition of the underlying data structure backing a
sequence-style generator.
-
Method Summary
Modifier and TypeMethodDescriptionbuildCallback(SessionImplementor session) A callback to be able to get the next value from the underlying structure as needed.intThe configured increment sizeintThe configured initial valuegetName()The name of the database structure (table or sequence).intHow many times has this structure been accessed through this reference?voidPrepare this structure for use.String[]sqlCreateStrings(Dialect dialect) Commands needed to create the underlying structures.String[]sqlDropStrings(Dialect dialect) Commands needed to drop the underlying structures.
-
Method Details
-
getName
String getName()The name of the database structure (table or sequence).- Returns:
- The structure name.
-
getTimesAccessed
int getTimesAccessed()How many times has this structure been accessed through this reference?- Returns:
- The number of accesses.
-
getInitialValue
int getInitialValue()The configured initial value- Returns:
- The configured initial value
-
getIncrementSize
int getIncrementSize()The configured increment size- Returns:
- The configured increment size
-
buildCallback
A callback to be able to get the next value from the underlying structure as needed.- Parameters:
session- The session.- Returns:
- The next value.
-
prepare
Prepare this structure for use. Called sometime after instantiation, but before first use.- Parameters:
optimizer- The optimizer being applied to the generator.
-
sqlCreateStrings
Commands needed to create the underlying structures.- Parameters:
dialect- The database dialect being used.- Returns:
- The creation commands.
-
sqlDropStrings
Commands needed to drop the underlying structures.- Parameters:
dialect- The database dialect being used.- Returns:
- The drop commands.
-