org.hibernate.id
Class SelectGenerator

java.lang.Object
  extended by org.hibernate.id.AbstractPostInsertGenerator
      extended by org.hibernate.id.SelectGenerator
All Implemented Interfaces:
Configurable, IdentifierGenerator, PostInsertIdentifierGenerator

public class SelectGenerator
extends AbstractPostInsertGenerator
implements Configurable

A generator that selects the just inserted row to determine the identifier value assigned by the database. The correct row is located using a unique key.

One mapping parameter is required: key (unless a natural-id is defined in the mapping).

Author:
Gavin King

Nested Class Summary
static class SelectGenerator.SelectGeneratorDelegate
          The delegate for the select generation strategy.
 
Field Summary
 
Fields inherited from interface org.hibernate.id.IdentifierGenerator
ENTITY_NAME
 
Constructor Summary
SelectGenerator()
           
 
Method Summary
 void configure(Type type, Properties params, Dialect d)
          Configure this instance, given the value of parameters specified by the user as <param> elements.
 InsertGeneratedIdentifierDelegate getInsertGeneratedIdentifierDelegate(PostInsertIdentityPersister persister, Dialect dialect, boolean isGetGeneratedKeysEnabled)
           
 
Methods inherited from class org.hibernate.id.AbstractPostInsertGenerator
generate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SelectGenerator

public SelectGenerator()
Method Detail

configure

public void configure(Type type,
                      Properties params,
                      Dialect d)
               throws MappingException
Description copied from interface: Configurable
Configure this instance, given the value of parameters specified by the user as <param> elements. This method is called just once, following instantiation.

Specified by:
configure in interface Configurable
params - param values, keyed by parameter name
Throws:
MappingException

getInsertGeneratedIdentifierDelegate

public InsertGeneratedIdentifierDelegate getInsertGeneratedIdentifierDelegate(PostInsertIdentityPersister persister,
                                                                              Dialect dialect,
                                                                              boolean isGetGeneratedKeysEnabled)
                                                                       throws HibernateException
Specified by:
getInsertGeneratedIdentifierDelegate in interface PostInsertIdentifierGenerator
Throws:
HibernateException