Class HighLowKeyGenerator

  • All 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.
    Since:
    1.1
    Version:
    $Revision: 5951 $ $Date: 2006-04-25 16:09:10 -0600 (Tue, 25 Apr 2006) $
    Author:
    Le Duc Bao, Ralf Joachim
    • Field Detail

      • ALGORITHM_NAME

        public static final java.lang.String ALGORITHM_NAME
        Name of key generator algorithm.
        See Also:
        Constant Field Values
    • Constructor Detail

      • 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 Detail

      • getTableName

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

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

        public java.lang.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.
      • 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.
      • 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.
      • isGlobal

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

        public void toCreateDDL​(DDLWriter writer)
        Build create script for the schema object.
        Parameters:
        writer - DDLWriter to write schema objects to.
      • toDropDDL

        public void toDropDDL​(DDLWriter writer)
        Build drop script for the schema object.
        Parameters:
        writer - DDLWriter to write schema objects to.