com.sas.metadata.remote
Interface Join

All Superinterfaces:
AbstractTransformation, ClassifierMap, CMetadata, MdObjectBase, MdObjectBaseUtil, MdObjectBaseXML, PrimaryType, java.rmi.Remote, Root, Transformation

public interface Join
extends ClassifierMap

The output of a Join is limited to one JoinTable. A Join may have at most two inputs. A Join may not exist without a Select.

For nested joins a Join should be documented for each pair of joined tables. For example: Table1 is joined to Table2 that results in JoinTable1. JoinTable1 is then joined with Table3 to create JoinTable2. JoinTable2 now acts as in input into a Select that documents the rows and columns that are to be included in the final output table.

Attributes of Join are:

Associations of Join are:

Usage

To create an instance of this Join, use the factory create methods.
Example: create a Join with name "Join_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();
 Join myObject = (Join) factory.createComplexMetadataObject(objectStore, "Join_Object", MetadataObjects.JOIN, "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_ONFORJOIN_NAME
          Constant used for the name of the OnForJoin association.
static java.lang.String ASSOCIATION_OWNINGJOINTABLE_NAME
          Constant used for the name of the OwningJoinTable association.
static java.lang.String ATTRIBUTE_JOINTYPE_NAME
          Constant used for the name of the JoinType attribute.
 
Fields inherited from interface com.sas.metadata.remote.ClassifierMap
ASSOCIATION_ASSOCIATEDROWSELECTOR_NAME, ASSOCIATION_CLASSIFIERSOURCES_NAME, ASSOCIATION_CLASSIFIERTARGETS_NAME, ASSOCIATION_FEATUREMAPS_NAME
 
Fields inherited from interface com.sas.metadata.remote.Transformation
ASSOCIATION_ASSOCIATEDPROMPT_NAME, ASSOCIATION_STEPS_NAME
 
Fields inherited from interface com.sas.metadata.remote.AbstractTransformation
ASSOCIATION_COMPUTELOCATIONS_NAME, ASSOCIATION_CONDITIONACTIONSETS_NAME, ASSOCIATION_CUSTOMIZERS_NAME, ASSOCIATION_DEPLOYEDCOMPONENTS_NAME, ASSOCIATION_SOURCECODE_NAME, ASSOCIATION_SOURCESPECIFICATIONS_NAME, ASSOCIATION_SUBSTITUTIONVARIABLES_NAME, ASSOCIATION_TARGETSPECIFICATIONS_NAME, ASSOCIATION_TRANSFORMATIONSOURCES_NAME, ASSOCIATION_TRANSFORMATIONTARGETS_NAME, ASSOCIATION_TRIGGEREDEVENTS_NAME, ASSOCIATION_TRIGGERINGEVENTS_NAME, ATTRIBUTE_ISACTIVE_NAME, ATTRIBUTE_ISUSERDEFINED_NAME, ATTRIBUTE_TRANSFORMROLE_NAME
 
Fields inherited from interface com.sas.metadata.remote.PrimaryType
ASSOCIATION_FAVORITESCONTAINERS_NAME, ATTRIBUTE_ISHIDDEN_NAME, ATTRIBUTE_PUBLICTYPE_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
 java.lang.String getJoinType()
          Gets the String value of JoinType
 int getJoinTypeMaxLength()
          Gets the maximum length of JoinType
 int getJoinTypeState()
          Gets the Metadata State of JoinType
 OnClause getOnForJoin()
          Gets the OnClause for OnForJoin
 AssociationList getOnForJoins()
          Gets the AssociationList of OnForJoins
 AssociationList getOnForJoins(boolean fGoToServer)
          Gets the Associationlist of OnForJoins
 JoinTable getOwningJoinTable()
          Gets the JoinTable for OwningJoinTable
 AssociationList getOwningJoinTables()
          Gets the AssociationList of OwningJoinTables
 AssociationList getOwningJoinTables(boolean fGoToServer)
          Gets the Associationlist of OwningJoinTables
 void initializePredObjects()
          (S) Adds the Associated objects to the predObjects which are:
OnForJoin
OwningJoinTable
 void initializeRequiredObjects()
          (S) This initializes the Required Objects(Roles) which are:
OwningJoinTable
 void setJoinType(java.lang.String inJoinType)
          Sets the JoinType value and sets the state to MetadataState.LOCAL.
 void setJoinType(java.lang.String inJoinType, int state)
          Sets the JoinType Metadata State.
 void setJoinTypeState(int state)
          Sets the Metadata State of JoinType.
 void setOnForJoin(OnClause inObject)
          Sets the OnForJoins list 0th element to be inObject.
 void setOnForJoins(AssociationList list)
          Sets the OnForJoins list to be list.
 void setOnForJoins(AssociationList list, int state)
          Sets the OnForJoins list to be list.
 void setOwningJoinTable(JoinTable inObject)
          Sets the OwningJoinTables list 0th element to be inObject.
 void setOwningJoinTables(AssociationList list)
          Sets the OwningJoinTables list to be list.
 void setOwningJoinTables(AssociationList list, int state)
          Sets the OwningJoinTables list to be list.
 
Methods inherited from interface com.sas.metadata.remote.ClassifierMap
getAssociatedRowSelector, getAssociatedRowSelectors, getAssociatedRowSelectors, getClassifierSources, getClassifierSources, getClassifierTargets, getClassifierTargets, getFeatureMaps, getFeatureMaps, setAssociatedRowSelector, setAssociatedRowSelectors, setAssociatedRowSelectors, setClassifierSources, setClassifierSources, setClassifierTargets, setClassifierTargets, setFeatureMaps, setFeatureMaps
 
Methods inherited from interface com.sas.metadata.remote.Transformation
getAssociatedPrompt, getAssociatedPrompts, getAssociatedPrompts, getSteps, getSteps, setAssociatedPrompt, setAssociatedPrompts, setAssociatedPrompts, setSteps, setSteps
 
Methods inherited from interface com.sas.metadata.remote.AbstractTransformation
getComputeLocations, getComputeLocations, getConditionActionSets, getConditionActionSets, getCustomizers, getCustomizers, getDeployedComponents, getDeployedComponents, getIsActive, getIsActiveState, getIsUserDefined, getIsUserDefinedState, getSourceCode, getSourceCodes, getSourceCodes, getSourceSpecifications, getSourceSpecifications, getSubstitutionVariables, getSubstitutionVariables, getTargetSpecifications, getTargetSpecifications, getTransformationSources, getTransformationSources, getTransformationTargets, getTransformationTargets, getTransformRole, getTransformRoleMaxLength, getTransformRoleState, getTriggeredEvents, getTriggeredEvents, getTriggeringEvents, getTriggeringEvents, setComputeLocations, setComputeLocations, setConditionActionSets, setConditionActionSets, setCustomizers, setCustomizers, setDeployedComponents, setDeployedComponents, setIsActive, setIsActive, setIsActive, setIsActive, setIsActiveState, setIsUserDefined, setIsUserDefined, setIsUserDefined, setIsUserDefined, setIsUserDefinedState, setSourceCode, setSourceCodes, setSourceCodes, setSourceSpecifications, setSourceSpecifications, setSubstitutionVariables, setSubstitutionVariables, setTargetSpecifications, setTargetSpecifications, setTransformationSources, setTransformationSources, setTransformationTargets, setTransformationTargets, setTransformRole, setTransformRole, setTransformRoleState, setTriggeredEvents, setTriggeredEvents, setTriggeringEvents, setTriggeringEvents
 
Methods inherited from interface com.sas.metadata.remote.PrimaryType
getFavoritesContainers, getFavoritesContainers, getIsHidden, getIsHiddenState, getPublicType, getPublicTypeMaxLength, getPublicTypeState, setFavoritesContainers, setFavoritesContainers, setIsHidden, setIsHidden, setIsHidden, setIsHidden, setIsHiddenState, setPublicType, setPublicType, setPublicTypeState
 
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_JOINTYPE_NAME

static final java.lang.String ATTRIBUTE_JOINTYPE_NAME
Constant used for the name of the JoinType attribute.

JoinType: The type of the join (inner, full outer, left outer, right outer).

See Also:
Constant Field Values

ASSOCIATION_ONFORJOIN_NAME

static final java.lang.String ASSOCIATION_ONFORJOIN_NAME
Constant used for the name of the OnForJoin association.

OnForJoin: The on statement of this join object. 

See Also:
Constant Field Values

ASSOCIATION_OWNINGJOINTABLE_NAME

static final java.lang.String ASSOCIATION_OWNINGJOINTABLE_NAME
Constant used for the name of the OwningJoinTable association.

OwningJoinTable: The result of this join statement.  

See Also:
Constant Field Values
Method Detail

initializeRequiredObjects

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

Specified by:
initializeRequiredObjects in interface AbstractTransformation
Specified by:
initializeRequiredObjects in interface ClassifierMap
Specified by:
initializeRequiredObjects in interface MdObjectBaseUtil
Specified by:
initializeRequiredObjects in interface PrimaryType
Specified by:
initializeRequiredObjects in interface Root
Specified by:
initializeRequiredObjects in interface Transformation
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:
OnForJoin
OwningJoinTable

Specified by:
initializePredObjects in interface AbstractTransformation
Specified by:
initializePredObjects in interface ClassifierMap
Specified by:
initializePredObjects in interface MdObjectBase
Specified by:
initializePredObjects in interface PrimaryType
Specified by:
initializePredObjects in interface Root
Specified by:
initializePredObjects in interface Transformation
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.

getJoinType

java.lang.String getJoinType()
                             throws java.rmi.RemoteException
Gets the String value of JoinType

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

getJoinTypeState

int getJoinTypeState()
                     throws java.rmi.RemoteException
Gets the Metadata State of JoinType

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

getJoinTypeMaxLength

int getJoinTypeMaxLength()
                         throws java.rmi.RemoteException
Gets the maximum length of JoinType

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

getOnForJoins

AssociationList getOnForJoins()
                              throws java.rmi.RemoteException,
                                     MdException
Gets the AssociationList of OnForJoins

Returns:
Returns the AssociationList of OnForJoins which can be of type:
OnClause
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.
MdException

getOnForJoin

OnClause getOnForJoin()
                      throws java.rmi.RemoteException,
                             MdException
Gets the OnClause for OnForJoin

Returns:
The OnClause ( null if not set) of OnForJoinwhich can be of type:
OnClause
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.
MdException - If error getting/setting part of the object.

getOwningJoinTables

AssociationList getOwningJoinTables()
                                    throws java.rmi.RemoteException,
                                           MdException
Gets the AssociationList of OwningJoinTables

Returns:
Returns the AssociationList of OwningJoinTables which can be of type:
JoinTable
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.
MdException

getOwningJoinTable

JoinTable getOwningJoinTable()
                             throws java.rmi.RemoteException,
                                    MdException
Gets the JoinTable for OwningJoinTable

Returns:
The JoinTable ( null if not set) of OwningJoinTablewhich can be of type:
JoinTable
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.
MdException - If error getting/setting part of the object.

getOnForJoins

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

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

getOwningJoinTables

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

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

setJoinType

void setJoinType(java.lang.String inJoinType)
                 throws java.rmi.RemoteException
Sets the JoinType value and sets the state to MetadataState.LOCAL.

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

setJoinType

void setJoinType(java.lang.String inJoinType,
                 int state)
                 throws java.rmi.RemoteException
Sets the JoinType Metadata State.

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

setJoinTypeState

void setJoinTypeState(int state)
                      throws java.rmi.RemoteException
Sets the Metadata State of JoinType.

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

setOnForJoins

void setOnForJoins(AssociationList list)
                   throws java.rmi.RemoteException
Sets the OnForJoins list to be list. Object of which can be of type:
OnClause

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

setOnForJoins

void setOnForJoins(AssociationList list,
                   int state)
                   throws java.rmi.RemoteException
Sets the OnForJoins list to be list. Object of which can be of type:
OnClause

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

setOnForJoin

void setOnForJoin(OnClause inObject)
                  throws java.rmi.RemoteException
Sets the OnForJoins list 0th element to be inObject.

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

setOwningJoinTables

void setOwningJoinTables(AssociationList list)
                         throws java.rmi.RemoteException
Sets the OwningJoinTables list to be list. Object of which can be of type:
JoinTable

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

setOwningJoinTables

void setOwningJoinTables(AssociationList list,
                         int state)
                         throws java.rmi.RemoteException
Sets the OwningJoinTables list to be list. Object of which can be of type:
JoinTable

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

setOwningJoinTable

void setOwningJoinTable(JoinTable inObject)
                        throws java.rmi.RemoteException
Sets the OwningJoinTables list 0th element to be inObject.

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



Copyright © 2009 SAS Institute Inc. All Rights Reserved.