public class EmulatedSequenceReactiveIdentifierGenerator extends TableReactiveIdentifierGenerator
SequenceGenerator
for databases which do not support sequences. Persistence is
managed via a table with just one row and one column.
This implementation supports block allocation, but does not guarantee that generated identifiers are sequential.
Constructor and Description |
---|
EmulatedSequenceReactiveIdentifierGenerator() |
Modifier and Type | Method and Description |
---|---|
protected java.lang.String |
buildInsertQuery() |
protected java.lang.String |
buildSelectQuery() |
protected java.lang.String |
buildUpdateQuery() |
protected int |
determineIncrement(java.util.Properties params) |
protected int |
determineInitialValue(java.util.Properties params) |
protected java.lang.String |
determineSegmentColumnName(java.util.Properties params,
org.hibernate.engine.jdbc.env.spi.JdbcEnvironment jdbcEnvironment) |
protected java.lang.String |
determineSegmentValue(java.util.Properties params) |
protected java.lang.Boolean |
determineStoreLastUsedValue(org.hibernate.service.ServiceRegistry serviceRegistry) |
protected org.hibernate.boot.model.relational.QualifiedName |
determineTableName(java.util.Properties params,
org.hibernate.service.ServiceRegistry serviceRegistry) |
protected java.lang.String |
determineValueColumnNameForTable(java.util.Properties params,
org.hibernate.engine.jdbc.env.spi.JdbcEnvironment jdbcEnvironment) |
protected java.lang.Object[] |
insertParameters(long insertedValue) |
protected java.lang.Object[] |
selectParameters() |
protected java.lang.Object[] |
updateParameters(long currentValue,
long updatedValue) |
configure, determineDefaultSegmentValue, getBlockSize, nextHiValue
generate, next, next
public EmulatedSequenceReactiveIdentifierGenerator()
protected java.lang.Boolean determineStoreLastUsedValue(org.hibernate.service.ServiceRegistry serviceRegistry)
determineStoreLastUsedValue
in class TableReactiveIdentifierGenerator
protected org.hibernate.boot.model.relational.QualifiedName determineTableName(java.util.Properties params, org.hibernate.service.ServiceRegistry serviceRegistry)
determineTableName
in class TableReactiveIdentifierGenerator
protected java.lang.String determineValueColumnNameForTable(java.util.Properties params, org.hibernate.engine.jdbc.env.spi.JdbcEnvironment jdbcEnvironment)
determineValueColumnNameForTable
in class TableReactiveIdentifierGenerator
protected java.lang.String determineSegmentColumnName(java.util.Properties params, org.hibernate.engine.jdbc.env.spi.JdbcEnvironment jdbcEnvironment)
determineSegmentColumnName
in class TableReactiveIdentifierGenerator
protected java.lang.String determineSegmentValue(java.util.Properties params)
determineSegmentValue
in class TableReactiveIdentifierGenerator
protected int determineInitialValue(java.util.Properties params)
determineInitialValue
in class TableReactiveIdentifierGenerator
protected int determineIncrement(java.util.Properties params)
determineIncrement
in class TableReactiveIdentifierGenerator
protected java.lang.Object[] updateParameters(long currentValue, long updatedValue)
updateParameters
in class TableReactiveIdentifierGenerator
protected java.lang.Object[] insertParameters(long insertedValue)
insertParameters
in class TableReactiveIdentifierGenerator
protected java.lang.Object[] selectParameters()
selectParameters
in class TableReactiveIdentifierGenerator
protected java.lang.String buildSelectQuery()
buildSelectQuery
in class TableReactiveIdentifierGenerator
protected java.lang.String buildUpdateQuery()
buildUpdateQuery
in class TableReactiveIdentifierGenerator
protected java.lang.String buildInsertQuery()
buildInsertQuery
in class TableReactiveIdentifierGenerator