org.apache.derby.impl.sql.catalog
Class SYSCOLUMNSRowFactory

java.lang.Object
  extended byorg.apache.derby.iapi.sql.dictionary.CatalogRowFactory
      extended byorg.apache.derby.impl.sql.catalog.SYSCOLUMNSRowFactory

public class SYSCOLUMNSRowFactory
extends CatalogRowFactory

Factory for creating a SYSCOLUMNS row.

Version:
0.1
Author:
Rick Hillegas (extracted from DataDictionaryImpl).

Field Summary
protected static java.lang.String COLUMNDEFAULTID_STRING
           
private  SystemColumn[] columnList
           
protected static java.lang.String COLUMNNAME_STRING
           
private static java.lang.String[][] indexColumnNames
           
private static int[][] indexColumnPositions
           
static java.lang.String OLD_REFERENCEID_NAME
          Old name for REFERENCEID, used by upgrade
protected static java.lang.String REFERENCEDID_STRING
           
protected static int SYSCOLUMNS_AUTOINCREMENTINC
           
protected static int SYSCOLUMNS_AUTOINCREMENTSTART
           
protected static int SYSCOLUMNS_AUTOINCREMENTVALUE
           
protected static int SYSCOLUMNS_COLUMN_COUNT
           
protected static int SYSCOLUMNS_COLUMNDATATYPE
           
protected static int SYSCOLUMNS_COLUMNDEFAULT
           
protected static int SYSCOLUMNS_COLUMNDEFAULTID
           
protected static int SYSCOLUMNS_COLUMNNAME
           
protected static int SYSCOLUMNS_COLUMNNUMBER
           
protected static int SYSCOLUMNS_INDEX1_ID
           
protected static int SYSCOLUMNS_INDEX2_ID
           
protected static int SYSCOLUMNS_REFERENCEID
           
protected static int SYSCOLUMNS_TABLEID
           
(package private) static java.lang.String TABLENAME_STRING
           
private static boolean[] uniqueness
           
private static java.lang.String[] uuids
           
 
Fields inherited from class org.apache.derby.iapi.sql.dictionary.CatalogRowFactory
dvf, heapUUID, indexNames, indexUniqueness, indexUUID, tableUUID
 
Constructor Summary
SYSCOLUMNSRowFactory(UUIDFactory uuidf, ExecutionFactory ef, DataValueFactory dvf, boolean convertIdToLower)
           
SYSCOLUMNSRowFactory(UUIDFactory uuidf, ExecutionFactory ef, DataValueFactory dvf, boolean convertIdToLower, java.lang.String myName)
           
 
Method Summary
 SystemColumn[] buildColumnList()
          Builds a list of columns suitable for creating this Catalog.
 TupleDescriptor buildDescriptor(ExecRow row, TupleDescriptor parentTupleDescriptor, DataDictionary dd)
          Make a ColumnDescriptor out of a SYSCOLUMNS row
 ExecIndexRow buildEmptyIndexRow(int indexNumber, RowLocation rowLocation)
          Builds an empty index row.
 java.util.Properties getCreateHeapProperties()
          Get the Properties associated with creating the heap.
 java.util.Properties getCreateIndexProperties(int indexNumber)
          Get the Properties associated with creating the specified index.
 int getPrimaryKeyIndexNumber()
          Get the index number for the primary key index on this catalog.
 ExecRow makeRow(TupleDescriptor td, TupleDescriptor parent)
          Make a SYSCOLUMNS row
 
Methods inherited from class org.apache.derby.iapi.sql.dictionary.CatalogRowFactory
checkIndexNumber, convertIdCase, generateIndexName, getCanonicalHeapName, getCanonicalHeapUUID, getCanonicalIndexUUID, getCanonicalTableUUID, getCatalogName, getDataValueFactory, getExecutionFactory, getHeapColumnCount, getIndexColumnCount, getIndexColumnNames, getIndexColumnPositions, getIndexName, getNumIndexes, getUUIDFactory, initInfo, isIndexUnique, makeEmptyRow
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

TABLENAME_STRING

static final java.lang.String TABLENAME_STRING
See Also:
Constant Field Values

OLD_REFERENCEID_NAME

public static final java.lang.String OLD_REFERENCEID_NAME
Old name for REFERENCEID, used by upgrade

See Also:
Constant Field Values

SYSCOLUMNS_COLUMN_COUNT

protected static final int SYSCOLUMNS_COLUMN_COUNT
See Also:
Constant Field Values

SYSCOLUMNS_TABLEID

protected static final int SYSCOLUMNS_TABLEID
See Also:
Constant Field Values

SYSCOLUMNS_REFERENCEID

protected static final int SYSCOLUMNS_REFERENCEID
See Also:
Constant Field Values

SYSCOLUMNS_COLUMNNAME

protected static final int SYSCOLUMNS_COLUMNNAME
See Also:
Constant Field Values

SYSCOLUMNS_COLUMNNUMBER

protected static final int SYSCOLUMNS_COLUMNNUMBER
See Also:
Constant Field Values

SYSCOLUMNS_COLUMNDATATYPE

protected static final int SYSCOLUMNS_COLUMNDATATYPE
See Also:
Constant Field Values

SYSCOLUMNS_COLUMNDEFAULT

protected static final int SYSCOLUMNS_COLUMNDEFAULT
See Also:
Constant Field Values

SYSCOLUMNS_COLUMNDEFAULTID

protected static final int SYSCOLUMNS_COLUMNDEFAULTID
See Also:
Constant Field Values

SYSCOLUMNS_AUTOINCREMENTVALUE

protected static final int SYSCOLUMNS_AUTOINCREMENTVALUE
See Also:
Constant Field Values

SYSCOLUMNS_AUTOINCREMENTSTART

protected static final int SYSCOLUMNS_AUTOINCREMENTSTART
See Also:
Constant Field Values

SYSCOLUMNS_AUTOINCREMENTINC

protected static final int SYSCOLUMNS_AUTOINCREMENTINC
See Also:
Constant Field Values

SYSCOLUMNS_INDEX1_ID

protected static final int SYSCOLUMNS_INDEX1_ID
See Also:
Constant Field Values

SYSCOLUMNS_INDEX2_ID

protected static final int SYSCOLUMNS_INDEX2_ID
See Also:
Constant Field Values

REFERENCEDID_STRING

protected static final java.lang.String REFERENCEDID_STRING
See Also:
Constant Field Values

COLUMNNAME_STRING

protected static final java.lang.String COLUMNNAME_STRING
See Also:
Constant Field Values

COLUMNDEFAULTID_STRING

protected static final java.lang.String COLUMNDEFAULTID_STRING
See Also:
Constant Field Values

uniqueness

private static final boolean[] uniqueness

uuids

private static final java.lang.String[] uuids

indexColumnPositions

private static final int[][] indexColumnPositions

indexColumnNames

private static final java.lang.String[][] indexColumnNames

columnList

private SystemColumn[] columnList
Constructor Detail

SYSCOLUMNSRowFactory

public SYSCOLUMNSRowFactory(UUIDFactory uuidf,
                            ExecutionFactory ef,
                            DataValueFactory dvf,
                            boolean convertIdToLower)

SYSCOLUMNSRowFactory

public SYSCOLUMNSRowFactory(UUIDFactory uuidf,
                            ExecutionFactory ef,
                            DataValueFactory dvf,
                            boolean convertIdToLower,
                            java.lang.String myName)
Method Detail

makeRow

public ExecRow makeRow(TupleDescriptor td,
                       TupleDescriptor parent)
                throws StandardException
Make a SYSCOLUMNS row

Overrides:
makeRow in class CatalogRowFactory
Returns:
Row suitable for inserting into SYSCOLUMNS.
Throws:
StandardException - thrown on failure

getCreateHeapProperties

public java.util.Properties getCreateHeapProperties()
Get the Properties associated with creating the heap.

Overrides:
getCreateHeapProperties in class CatalogRowFactory
Returns:
The Properties associated with creating the heap.

getCreateIndexProperties

public java.util.Properties getCreateIndexProperties(int indexNumber)
Get the Properties associated with creating the specified index.

Overrides:
getCreateIndexProperties in class CatalogRowFactory
Parameters:
indexNumber - The specified index number.
Returns:
The Properties associated with creating the specified index.

buildEmptyIndexRow

public ExecIndexRow buildEmptyIndexRow(int indexNumber,
                                       RowLocation rowLocation)
                                throws StandardException
Builds an empty index row.

Specified by:
buildEmptyIndexRow in class CatalogRowFactory
Parameters:
indexNumber - Index to build empty row for.
rowLocation - Row location for last column of index row
Returns:
corresponding empty index row
Throws:
StandardException - thrown on failure

buildDescriptor

public TupleDescriptor buildDescriptor(ExecRow row,
                                       TupleDescriptor parentTupleDescriptor,
                                       DataDictionary dd)
                                throws StandardException
Make a ColumnDescriptor out of a SYSCOLUMNS row

Specified by:
buildDescriptor in class CatalogRowFactory
Parameters:
row - a SYSCOLUMNS row
parentTupleDescriptor - The UniqueTupleDescriptor for the object that is tied to this column
dd - dataDictionary
Returns:
a column descriptor equivalent to a SYSCOLUMNS row
Throws:
StandardException - thrown on failure

getPrimaryKeyIndexNumber

public int getPrimaryKeyIndexNumber()
Get the index number for the primary key index on this catalog.

Overrides:
getPrimaryKeyIndexNumber in class CatalogRowFactory
Returns:
a 0-based number

buildColumnList

public SystemColumn[] buildColumnList()
Builds a list of columns suitable for creating this Catalog.

Specified by:
buildColumnList in class CatalogRowFactory
Returns:
array of SystemColumn suitable for making this catalog.


Apache Derby V10.0 Engine Documentation - Copyright © 1997,2004 The Apache Software Foundation or its licensors, as applicable.