org.castor.ddlgen.keygenerator

Class HighLowKeyGenerator

Implemented Interfaces:
SchemaObject

public final class HighLowKeyGenerator
extends KeyGenerator

HIGH-LOW key generator will be handled by Castor so no DDL needs to be created. It only requires a table to lookup the next values to be used.
Version:
$Revision: 5951 $ $Date: 2006-04-25 16:09:10 -0600 (Tue, 25 Apr 2006) $
Authors:
Le Duc Bao
Ralf Joachim
Since:
1.1

Field Summary

static String
ALGORITHM_NAME
Name of key generator algorithm.

Fields inherited from class org.castor.ddlgen.schemaobject.AbstractSchemaObject

HASHFACTOR

Constructor Summary

HighLowKeyGenerator(KeyGeneratorDef definition)
Constructor for HIGH-LOW key generator specified by given defintion.

Method Summary

int
getGrabSize()
Get number of new keys the key generator should grab from the sequence table at a time.
String
getKeyColumn()
Get name of the column which contains table names.
String
getTableName()
Get name of the special sequence table.
String
getValueColumn()
Get name of the column which is used to reserve primary key values.
boolean
isGlobal()
Shell globally unique keys be generated?
boolean
isSameConnection()
Shell the same Connection be used for writing to the sequence table?
void
toCreateDDL(DDLWriter writer)
void
toDropDDL(DDLWriter writer)

Methods inherited from class org.castor.ddlgen.schemaobject.KeyGenerator

equals, getAlias, getTable, hashCode, merge, setAlias, setTable

Methods inherited from class org.castor.ddlgen.schemaobject.AbstractSchemaObject

equals, getConfiguration, getName, setConfiguration, setName

Field Details

ALGORITHM_NAME

public static final String ALGORITHM_NAME
Name of key generator algorithm.

Constructor Details

HighLowKeyGenerator

public HighLowKeyGenerator(KeyGeneratorDef definition)
            throws GeneratorException
Constructor for HIGH-LOW key generator specified by given defintion.
Parameters:
definition - Key generator definition.
Throws:
GeneratorException - If grab size parameter can't be parsed as integer.

Method Details

getGrabSize

public int getGrabSize()
Get number of new keys the key generator should grab from the sequence table at a time.
Returns:
Number of new keys the key generator should grab from the sequence table at a time.

getKeyColumn

public String getKeyColumn()
Get name of the column which contains table names.
Returns:
Name of the column which contains table names.

getTableName

public String getTableName()
Get name of the special sequence table.
Returns:
Name of the special sequence table.

getValueColumn

public String getValueColumn()
Get name of the column which is used to reserve primary key values.
Returns:
Name of the column which is used to reserve primary key values.

isGlobal

public boolean isGlobal()
Shell globally unique keys be generated?
Returns:
If true globally unique keys are generated.

isSameConnection

public boolean isSameConnection()
Shell the same Connection be used for writing to the sequence table?
Returns:
If true it uses the same connection t write to the sequence table.

toCreateDDL

public void toCreateDDL(DDLWriter writer)
Specified by:
toCreateDDL in interface SchemaObject

toDropDDL

public void toDropDDL(DDLWriter writer)
Specified by:
toDropDDL in interface SchemaObject

Intalio Inc. (C) 1999-2008. All rights reserved http://www.intalio.com