## org.hibernate.id.enhanced
Interface DatabaseStructure

All Known Implementing Classes:
  SequenceStructure, TableStructure

    public interface DatabaseStructure

Encapsulates definition of the underlying data structure backing a sequence-style generator.

Author:
  Steve Ebersole

Method Summary
`AccessCallback` `buildCallback(SessionImplementor session)` A callback to be able to get the next value from the underlying structure as needed.
`int` `getIncrementSize()` The configured increment size
`int` `getInitialValue()` The configured initial value
`String` `getName()` The name of the database structure (table or sequence).
`int` `getTimesAccessed()` How many times has this structure been accessed through this reference?
`void` `prepare(Optimizer optimizer)` Prepare this structure for use.
`String[]` `sqlCreateStrings(Dialect dialect)` Commands needed to create the underlying structures.
`String[]` `sqlDropStrings(Dialect dialect)` Commands needed to drop the underlying structures.

Method Detail

### getName

    String getName()

  The name of the database structure (table or sequence).

  Returns:
    The structure name.

### getTimesAccessed

    int getTimesAccessed()

  How many times has this structure been accessed through this reference?

  Returns:
    The number of accesses.

### getInitialValue

    int getInitialValue()

  The configured initial value

  Returns:
    The configured initial value

### getIncrementSize

    int getIncrementSize()

  The configured increment size

  Returns:
    The configured increment size

### buildCallback

    AccessCallback buildCallback(SessionImplementor session)

  A callback to be able to get the next value from the underlying structure as needed.

  Parameters:
    `session` - The session.
  Returns:
    The next value.

### prepare

    void prepare(Optimizer optimizer)

  Prepare this structure for use. Called sometime after instantiation, but before first use.

  Parameters:
    `optimizer` - The optimizer being applied to the generator.

### sqlCreateStrings

    String[] sqlCreateStrings(Dialect dialect)

  Commands needed to create the underlying structures.

  Parameters:
    `dialect` - The database dialect being used.
  Returns:
    The creation commands.

### sqlDropStrings

    String[] sqlDropStrings(Dialect dialect)

  Commands needed to drop the underlying structures.

  Parameters:
    `dialect` - The database dialect being used.
  Returns:
    The drop commands.

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