com.sas.metadata.remote
Interface UniqueKey

All Superinterfaces:
CMetadata, Key, MdObjectBase, MdObjectBaseUtil, MdObjectBaseXML, java.rmi.Remote, Root, SecondaryType

public interface UniqueKey
extends Key

A representation of the unique and primary keys of a table. It is also associated with the columns in the table that comprise the key.

Attributes of UniqueKey are:

Associations of UniqueKey are:

Usage

To create an instance of this UniqueKey, use the factory create methods.
Example: create a UniqueKey with name "UniqueKey_Object", in repository "AAAAAAAA".
 // create a store to contain your objects for this change. If you do not have an existing object
 // or store to use.  You may obtain the store from another object by using Object.getObjectStore().
 MdFactory factory; //where "factory" is a valid MdFactory instance
 MdObjectStore objectStore = factory.createObjectStore();
 UniqueKey myObject = (UniqueKey) factory.createComplexMetadataObject(objectStore, "UniqueKey_Object", MetadataObjects.UNIQUEKEY, "AAAAAAAA");
 myObject.updateMetadataAll();  // Write object to server
 objectStore.dispose();  // dispose of the object store if it is no longer needed
 

Behavior

Dependencies

This class depends on objects being contained in an MdObjectStore. Object stores should be disposed of when they are no longer needed as this will help clean up memory. Disposing an object store will dispose of all objects contained within that store.

Since:
9.0

Field Summary
static java.lang.String ASSOCIATION_FOREIGNKEYS_NAME
          Constant used for the name of the ForeignKeys association.
static java.lang.String ASSOCIATION_TABLE_NAME
          Constant used for the name of the Table association.
static java.lang.String ATTRIBUTE_ISPRIMARY_NAME
          Constant used for the name of the IsPrimary attribute.
 
Fields inherited from interface com.sas.metadata.remote.Key
ASSOCIATION_DISPLAYCOLUMNS_NAME, ASSOCIATION_KEYEDCOLUMNS_NAME
 
Fields inherited from interface com.sas.metadata.remote.Root
ASSOCIATION_ACCESSCONTROLS_NAME, ASSOCIATION_CHANGES_NAME, ASSOCIATION_CUSTOMASSOCIATIONS_NAME, ASSOCIATION_DOCUMENTS_NAME, ASSOCIATION_EXTENSIONS_NAME, ASSOCIATION_EXTERNALIDENTITIES_NAME, ASSOCIATION_GROUPS_NAME, ASSOCIATION_IMPLEMENTORS_NAME, ASSOCIATION_KEYWORDS_NAME, ASSOCIATION_LOCALIZEDATTRIBUTES_NAME, ASSOCIATION_NOTES_NAME, ASSOCIATION_PRIMARYPROPERTYGROUP_NAME, ASSOCIATION_PROMPTS_NAME, ASSOCIATION_PROPERTIES_NAME, ASSOCIATION_PROPERTYSETS_NAME, ASSOCIATION_REFERENCEDOBJECTS_NAME, ASSOCIATION_RESPONSIBLEPARTIES_NAME, ASSOCIATION_SOURCETRANSFORMATIONS_NAME, ASSOCIATION_SPECSOURCETRANSFORMATIONS_NAME, ASSOCIATION_SPECTARGETTRANSFORMATIONS_NAME, ASSOCIATION_TARGETTRANSFORMATIONS_NAME, ASSOCIATION_TIMESTAMPS_NAME, ASSOCIATION_TREES_NAME, ASSOCIATION_TSOBJECTNAMESPACE_NAME, ASSOCIATION_USEDBYPROTOTYPES_NAME, ASSOCIATION_USINGPROTOTYPE_NAME, ASSOCIATION_VARIABLES_NAME, ATTRIBUTE_CHANGESTATE_NAME, ATTRIBUTE_LOCKEDBY_NAME, ATTRIBUTE_USAGEVERSION_NAME
 
Fields inherited from interface com.sas.metadata.remote.MdObjectBase
ATTRIBUTE_DESC_NAME, ATTRIBUTE_ID_NAME, ATTRIBUTE_METADATACREATED_NAME, ATTRIBUTE_METADATAUPDATED_NAME, ATTRIBUTE_NAME_NAME
 
Method Summary
 AssociationList getForeignKeys()
          Gets the Association list of ForeignKeys
 AssociationList getForeignKeys(boolean fGoToServer)
          Gets the Associationlist of ForeignKeys
 int getIsPrimary()
          Gets the int value of IsPrimary
 int getIsPrimaryState()
          Gets the Metadata State of IsPrimary
 DataTable getTable()
          Gets the DataTable for Table
 AssociationList getTables()
          Gets the Association list of Tables
 AssociationList getTables(boolean fGoToServer)
          Gets the Associationlist of Tables
 void initializePredObjects()
          (S) Adds the Associated objects to the predObjects which are:
 void initializeRequiredObjects()
          (S) This initializes the Required Objects(Roles) which are:
Table
 void setForeignKeys(AssociationList list)
          Sets the ForeignKeys list to be list.
 void setForeignKeys(AssociationList inObjects, int state)
          Sets the entire ForeignKeys list to match the passed in AssociationList, sets the state of the ForeignKeys
 void setIsPrimary(int inIsPrimary)
          Sets the IsPrimary value and sets the state to MetadataState.LOCAL.
 void setIsPrimary(int inIsPrimary, int state)
          Sets the IsPrimary Metadata State.
 void setIsPrimary(java.lang.String inIsPrimary)
          Sets the IsPrimary value and sets the state to MetadataState.LOCAL.
 void setIsPrimary(java.lang.String inIsPrimary, int state)
          Sets the IsPrimary value and Metadata State.
 void setIsPrimaryState(int state)
          Sets the Metadata State of IsPrimary.
 void setTable(DataTable inObject)
          Sets the Tables list 0th element to be inObject.
 void setTables(AssociationList list)
          Sets the Tables list to be list.
 void setTables(AssociationList list, int state)
          Sets the Tables list to be list.
 
Methods inherited from interface com.sas.metadata.remote.Key
getDisplayColumns, getDisplayColumns, getKeyedColumns, getKeyedColumns, setDisplayColumns, setDisplayColumns, setKeyedColumns, setKeyedColumns
 
Methods inherited from interface com.sas.metadata.remote.Root
getAccessControls, getAccessControls, getChanges, getChanges, getChangeState, getChangeStateMaxLength, getChangeStateState, getCustomAssociations, getCustomAssociations, getDocuments, getDocuments, getExtensions, getExtensions, getExternalIdentities, getExternalIdentities, getGroups, getGroups, getImplementors, getImplementors, getKeywords, getKeywords, getLocalizedAttributes, getLocalizedAttributes, getLockedBy, getLockedByMaxLength, getLockedByState, getNotes, getNotes, getPrimaryPropertyGroup, getPrimaryPropertyGroups, getPrimaryPropertyGroups, getPrompts, getPrompts, getProperties, getProperties, getPropertySets, getPropertySets, getReferencedObjects, getReferencedObjects, getResponsibleParties, getResponsibleParties, getSourceTransformations, getSourceTransformations, getSpecSourceTransformations, getSpecSourceTransformations, getSpecTargetTransformations, getSpecTargetTransformations, getTargetTransformations, getTargetTransformations, getTimestamps, getTimestamps, getTrees, getTrees, getTSObjectNamespace, getTSObjectNamespaces, getTSObjectNamespaces, getUsageVersion, getUsageVersionState, getUsedByPrototypes, getUsedByPrototypes, getUsingPrototype, getUsingPrototypes, getUsingPrototypes, getVariables, getVariables, setAccessControls, setAccessControls, setChanges, setChanges, setChangeState, setChangeState, setChangeStateState, setCustomAssociations, setCustomAssociations, setDocuments, setDocuments, setExtensions, setExtensions, setExternalIdentities, setExternalIdentities, setGroups, setGroups, setImplementors, setImplementors, setKeywords, setKeywords, setLocalizedAttributes, setLocalizedAttributes, setLockedBy, setLockedBy, setLockedByState, setNotes, setNotes, setPrimaryPropertyGroup, setPrimaryPropertyGroups, setPrimaryPropertyGroups, setPrompts, setPrompts, setProperties, setProperties, setPropertySets, setPropertySets, setReferencedObjects, setReferencedObjects, setResponsibleParties, setResponsibleParties, setSourceTransformations, setSourceTransformations, setSpecSourceTransformations, setSpecSourceTransformations, setSpecTargetTransformations, setSpecTargetTransformations, setTargetTransformations, setTargetTransformations, setTimestamps, setTimestamps, setTrees, setTrees, setTSObjectNamespace, setTSObjectNamespaces, setTSObjectNamespaces, setUsageVersion, setUsageVersion, setUsageVersion, setUsageVersion, setUsageVersionState, setUsedByPrototypes, setUsedByPrototypes, setUsingPrototype, setUsingPrototypes, setUsingPrototypes, setVariables, setVariables
 
Methods inherited from interface com.sas.metadata.remote.MdObjectBaseXML
closeUpdateMetadataXML, createEmptyXML, createObjectRefreshXML, createObjectXML, createObjectXML, createUpdateAssociationXML, createUpdateAssociationXML, createUpdateSimpleXML, doCreateUpdateXML, getUpdateSimpleSubstring, updateMetadataAll
 
Methods inherited from interface com.sas.metadata.remote.MdObjectBaseUtil
addMdObjectListener, delete, dispose, fireMdObjectModified, getAssociatedObjects, getAssociatedObjects, getAssociatedObjects, getAssociationNames, getAssocs, getAssocsWA, getAttributeNames, getAttrs, getAttrsStates, getChangeManagementState, getChgMgtExternalIdentityImportType, getClientSideOnlyObject, getMdObjectAssociation, getPopulatedAssocs, getUpdatedAttrs, getViewList, isCheckedOut, isLocked, objectModified, removeMdObjectListener, setAttrs, setChangeManagementTargetRepository, setChgMgtExternalIdentityImportType, setClientSideOnlyObject, setMdObjectAssociation, touch, updateAssnsIds
 
Methods inherited from interface com.sas.metadata.remote.MdObjectBase
addElementToChangeList, clearChangeList, getChangeList, getCMetadataType, getDesc, getDescMaxLength, getDescState, getFQID, getId, getIdState, getMetadataCreated, getMetadataCreatedState, getMetadataUpdated, getMetadataUpdatedState, getName, getNameMaxLength, getNameState, getObjectStore, getPredAssociations, getRepositoryID, getRequiredAssociations, getState, isAssociationRequired, isNewObject, isPredAssociation, removeElementFromChangeList, resetObject, resetState, resetStates, setCMetadataType, setDesc, setDesc, setDescState, setFQID, setFQID, setId, setId, setIdState, setMetadataCreated, setMetadataCreated, setMetadataCreatedState, setMetadataUpdated, setMetadataUpdated, setMetadataUpdatedState, setName, setName, setNameState, setObjectStore, setState
 

Field Detail

ATTRIBUTE_ISPRIMARY_NAME

static final java.lang.String ATTRIBUTE_ISPRIMARY_NAME
Constant used for the name of the IsPrimary attribute.

IsPrimary: If the key is a primary key, the value of this attribute should be true. The default value is false.

See Also:
Constant Field Values

ASSOCIATION_FOREIGNKEYS_NAME

static final java.lang.String ASSOCIATION_FOREIGNKEYS_NAME
Constant used for the name of the ForeignKeys association.

ForeignKeys: The list of foreign keys that are associated with this unique key. 

See Also:
Constant Field Values

ASSOCIATION_TABLE_NAME

static final java.lang.String ASSOCIATION_TABLE_NAME
Constant used for the name of the Table association.

Table: The table that owns this unique key. 

See Also:
Constant Field Values
Method Detail

initializeRequiredObjects

void initializeRequiredObjects()
                               throws java.rmi.RemoteException
(S) This initializes the Required Objects(Roles) which are:
Table

Specified by:
initializeRequiredObjects in interface Key
Specified by:
initializeRequiredObjects in interface MdObjectBaseUtil
Specified by:
initializeRequiredObjects in interface Root
Specified by:
initializeRequiredObjects in interface SecondaryType
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.

initializePredObjects

void initializePredObjects()
                           throws java.rmi.RemoteException
(S) Adds the Associated objects to the predObjects which are:

Specified by:
initializePredObjects in interface Key
Specified by:
initializePredObjects in interface MdObjectBase
Specified by:
initializePredObjects in interface Root
Specified by:
initializePredObjects in interface SecondaryType
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.

getIsPrimary

int getIsPrimary()
                 throws java.rmi.RemoteException
Gets the int value of IsPrimary

Returns:
The IsPrimary
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.

getIsPrimaryState

int getIsPrimaryState()
                      throws java.rmi.RemoteException
Gets the Metadata State of IsPrimary

Returns:
The State.
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.

getForeignKeys

AssociationList getForeignKeys()
                               throws java.rmi.RemoteException,
                                      MdException
Gets the Association list of ForeignKeys

Returns:
The AssociationList of ForeignKeys which can be of type:
ForeignKey
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.
MdException - If error getting/setting part of the object.

getTables

AssociationList getTables()
                          throws java.rmi.RemoteException,
                                 MdException
Gets the Association list of Tables

Returns:
The AssociationList of Tables which can be of type:
DataTable
ExternalTable
RelationalTable
PhysicalTable
WorkTable
QueryTable
JoinTable
TableCollection
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.
MdException - If error getting/setting part of the object.

getTable

DataTable getTable()
                   throws java.rmi.RemoteException,
                          MdException
Gets the DataTable for Table

Returns:
The DataTable ( null if not set ) of Table which can be of type:
DataTable
ExternalTable
RelationalTable
PhysicalTable
WorkTable
QueryTable
JoinTable
TableCollection
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.
MdException - If error getting/setting part of the object.

getForeignKeys

AssociationList getForeignKeys(boolean fGoToServer)
                               throws java.rmi.RemoteException,
                                      MdException
Gets the Associationlist of ForeignKeys

Parameters:
fGoToServer - boolean Get the value from the server.
Returns:
Returns the ForeignKeys which can be of type:
ForeignKey
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.
MdException - If error getting/setting part of the object.

getTables

AssociationList getTables(boolean fGoToServer)
                          throws java.rmi.RemoteException,
                                 MdException
Gets the Associationlist of Tables

Parameters:
fGoToServer - boolean Get the value from the server.
Returns:
Returns the Tables which can be of type:
DataTable
ExternalTable
RelationalTable
PhysicalTable
WorkTable
QueryTable
JoinTable
TableCollection
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.
MdException - If error getting/setting part of the object.

setIsPrimary

void setIsPrimary(int inIsPrimary)
                  throws java.rmi.RemoteException
Sets the IsPrimary value and sets the state to MetadataState.LOCAL.

Parameters:
inIsPrimary - int
Throws:
java.rmi.RemoteException - If error communicating with remote object.

setIsPrimary

void setIsPrimary(int inIsPrimary,
                  int state)
                  throws java.rmi.RemoteException
Sets the IsPrimary Metadata State.

Parameters:
inIsPrimary - int
state - int
Throws:
java.rmi.RemoteException - If error communicating with remote object.

setIsPrimary

void setIsPrimary(java.lang.String inIsPrimary)
                  throws java.rmi.RemoteException
Sets the IsPrimary value and sets the state to MetadataState.LOCAL.

Parameters:
inIsPrimary - String
Throws:
java.rmi.RemoteException - If error communicating with remote object.

setIsPrimary

void setIsPrimary(java.lang.String inIsPrimary,
                  int state)
                  throws java.rmi.RemoteException
Sets the IsPrimary value and Metadata State.

Parameters:
inIsPrimary - String
state - int
Throws:
java.rmi.RemoteException - If error communicating with remote object.

setIsPrimaryState

void setIsPrimaryState(int state)
                       throws java.rmi.RemoteException
Sets the Metadata State of IsPrimary.

Parameters:
state - int
Throws:
java.rmi.RemoteException - If error communicating with remote object.

setForeignKeys

void setForeignKeys(AssociationList list)
                    throws java.rmi.RemoteException
Sets the ForeignKeys list to be list. Objects of which can be of type:
ForeignKey

Parameters:
list - AssociationList
Throws:
java.rmi.RemoteException - If error communicating with remote object.

setForeignKeys

void setForeignKeys(AssociationList inObjects,
                    int state)
                    throws java.rmi.RemoteException
Sets the entire ForeignKeys list to match the passed in AssociationList, sets the state of the ForeignKeys

Parameters:
inObjects - AssociationList
state - int
Throws:
java.rmi.RemoteException - If error communicating with remote object.

setTables

void setTables(AssociationList list)
               throws java.rmi.RemoteException
Sets the Tables list to be list. Objects of which can be of type:
DataTable
ExternalTable
RelationalTable
PhysicalTable
WorkTable
QueryTable
JoinTable
TableCollection

Parameters:
list - AssociationList
Throws:
java.rmi.RemoteException - If error communicating with remote object.

setTables

void setTables(AssociationList list,
               int state)
               throws java.rmi.RemoteException
Sets the Tables list to be list. Objects of which can be of type:
DataTable
ExternalTable
RelationalTable
PhysicalTable
WorkTable
QueryTable
JoinTable
TableCollection

Parameters:
list - AssociationList
state - int
Throws:
java.rmi.RemoteException - If error communicating with remote object.

setTable

void setTable(DataTable inObject)
              throws java.rmi.RemoteException
Sets the Tables list 0th element to be inObject.

Parameters:
inObject - DataTable
Throws:
java.rmi.RemoteException - If error communicating with remote object.



Copyright © 2009 SAS Institute Inc. All Rights Reserved.