public class SequenceGenerator extends Object implements PersistentIdentifierGenerator, BulkInsertionCapableIdentifierGenerator, Configurable
SequenceHiLoGenerator| Modifier and Type | Field and Description |
|---|---|
static String |
PARAMETERS
The parameters parameter, appended to the create sequence DDL.
|
static String |
SEQUENCE
The sequence parameter
|
CATALOG, IDENTIFIER_NORMALIZER, PK, SCHEMA, TABLE, TABLESENTITY_NAME, JPA_ENTITY_NAME| Constructor and Description |
|---|
SequenceGenerator() |
| Modifier and Type | Method and Description |
|---|---|
protected IntegralDataTypeHolder |
buildHolder() |
void |
configure(Type type,
Properties params,
Dialect dialect)
Configure this instance, given the value of parameters
specified by the user as <param> elements.
|
String |
determineBulkInsertionIdentifierGenerationSelectFragment(Dialect dialect)
Return the select expression fragment, if any, that generates the identifier values.
|
Serializable |
generate(SessionImplementor session,
Object obj)
Generate a new identifier.
|
protected IntegralDataTypeHolder |
generateHolder(SessionImplementor session) |
Object |
generatorKey()
Return a key unique to the underlying database objects.
|
protected Type |
getIdentifierType() |
String |
getSequenceName() |
String[] |
sqlCreateStrings(Dialect dialect)
The SQL required to create the underlying database objects.
|
String[] |
sqlDropStrings(Dialect dialect)
The SQL required to remove the underlying database objects.
|
boolean |
supportsBulkInsertionIdentifierGeneration()
Given the configuration of this generator, is identifier generation as part of bulk insertion supported?
IMPL NOTE : Mainly here to allow stuff like SequenceStyleGenerator which *can* support this based on
configuration
|
public static final String SEQUENCE
public static final String PARAMETERS
protected Type getIdentifierType()
public Object generatorKey()
PersistentIdentifierGeneratorgeneratorKey in interface PersistentIdentifierGeneratorpublic String getSequenceName()
public void configure(Type type, Properties params, Dialect dialect) throws MappingException
Configurableconfigure in interface Configurableparams - param values, keyed by parameter nameMappingExceptionpublic Serializable generate(SessionImplementor session, Object obj)
IdentifierGeneratorgenerate in interface IdentifierGeneratorobj - the entity or toplevel collection for which the id is being generatedprotected IntegralDataTypeHolder generateHolder(SessionImplementor session)
protected IntegralDataTypeHolder buildHolder()
public String[] sqlCreateStrings(Dialect dialect) throws HibernateException
PersistentIdentifierGeneratorsqlCreateStrings in interface PersistentIdentifierGeneratordialect - The dialect against which to generate the create command(s)HibernateException - problem creating the create command(s)public String[] sqlDropStrings(Dialect dialect) throws HibernateException
PersistentIdentifierGeneratorsqlDropStrings in interface PersistentIdentifierGeneratordialect - The dialect against which to generate the drop command(s)HibernateException - problem creating the drop command(s)public boolean supportsBulkInsertionIdentifierGeneration()
BulkInsertionCapableIdentifierGeneratorsupportsBulkInsertionIdentifierGeneration in interface BulkInsertionCapableIdentifierGeneratortrue if bulk insertions are supported; false otherwise.public String determineBulkInsertionIdentifierGenerationSelectFragment(Dialect dialect)
BulkInsertionCapableIdentifierGeneratordetermineBulkInsertionIdentifierGenerationSelectFragment in interface BulkInsertionCapableIdentifierGeneratordialect - The dialect against which the insert will be performed.null indicates that no fragment is needed.Copyright © 2018 JBoss by Red Hat. All rights reserved.