Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

org.apache.derby.iapi.sql.dictionary
Class CatalogRowFactory  view CatalogRowFactory download CatalogRowFactory.java

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

public abstract class CatalogRowFactory
extends java.lang.Object

Superclass of all row factories.

Version:
0.2

Field Summary
private  java.lang.String catalogName
           
private  int columnCount
           
private  boolean convertIdToLower
           
protected  org.apache.derby.iapi.types.DataValueFactory dvf
           
private  org.apache.derby.iapi.sql.execute.ExecutionFactory ef
           
protected  org.apache.derby.catalog.UUID heapUUID
           
protected  java.lang.String[][] indexColumnNames
           
protected  int[][] indexColumnPositions
           
private  int indexCount
           
protected  java.lang.String[] indexNames
           
protected  boolean[] indexUniqueness
           
protected  org.apache.derby.catalog.UUID[] indexUUID
           
protected  org.apache.derby.catalog.UUID tableUUID
           
private  org.apache.derby.iapi.services.uuid.UUIDFactory uuidf
           
 
Constructor Summary
CatalogRowFactory(org.apache.derby.iapi.services.uuid.UUIDFactory uuidf, org.apache.derby.iapi.sql.execute.ExecutionFactory ef, org.apache.derby.iapi.types.DataValueFactory dvf, boolean convertIdToLower)
           
 
Method Summary
abstract  SystemColumn[] buildColumnList()
          builds a column list for the catalog
abstract  TupleDescriptor buildDescriptor(org.apache.derby.iapi.sql.execute.ExecRow row, TupleDescriptor parentTuple, DataDictionary dataDictionary)
          builds a tuple descriptor from a row
abstract  org.apache.derby.iapi.sql.execute.ExecIndexRow buildEmptyIndexRow(int indexNumber, org.apache.derby.iapi.types.RowLocation rowLocation)
          builds an empty row given for a given index number.
protected  void checkIndexNumber(int indexNumber)
           
protected  java.lang.String convertIdCase(java.lang.String id)
           
 java.lang.String generateIndexName(int indexNumber)
          Generate an index name based on the index number.
 java.lang.String getCanonicalHeapName()
          Get the name for the heap conglomerate underlying this catalog.
 org.apache.derby.catalog.UUID getCanonicalHeapUUID()
          Get the UUID of the heap underlying this catalog.
 org.apache.derby.catalog.UUID getCanonicalIndexUUID(int indexNumber)
          Get the UUID of the numbered index.
 org.apache.derby.catalog.UUID getCanonicalTableUUID()
          Get the UUID of this catalog.
 java.lang.String getCatalogName()
          get the name of the catalog
 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.
 org.apache.derby.iapi.types.DataValueFactory getDataValueFactory()
          Gets the DataValueFactory for this connection.
 org.apache.derby.iapi.sql.execute.ExecutionFactory getExecutionFactory()
          Gets a ExecutionFactory
 int getHeapColumnCount()
          Get the number of columns in the heap.
 int getIndexColumnCount(int indexNum)
          Get the number of columns in the index for the specified index number.
 java.lang.String[] getIndexColumnNames(int indexNumber)
          Return the names of columns for a given index number
 int[] getIndexColumnPositions(int indexNumber)
          Return the column positions for a given index number
 java.lang.String getIndexName(int indexNum)
          Get the name for the specified index number.
 int getNumIndexes()
          get the number of indexes on this catalog
 int getPrimaryKeyIndexNumber()
          Get the index number for the primary key index on this catalog.
 org.apache.derby.iapi.services.uuid.UUIDFactory getUUIDFactory()
          Get the UUID factory
 void initInfo(int columnCount, java.lang.String catalogName, int[][] indexColumnPositions, java.lang.String[][] indexColumnNames, boolean[] indexUniqueness, java.lang.String[] uuidStrings)
          Initialize info, including array of index names and array of index column counts.
 boolean isIndexUnique(int indexNumber)
          Return whether or not the specified index is unique.
 org.apache.derby.iapi.sql.execute.ExecRow makeEmptyRow()
          Return an empty row for this conglomerate.
 org.apache.derby.iapi.sql.execute.ExecRow makeRow(TupleDescriptor td, TupleDescriptor parent)
          most subclasses should provide this method.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

indexNames

protected java.lang.String[] indexNames

indexColumnPositions

protected int[][] indexColumnPositions

indexColumnNames

protected java.lang.String[][] indexColumnNames

indexUniqueness

protected boolean[] indexUniqueness

tableUUID

protected org.apache.derby.catalog.UUID tableUUID

heapUUID

protected org.apache.derby.catalog.UUID heapUUID

indexUUID

protected org.apache.derby.catalog.UUID[] indexUUID

dvf

protected org.apache.derby.iapi.types.DataValueFactory dvf

ef

private final org.apache.derby.iapi.sql.execute.ExecutionFactory ef

uuidf

private org.apache.derby.iapi.services.uuid.UUIDFactory uuidf

convertIdToLower

private boolean convertIdToLower

indexCount

private int indexCount

columnCount

private int columnCount

catalogName

private java.lang.String catalogName
Constructor Detail

CatalogRowFactory

public CatalogRowFactory(org.apache.derby.iapi.services.uuid.UUIDFactory uuidf,
                         org.apache.derby.iapi.sql.execute.ExecutionFactory ef,
                         org.apache.derby.iapi.types.DataValueFactory dvf,
                         boolean convertIdToLower)
Method Detail

getExecutionFactory

public org.apache.derby.iapi.sql.execute.ExecutionFactory getExecutionFactory()
Gets a ExecutionFactory


getUUIDFactory

public org.apache.derby.iapi.services.uuid.UUIDFactory getUUIDFactory()
Get the UUID factory


getCanonicalTableUUID

public org.apache.derby.catalog.UUID getCanonicalTableUUID()
Get the UUID of this catalog. This is the hard-coded uuid for this catalog that is generated for releases starting with Plato (1.3). Earlier releases generated their own UUIDs for system objectss on the fly.


getCanonicalHeapUUID

public org.apache.derby.catalog.UUID getCanonicalHeapUUID()
Get the UUID of the heap underlying this catalog. See getCanonicalTableUUID() for a description of canonical uuids.


getCanonicalIndexUUID

public org.apache.derby.catalog.UUID getCanonicalIndexUUID(int indexNumber)
Get the UUID of the numbered index. See getCanonicalTableUUID() for a description of canonical uuids.


getIndexColumnCount

public int getIndexColumnCount(int indexNum)
Get the number of columns in the index for the specified index number.


getCanonicalHeapName

public java.lang.String getCanonicalHeapName()
Get the name for the heap conglomerate underlying this catalog. See getCanonicalTableUUID() for a description of canonical uuids.


getIndexName

public java.lang.String getIndexName(int indexNum)
Get the name for the specified index number.


isIndexUnique

public boolean isIndexUnique(int indexNumber)
Return whether or not the specified index is unique.


getDataValueFactory

public org.apache.derby.iapi.types.DataValueFactory getDataValueFactory()
Gets the DataValueFactory for this connection.


generateIndexName

public java.lang.String generateIndexName(int indexNumber)
Generate an index name based on the index number.


getNumIndexes

public int getNumIndexes()
get the number of indexes on this catalog


getCatalogName

public java.lang.String getCatalogName()
get the name of the catalog


initInfo

public void initInfo(int columnCount,
                     java.lang.String catalogName,
                     int[][] indexColumnPositions,
                     java.lang.String[][] indexColumnNames,
                     boolean[] indexUniqueness,
                     java.lang.String[] uuidStrings)
Initialize info, including array of index names and array of index column counts. Called at constructor time.


getCreateHeapProperties

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


getCreateIndexProperties

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


getPrimaryKeyIndexNumber

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


getHeapColumnCount

public final int getHeapColumnCount()
Get the number of columns in the heap.


convertIdCase

protected java.lang.String convertIdCase(java.lang.String id)

makeEmptyRow

public org.apache.derby.iapi.sql.execute.ExecRow makeEmptyRow()
                                                       throws org.apache.derby.iapi.error.StandardException
Return an empty row for this conglomerate.


makeRow

public org.apache.derby.iapi.sql.execute.ExecRow makeRow(TupleDescriptor td,
                                                         TupleDescriptor parent)
                                                  throws org.apache.derby.iapi.error.StandardException
most subclasses should provide this method. One or two oddball cases in Replication and SysSTATEMENTSRowFactory don't. For those we call makeRow with the additional arguments.


buildDescriptor

public abstract TupleDescriptor buildDescriptor(org.apache.derby.iapi.sql.execute.ExecRow row,
                                                TupleDescriptor parentTuple,
                                                DataDictionary dataDictionary)
                                         throws org.apache.derby.iapi.error.StandardException
builds a tuple descriptor from a row


buildColumnList

public abstract SystemColumn[] buildColumnList()
builds a column list for the catalog


buildEmptyIndexRow

public abstract org.apache.derby.iapi.sql.execute.ExecIndexRow buildEmptyIndexRow(int indexNumber,
                                                                                  org.apache.derby.iapi.types.RowLocation rowLocation)
                                                                           throws org.apache.derby.iapi.error.StandardException
builds an empty row given for a given index number.


getIndexColumnPositions

public int[] getIndexColumnPositions(int indexNumber)
Return the column positions for a given index number


getIndexColumnNames

public java.lang.String[] getIndexColumnNames(int indexNumber)
Return the names of columns for a given index number


checkIndexNumber

protected void checkIndexNumber(int indexNumber)