org.apache.derby.iapi.sql.dictionary
Class DataDescriptorGenerator

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

public class DataDescriptorGenerator
extends java.lang.Object

This is an implementation of the DataDescriptorGenerator interface that lives in the DataDictionary protocol. See that interface for a description of what this class is supposed to do.

Version:
0.1
Author:
Jeff Lichtman

Field Summary
protected  DataDictionary dataDictionary
           
private  UUIDFactory uuidf
           
 
Constructor Summary
DataDescriptorGenerator(DataDictionary dataDictionary)
          Make a generator.
 
Method Summary
protected  UUIDFactory getUUIDFactory()
           
 CheckConstraintDescriptor newCheckConstraintDescriptor(TableDescriptor table, java.lang.String constraintName, boolean deferrable, boolean initiallyDeferred, UUID constraintId, java.lang.String constraintText, int[] refCols, SchemaDescriptor schemaDesc, boolean isEnabled)
           
 CheckConstraintDescriptor newCheckConstraintDescriptor(TableDescriptor table, java.lang.String constraintName, boolean deferrable, boolean initiallyDeferred, UUID constraintId, java.lang.String constraintText, ReferencedColumns referencedColumns, SchemaDescriptor schemaDesc, boolean isEnabled)
           
 ConglomerateDescriptor newConglomerateDescriptor(long conglomerateId, java.lang.String name, boolean indexable, IndexRowGenerator indexRowGenerator, boolean isConstraint, UUID uuid, UUID tableID, UUID schemaID)
          Create a conglomerate descriptor for the given conglomerate id.
 FileInfoDescriptor newFileInfoDescriptor(UUID id, SchemaDescriptor sd, java.lang.String SQLName, long generationId)
           
 ForeignKeyConstraintDescriptor newForeignKeyConstraintDescriptor(TableDescriptor table, java.lang.String constraintName, boolean deferrable, boolean initiallyDeferred, int[] fkColumns, UUID constraintId, UUID indexId, SchemaDescriptor schemaDesc, ReferencedKeyConstraintDescriptor referencedConstraintDescriptor, boolean isEnabled, int raDeleteRule, int raUpdateRule)
           
 ForeignKeyConstraintDescriptor newForeignKeyConstraintDescriptor(TableDescriptor table, java.lang.String constraintName, boolean deferrable, boolean initiallyDeferred, int[] fkColumns, UUID constraintId, UUID indexId, SchemaDescriptor schemaDesc, UUID referencedConstraintId, boolean isEnabled, int raDeleteRule, int raUpdateRule)
           
 ReferencedKeyConstraintDescriptor newPrimaryKeyConstraintDescriptor(TableDescriptor table, java.lang.String constraintName, boolean deferrable, boolean initiallyDeferred, int[] referencedColumns, UUID constraintId, UUID indexId, SchemaDescriptor schemaDesc, boolean isEnabled, int referenceCount)
           
 SchemaDescriptor newSchemaDescriptor(java.lang.String schemaName, java.lang.String aid, UUID oid)
          Create a descriptor for the named schema with a null UUID.
 TableDescriptor newTableDescriptor(java.lang.String tableName, SchemaDescriptor schema, int tableType, boolean onCommitDeleteRows, boolean onRollbackDeleteRows)
          Create a descriptor for the temporary table within the given schema.
 TableDescriptor newTableDescriptor(java.lang.String tableName, SchemaDescriptor schema, int tableType, char lockGranularity)
          Create a descriptor for the named table within the given schema.
 TriggerDescriptor newTriggerDescriptor(SchemaDescriptor sd, UUID uuid, java.lang.String name, int eventMask, boolean isBefore, boolean isRow, boolean isEnabled, TableDescriptor td, UUID whenSPSId, UUID actionSPSId, java.sql.Timestamp creationTimestamp, int[] referencedCols, java.lang.String triggerDefinition, boolean referencingOld, boolean referencingNew, java.lang.String oldReferencingName, java.lang.String newReferencingName)
          Create a new trigger descriptor.
 ReferencedKeyConstraintDescriptor newUniqueConstraintDescriptor(TableDescriptor table, java.lang.String constraintName, boolean deferrable, boolean initiallyDeferred, int[] referencedColumns, UUID constraintId, UUID indexId, SchemaDescriptor schemaDesc, boolean isEnabled, int referenceCount)
           
 ViewDescriptor newViewDescriptor(UUID viewID, java.lang.String viewName, java.lang.String viewText, int checkOption, UUID compSchemaId)
          Create a viewDescriptor for the view with the given UUID.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

uuidf

private UUIDFactory uuidf

dataDictionary

protected final DataDictionary dataDictionary
Constructor Detail

DataDescriptorGenerator

public DataDescriptorGenerator(DataDictionary dataDictionary)
Make a generator. Specify the data dictionary that it operates on.

Parameters:
dataDictionary - the data dictionary that this generator makes objects for
Method Detail

newSchemaDescriptor

public SchemaDescriptor newSchemaDescriptor(java.lang.String schemaName,
                                            java.lang.String aid,
                                            UUID oid)
                                     throws StandardException
Create a descriptor for the named schema with a null UUID.

Parameters:
schemaName - The name of the schema we're interested in. If the name is NULL, get the descriptor for the current schema.
aid - The authorization ID associated with the schema. The owner of the schema.
oid - The object ID
Returns:
The descriptor for the schema.
Throws:
StandardException - Thrown on failure

newTableDescriptor

public TableDescriptor newTableDescriptor(java.lang.String tableName,
                                          SchemaDescriptor schema,
                                          int tableType,
                                          char lockGranularity)
Create a descriptor for the named table within the given schema. If the schema parameter is NULL, it creates a schema descriptor using the current default schema.

Parameters:
tableName - The name of the table to get the descriptor for
schema - The descriptor for the schema the table lives in. If null, use the current (default) schema.
tableType - The type of the table: base table or view.
lockGranularity - The lock granularity.
Returns:
The descriptor for the table.

newTableDescriptor

public TableDescriptor newTableDescriptor(java.lang.String tableName,
                                          SchemaDescriptor schema,
                                          int tableType,
                                          boolean onCommitDeleteRows,
                                          boolean onRollbackDeleteRows)
Create a descriptor for the temporary table within the given schema.

Parameters:
tableName - The name of the temporary table to get the descriptor for
schema - The descriptor for the schema the table lives in.
tableType - The type of the table: temporary table
onCommitDeleteRows - If true, on commit delete rows else on commit preserve rows of temporary table.
onRollbackDeleteRows - If true, on rollback, delete rows from temp tables which were logically modified. true is the only supported value
Returns:
The descriptor for the table.

newViewDescriptor

public ViewDescriptor newViewDescriptor(UUID viewID,
                                        java.lang.String viewName,
                                        java.lang.String viewText,
                                        int checkOption,
                                        UUID compSchemaId)
Create a viewDescriptor for the view with the given UUID.

Parameters:
viewID - the UUID for the view.
viewName - the name of the view
viewText - the text of the view's query.
checkOption - int for check option type
compSchemaId - the UUID of the schema this was compiled in
Returns:
A descriptor for the view

newUniqueConstraintDescriptor

public ReferencedKeyConstraintDescriptor newUniqueConstraintDescriptor(TableDescriptor table,
                                                                       java.lang.String constraintName,
                                                                       boolean deferrable,
                                                                       boolean initiallyDeferred,
                                                                       int[] referencedColumns,
                                                                       UUID constraintId,
                                                                       UUID indexId,
                                                                       SchemaDescriptor schemaDesc,
                                                                       boolean isEnabled,
                                                                       int referenceCount)
See Also:
newUniqueConstraintDescriptor(org.apache.derby.iapi.sql.dictionary.TableDescriptor, java.lang.String, boolean, boolean, int[], org.apache.derby.catalog.UUID, org.apache.derby.catalog.UUID, org.apache.derby.iapi.sql.dictionary.SchemaDescriptor, boolean, int)

newPrimaryKeyConstraintDescriptor

public ReferencedKeyConstraintDescriptor newPrimaryKeyConstraintDescriptor(TableDescriptor table,
                                                                           java.lang.String constraintName,
                                                                           boolean deferrable,
                                                                           boolean initiallyDeferred,
                                                                           int[] referencedColumns,
                                                                           UUID constraintId,
                                                                           UUID indexId,
                                                                           SchemaDescriptor schemaDesc,
                                                                           boolean isEnabled,
                                                                           int referenceCount)
See Also:
newPrimaryKeyConstraintDescriptor(org.apache.derby.iapi.sql.dictionary.TableDescriptor, java.lang.String, boolean, boolean, int[], org.apache.derby.catalog.UUID, org.apache.derby.catalog.UUID, org.apache.derby.iapi.sql.dictionary.SchemaDescriptor, boolean, int)

newForeignKeyConstraintDescriptor

public ForeignKeyConstraintDescriptor newForeignKeyConstraintDescriptor(TableDescriptor table,
                                                                        java.lang.String constraintName,
                                                                        boolean deferrable,
                                                                        boolean initiallyDeferred,
                                                                        int[] fkColumns,
                                                                        UUID constraintId,
                                                                        UUID indexId,
                                                                        SchemaDescriptor schemaDesc,
                                                                        ReferencedKeyConstraintDescriptor referencedConstraintDescriptor,
                                                                        boolean isEnabled,
                                                                        int raDeleteRule,
                                                                        int raUpdateRule)
See Also:
newForeignKeyConstraintDescriptor(org.apache.derby.iapi.sql.dictionary.TableDescriptor, java.lang.String, boolean, boolean, int[], org.apache.derby.catalog.UUID, org.apache.derby.catalog.UUID, org.apache.derby.iapi.sql.dictionary.SchemaDescriptor, org.apache.derby.iapi.sql.dictionary.ReferencedKeyConstraintDescriptor, boolean, int, int)

newForeignKeyConstraintDescriptor

public ForeignKeyConstraintDescriptor newForeignKeyConstraintDescriptor(TableDescriptor table,
                                                                        java.lang.String constraintName,
                                                                        boolean deferrable,
                                                                        boolean initiallyDeferred,
                                                                        int[] fkColumns,
                                                                        UUID constraintId,
                                                                        UUID indexId,
                                                                        SchemaDescriptor schemaDesc,
                                                                        UUID referencedConstraintId,
                                                                        boolean isEnabled,
                                                                        int raDeleteRule,
                                                                        int raUpdateRule)
See Also:
newForeignKeyConstraintDescriptor(org.apache.derby.iapi.sql.dictionary.TableDescriptor, java.lang.String, boolean, boolean, int[], org.apache.derby.catalog.UUID, org.apache.derby.catalog.UUID, org.apache.derby.iapi.sql.dictionary.SchemaDescriptor, org.apache.derby.iapi.sql.dictionary.ReferencedKeyConstraintDescriptor, boolean, int, int)

newCheckConstraintDescriptor

public CheckConstraintDescriptor newCheckConstraintDescriptor(TableDescriptor table,
                                                              java.lang.String constraintName,
                                                              boolean deferrable,
                                                              boolean initiallyDeferred,
                                                              UUID constraintId,
                                                              java.lang.String constraintText,
                                                              ReferencedColumns referencedColumns,
                                                              SchemaDescriptor schemaDesc,
                                                              boolean isEnabled)
See Also:
newCheckConstraintDescriptor(org.apache.derby.iapi.sql.dictionary.TableDescriptor, java.lang.String, boolean, boolean, org.apache.derby.catalog.UUID, java.lang.String, org.apache.derby.catalog.ReferencedColumns, org.apache.derby.iapi.sql.dictionary.SchemaDescriptor, boolean)

newCheckConstraintDescriptor

public CheckConstraintDescriptor newCheckConstraintDescriptor(TableDescriptor table,
                                                              java.lang.String constraintName,
                                                              boolean deferrable,
                                                              boolean initiallyDeferred,
                                                              UUID constraintId,
                                                              java.lang.String constraintText,
                                                              int[] refCols,
                                                              SchemaDescriptor schemaDesc,
                                                              boolean isEnabled)

newConglomerateDescriptor

public ConglomerateDescriptor newConglomerateDescriptor(long conglomerateId,
                                                        java.lang.String name,
                                                        boolean indexable,
                                                        IndexRowGenerator indexRowGenerator,
                                                        boolean isConstraint,
                                                        UUID uuid,
                                                        UUID tableID,
                                                        UUID schemaID)
Create a conglomerate descriptor for the given conglomerate id.

Parameters:
name - The name of the conglomerate, if any
indexable - TRUE means the conglomerate is indexable, FALSE means it isn't
indexRowGenerator - The IndexRowGenerator for the conglomerate, null if it's a heap
isConstraint - TRUE means the conglomerate is an index backing up a constraint, FALSE means it isn't
uuid - UUID for this conglomerate
tableID - UUID for the table that this conglomerate belongs to
schemaID - UUID for the schema that conglomerate belongs to
Returns:
A ConglomerateDescriptor describing the conglomerate.

newTriggerDescriptor

public TriggerDescriptor newTriggerDescriptor(SchemaDescriptor sd,
                                              UUID uuid,
                                              java.lang.String name,
                                              int eventMask,
                                              boolean isBefore,
                                              boolean isRow,
                                              boolean isEnabled,
                                              TableDescriptor td,
                                              UUID whenSPSId,
                                              UUID actionSPSId,
                                              java.sql.Timestamp creationTimestamp,
                                              int[] referencedCols,
                                              java.lang.String triggerDefinition,
                                              boolean referencingOld,
                                              boolean referencingNew,
                                              java.lang.String oldReferencingName,
                                              java.lang.String newReferencingName)
                                       throws StandardException
Create a new trigger descriptor.

Parameters:
sd - the schema descriptor for this trigger
name - the trigger name
eventMask - TriggerDescriptor.TRIGGER_EVENT_XXXX
isBefore - is this a before (as opposed to after) trigger
isRow - is this a row trigger or statement trigger
isEnabled - is this trigger enabled or disabled
td - the table upon which this trigger is defined
whenSPSId - the sps id for the when clause (may be null)
actionSPSId - the spsid for the trigger action (may be null)
creationTimestamp - when was this trigger created?
referencedCols - what columns does this trigger reference (may be null)
triggerDefinition - The original user text of the trigger action
referencingOld - whether or not OLD appears in REFERENCING clause
referencingNew - whether or not NEW appears in REFERENCING clause
oldReferencingName - old referencing table name, if any, that appears in REFERCING clause
newReferencingName - new referencing table name, if any, that appears in REFERCING clause
Throws:
StandardException - on error

getUUIDFactory

protected UUIDFactory getUUIDFactory()

newFileInfoDescriptor

public FileInfoDescriptor newFileInfoDescriptor(UUID id,
                                                SchemaDescriptor sd,
                                                java.lang.String SQLName,
                                                long generationId)
See Also:
newFileInfoDescriptor(org.apache.derby.catalog.UUID, org.apache.derby.iapi.sql.dictionary.SchemaDescriptor, java.lang.String, long)

Built on Tue 2006-10-10 19:23:47+0200, from revision exported

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