## org.hibernate.id
Interface IdentifierGenerator

All Known Subinterfaces:
  PersistentIdentifierGenerator, PostInsertIdentifierGenerator

All Known Implementing Classes:
  AbstractPostInsertGenerator, AbstractUUIDGenerator, Assigned, CompositeNestedGeneratedValueGenerator, ForeignGenerator, GUIDGenerator, IdentityGenerator, IncrementGenerator, MultipleHiLoPerTableGenerator, SelectGenerator, SequenceGenerator, SequenceHiLoGenerator, SequenceIdentityGenerator, SequenceStyleGenerator, TableGenerator, TableGenerator, TableHiLoGenerator, UUIDGenerator, 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 Detail

### ENTITY_NAME

    static final String ENTITY_NAME

  The configuration parameter holding the entity name

  See Also:
    Constant Field Values

Method Detail

### generate

    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
  Throws:
    `HibernateException`

Copyright © 2001-2010 Red Hat, Inc. All Rights Reserved.