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

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

public class SYSFILESRowFactory
extends CatalogRowFactory

Factory for creating a SYSFILES row.

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

Field Summary
protected static java.lang.String GENERATION_ID_COL_NAME
           
protected static int GENERATION_ID_COL_NUM
           
protected static java.lang.String ID_COL_NAME
           
protected static int ID_COL_NUM
           
private static java.lang.String[][] indexColumnNames
           
private static int[][] indexColumnPositions
           
protected static java.lang.String NAME_COL_NAME
           
protected static int NAME_COL_NUM
           
protected static java.lang.String SCHEMA_ID_COL_NAME
           
protected static int SCHEMA_ID_COL_NUM
           
protected static int SYSFILES_COLUMN_COUNT
           
protected static int SYSFILES_INDEX1_ID
           
protected static int SYSFILES_INDEX2_ID
           
protected 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
SYSFILESRowFactory(UUIDFactory uuidf, ExecutionFactory ef, DataValueFactory dvf, boolean convertIdToLower)
           
 
Method Summary
 SystemColumn[] buildColumnList()
          Builds a list of columns suitable for creating this Catalog.
 TupleDescriptor buildDescriptor(ExecRow row, TupleDescriptor parentTupleDescriptor, DataDictionary dd)
          Make a descriptor out of a SYSFILES row
 ExecIndexRow buildEmptyIndexRow(int indexNumber, RowLocation rowLocation)
          Builds an empty index row.
 ExecRow makeRow(TupleDescriptor td, TupleDescriptor parent)
          Make a SYSFILES row
 
Methods inherited from class org.apache.derby.iapi.sql.dictionary.CatalogRowFactory
checkIndexNumber, convertIdCase, generateIndexName, getCanonicalHeapName, getCanonicalHeapUUID, getCanonicalIndexUUID, getCanonicalTableUUID, getCatalogName, getCreateHeapProperties, getCreateIndexProperties, getDataValueFactory, getExecutionFactory, getHeapColumnCount, getIndexColumnCount, getIndexColumnNames, getIndexColumnPositions, getIndexName, getNumIndexes, getPrimaryKeyIndexNumber, 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

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

SYSFILES_COLUMN_COUNT

protected static final int SYSFILES_COLUMN_COUNT
See Also:
Constant Field Values

ID_COL_NUM

protected static final int ID_COL_NUM
See Also:
Constant Field Values

ID_COL_NAME

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

SCHEMA_ID_COL_NUM

protected static final int SCHEMA_ID_COL_NUM
See Also:
Constant Field Values

SCHEMA_ID_COL_NAME

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

NAME_COL_NUM

protected static final int NAME_COL_NUM
See Also:
Constant Field Values

NAME_COL_NAME

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

GENERATION_ID_COL_NUM

protected static final int GENERATION_ID_COL_NUM
See Also:
Constant Field Values

GENERATION_ID_COL_NAME

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

SYSFILES_INDEX1_ID

protected static final int SYSFILES_INDEX1_ID
See Also:
Constant Field Values

SYSFILES_INDEX2_ID

protected static final int SYSFILES_INDEX2_ID
See Also:
Constant Field Values

indexColumnPositions

private static final int[][] indexColumnPositions

indexColumnNames

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

uniqueness

private static final boolean[] uniqueness

uuids

private static final java.lang.String[] uuids
Constructor Detail

SYSFILESRowFactory

public SYSFILESRowFactory(UUIDFactory uuidf,
                          ExecutionFactory ef,
                          DataValueFactory dvf,
                          boolean convertIdToLower)
Method Detail

makeRow

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

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

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 descriptor out of a SYSFILES row

Specified by:
buildDescriptor in class CatalogRowFactory
Parameters:
row - a row
parentTupleDescriptor - Null for this kind of descriptor.
dd - dataDictionary
Returns:
a descriptor equivalent to a row
Throws:
StandardException - thrown on failure

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.