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.


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?
 boolean isPhysicalSequence()
          Is the structure physically a sequence?
 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.

isPhysicalSequence

boolean isPhysicalSequence()
Is the structure physically a sequence?

Returns:
true if the actual database structure is a sequence; false otherwise.


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