Package org.hibernate.id.enhanced
Class SequenceStructure
- java.lang.Object
-
- org.hibernate.id.enhanced.SequenceStructure
-
- All Implemented Interfaces:
ExportableProducer,DatabaseStructure
- Direct Known Subclasses:
OrderedSequenceStructure
public class SequenceStructure extends java.lang.Object implements DatabaseStructure
Describes a sequence.
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.StringsequenceName
-
Constructor Summary
Constructors Constructor Description SequenceStructure(JdbcEnvironment jdbcEnvironment, QualifiedName qualifiedSequenceName, int initialValue, int incrementSize, java.lang.Class numberType)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AccessCallbackbuildCallback(SharedSessionContractImplementor session)A callback to be able to get the next value from the underlying structure as needed.protected voidbuildSequence(Database database)intgetIncrementSize()The configured increment sizeintgetInitialValue()The configured initial valuejava.lang.StringgetName()The name of the database structure (table or sequence).protected QualifiedNamegetQualifiedName()protected intgetSourceIncrementSize()intgetTimesAccessed()How many times has this structure been accessed through this reference?booleanisPhysicalSequence()Is the structure physically a sequence?voidprepare(Optimizer optimizer)Prepare this structure for use.voidregisterExportables(Database database)Register the contained exportable things to theDatabasejava.lang.String[]sqlCreateStrings(Dialect dialect)Commands needed to create the underlying structures.java.lang.String[]sqlDropStrings(Dialect dialect)Commands needed to drop the underlying structures.
-
-
-
Constructor Detail
-
SequenceStructure
public SequenceStructure(JdbcEnvironment jdbcEnvironment, QualifiedName qualifiedSequenceName, int initialValue, int incrementSize, java.lang.Class numberType)
-
-
Method Detail
-
getName
public java.lang.String getName()
Description copied from interface:DatabaseStructureThe name of the database structure (table or sequence).- Specified by:
getNamein interfaceDatabaseStructure- Returns:
- The structure name.
-
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.
-
getInitialValue
public int getInitialValue()
Description copied from interface:DatabaseStructureThe configured initial value- Specified by:
getInitialValuein interfaceDatabaseStructure- Returns:
- The configured initial value
-
buildCallback
public AccessCallback buildCallback(SharedSessionContractImplementor session)
Description copied from interface:DatabaseStructureA callback to be able to get the next value from the underlying structure as needed.- Specified by:
buildCallbackin interfaceDatabaseStructure- Parameters:
session- The session.- Returns:
- The next value.
-
prepare
public void prepare(Optimizer optimizer)
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.
-
registerExportables
public void registerExportables(Database database)
Description copied from interface:ExportableProducerRegister the contained exportable things to theDatabase- Specified by:
registerExportablesin interfaceExportableProducer- Parameters:
database- The database instance
-
sqlCreateStrings
public java.lang.String[] sqlCreateStrings(Dialect dialect) throws HibernateException
Description copied from interface:DatabaseStructureCommands needed to create the underlying structures.- Specified by:
sqlCreateStringsin interfaceDatabaseStructure- Parameters:
dialect- The database dialect being used.- Returns:
- The creation commands.
- Throws:
HibernateException
-
sqlDropStrings
public java.lang.String[] sqlDropStrings(Dialect dialect) throws HibernateException
Description copied from interface:DatabaseStructureCommands needed to drop the underlying structures.- Specified by:
sqlDropStringsin interfaceDatabaseStructure- Parameters:
dialect- The database dialect being used.- Returns:
- The drop commands.
- Throws:
HibernateException
-
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.
-
getSourceIncrementSize
protected final int getSourceIncrementSize()
-
getQualifiedName
protected QualifiedName getQualifiedName()
-
buildSequence
protected void buildSequence(Database database)
-
-