org.hibernate.id

Interface IdentifierGenerator

Known Subinterfaces:
PersistentIdentifierGenerator, PostInsertIdentifierGenerator
Known Implementing Classes:
AbstractPostInsertGenerator, AbstractUUIDGenerator, Assigned, ForeignGenerator, GUIDGenerator, IdentityGenerator, IncrementGenerator, MultipleHiLoPerTableGenerator, SelectGenerator, SequenceGenerator, SequenceHiLoGenerator, SequenceIdentityGenerator, SequenceStyleGenerator, TableGenerator, TableGenerator, TableHiLoGenerator, UUIDHexGenerator

public interface IdentifierGenerator

The general contract between a class that generates unique identifiers and the Session. It is not intended that this interface ever be exposed to the application. It is intended that users implement this interface to provide custom identifier generation strategies.

Implementors should provide a public default constructor.

Implementations that accept configuration parameters should also implement Configurable.
Implementors must be threadsafe
Author:
Gavin King
See Also:
PersistentIdentifierGenerator, Configurable

Field Summary

static String
ENTITY_NAME
The configuration parameter holding the entity name

Method Summary

Serializable
generate(SessionImplementor session, Object object)
Generate a new identifier.

Field Details

ENTITY_NAME

public static final String ENTITY_NAME
The configuration parameter holding the entity name

Method Details

generate

public Serializable generate(SessionImplementor session,
                             Object object)
            throws HibernateException
Generate a new identifier.
Parameters:
session -
object - the entity or toplevel collection for which the id is being generated
Returns:
a new identifier