public class LookupComponent extends JoinComponent
Modifier and Type | Class and Description |
---|---|
static class |
LookupComponent.LookupType
ATTENTIION:
1, To support OWB lookup migration, the concept Multiple Match Rows and No Match Rows introduced
2, To back support ODI 12.1.2, the LookupType property was reused as new meaning
|
static class |
LookupComponent.NO_MATCH_ROWS
The NO_MATCH_ROWS enumeration specifies the behavior when no matching rows are found in the lookup table.
|
DefaultDelegate.DefaultAttributeDelegate, DefaultDelegate.DefaultConnectorPointDelegate
oracle.odi.domain.mapping.MapComponentDelegate.AttributeDelegate, oracle.odi.domain.mapping.MapComponentDelegate.MapConnectorPointDelegate
IMapComponent.ComponentCategory
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
COMPONENT_TYPE_NAME
The component type name.
|
static java.lang.String |
DRIVER_ROLE |
static java.lang.String |
JOIN_TYPE_EXPRESSION_IN_SELECT
Join type property value for expression in select.
|
static java.lang.String |
LOOKUP_ROLE |
static java.lang.String |
PROPKEY_LOOKUP_INPUT_ROLE |
static java.lang.String |
PROPKEY_LOOKUP_IS_JOIN |
static java.lang.String |
PROPKEY_LOOKUP_TABLE |
JOIN_TYPE_CROSS, JOIN_TYPE_FULL_OUTER, JOIN_TYPE_INNER, JOIN_TYPE_LEFT_OUTER, JOIN_TYPE_NATURAL, JOIN_TYPE_RIGHT_OUTER, PROPKEY_ACTIVE_INDICATOR, PROPKEY_DEFAULT_JOIN, PROPKEY_DERIVED_FROM, PROPKEY_DERIVED_JOINS, PROPKEY_GENERATE_ANSI, PROPKEY_JOIN_CONDITION, PROPKEY_JOIN_INPUT_ROLE, PROPKEY_JOIN_ORDER, PROPKEY_JOIN_SOURCE_ORDER, PROPKEY_JOIN_TYPE, PROPKEY_TECHNICAL_DESCRIPTION
VARIABLE_COMPONENT_TYPE_NAME
Constructor and Description |
---|
LookupComponent(MapComponentOwner owner,
java.lang.String name)
Construct a new persistent lookup component.
|
Modifier and Type | Method and Description |
---|---|
static LookupComponent |
createLookup(IMapComponent driverSource,
IMapComponent lookupSource,
java.lang.String joinConditionText)
Creates a new lookup component with the specified driver and lookup sources,
using the specified join condition.
|
static LookupComponent |
createLookup(java.lang.String lookupName,
IMapComponent driverSource,
IMapComponent lookupSource,
java.lang.String joinConditionText)
Creates a new lookup component with the specified driver and lookup source components,
using the specified join condition.
|
IMapComponent |
getComponentForRole(java.lang.String inputRole)
Gets the source component for the specified role, "DRIVER" or "LOOKUP".
|
MapConnectorPoint |
getDriverConnectorPoint()
Gets the input connector point associated with the driver source.
|
IMapComponent |
getDriverSource()
Gets the driver (left side of join) source map component.
|
MapExpression.ExecuteOnLocation |
getExecuteOnHint()
Return an execute location hint if the component supports it, otherwise "NO_HINT".
|
java.util.Map |
getInScopeAttributeXMap(MapConnectorPoint inputPoint) |
MapConnectorPoint |
getLookupConnectorPoint()
Gets the input connector point associated with the lookup source.
|
IMapComponent |
getLookupSource()
Gets the lookup (right side of join) source component.
|
LookupComponent.NO_MATCH_ROWS |
getNoMatchRows()
Gets the lookup option to be applied if no rows are matched in the lookup table.
|
int |
getNthRowNumber()
Gets the row number to return if multiple matching rows are found in the lookup table.
|
MapAttribute[] |
getOrderedLookupAttributes()
Gets an array of all lookup attributes, ordered by attribute name.
|
void |
initializeConnectorPoint(MapConnectorPoint point)
Initializes the connector points.
|
boolean |
isDerived()
Checks if this join component is a derived join.
|
boolean |
isGenerateANSISyntax()
Determines whether ANSI syntax will be generated.
|
void |
setDriverComponent(IMapComponent driverComp)
Sets the driver component for this component and connects them.
|
void |
setDriverComponent(OutputConnectorPoint driverCompOCP)
Sets the driver component connection for this component.
|
void |
setDriverTable(IDataStore driverTable)
Sets the driver component connection for this component, using a source data store (table or file).
|
void |
setDriverTable(ReusableMapping driverRM)
Sets the driver component connection for this component, using a source reusable mapping.
|
void |
setExecuteOnHint(MapExpression.ExecuteOnLocation hint)
Set the execute-on hint for this component, if applicable, otherwise throw exception.
|
void |
setJoinType(oracle.odi.mapping.generation.JoinTable.JoinType type)
Sets the join type as enum.
|
void |
setJoinType(java.lang.String type)
Sets the join condition type as a string.
|
void |
setLookupComponent(IMapComponent lookupComp)
Sets the lookup component connection for this component and connects them.
|
void |
setLookupComponent(OutputConnectorPoint lookupCompOCP)
Sets the lookup component connection for this component.
|
void |
setLookupTable(IDataStore lookupTable)
Sets the lookup component connection for this component, using a source data store (table or file).
|
void |
setLookupTable(ReusableMapping lookupRM)
Sets the lookup component connection for this component, using a source reusable mapping.
|
void |
setLookupType(LookupComponent.LookupType type)
Sets the lookup type, either left outer join or sub select
|
void |
setLookupType(java.lang.String type)
Sets the lookup type, either left outer join or sub select
|
void |
setNoMatchRows(LookupComponent.NO_MATCH_ROWS noMatchRows)
Specifies the lookup behavior if no rows are matched in the lookup table.
|
void |
setNthRowNumber(int nthRowNumber)
Sets the row number to return if multiple matching rows are found in the lookup table.
|
addJoinSource, connectReferencedSourcesToJoin, createInputConnectorPoint, findConnectorPointWithRole, getDerivedFromText, getDerivedJoins, getDerivedJoinsText, getJoinCondition, getJoinConditionText, getJoinOrder, getJoinSourceOrderText, getJoinType, getJoinTypeAsEnum, getLeftSourceName, getOrderedJoinSources, getReferencedSources, getRightSourceName, getSourceNameForRole, getTechnicalDescription, handleMapChangeEvent, hasUserDefinedJoinOrder, isCrossJoin, isDefaultJoin, isFullOuterJoin, isInnerJoin, isJoinInsideDataset, isLeftOrRightOuterJoin, isLeftOuterJoin, isNaturalJoin, isRightOuterJoin, isValidForTechnology, joinSources, joinSources, setDerivedFromText, setDerivedJoinsText, setGenerateANSISyntax, setJoinConditionText, setJoinOrder, setJoinSourceOrderText, setPropertyValue
customInvalidateExpressions, customSyncComponent, getBlockExpressionReferencedAttributes, getBlockExpressionReferencedAttributesWithPath, getExecuteOnHintString, getIntegrationType, getNextAvailableInput, getNextAvailableInput, getNextAvailableOutput, isAddInputConnectorPointAllowed, isAddOutputConnectorPointAllowed, isPassive, setExecuteOnHintByString
afterAddComponent, afterRemoveComponent, allowInputAttribute, connectFrom, createInputConnectorPoint, createOutputConnectorPoint, createOutputConnectorPoint, customValidateProposedChildConnection, customValidateProposedChildScoping, equals, getBoundObjectFullName, getBoundObjectName, getBoundShortcutFullName, getComponentContext, getComponentCustomLocation, getComponentType, getSQLAccessName, getSQLAliasName, getTypeName, handleChildMapChangeEvent, hashCode, initPhysicalNode, isAttributeExecuteOnLocationHidden, isBoundObjectDeleted, isCardinalitySource, isCompositeComponentType, isExpressionHidden, isTargetLoadingSupported, setComponentType, supportComponentOfType, toString
addComponent, addProperty, afterConnect, bindTo, bindTo, connectTo, connectTo, connectTo, connectTo, containsComponent, createComponent, createComponent, createComponent, createExpressionAttribute, createExpressionAttribute, createOutputConnectorPoint, createProperty, disableMapChangeEventHandling, dump, dump, enableMapChangeEventHandling, findAllComponents, findAllSplitPaths, findComponent, findComponentBoundTo, findComponentOfType, findComponentsBoundTo, findConnector, findConnectorPoint, findInputAttribute, findOutputAttribute, findSubComponentOwner, generateUniqueComponentName, generateUniqueComponentName, generateUniqueConnectorName, generateUniqueName, generateUniqueName, getAdapter, getAlias, getAllComponents, getAllComponentsOfType, getAllExpressions, getAllPathsFrom, getAllPathsFrom, getAllPathsFrom, getAllPathsFrom, getAllProperties, getAllSubComponentOwners, getAttributeExpressions, getAttributes, getBooleanPropertyValue, getBoundObject, getBoundShortcut, getBoundTechnology, getBusinessName, getCachedIssues, getComponentAttributeMap, getComponentCategory, getComponentCount, getComponentLocation, getComponentLocation, getComponentOwner, getComponents, getComponentTypeName, getCompositeQualifier, getConnectorPointCount, getConnectorPointCount, getConnectorPoints, getConnectorPoints, getConnectorPointToLeaf, getConnectorTo, getDelegate, getDescription, getDisplayableObjectName, getDisplayableProperties, getDisplayableTypeName, getDomainInterfaceType, getDownstreamConnectedLeafComponents, getDownstreamConnectedPoints, getExpressionPropertyValue, getExpressionReferences, getExtraCreatedObjects, getFlowConstraints, getFullName, getGlobalId, getGUID, getInputConnectorPoint, getInputConnectorPoint, getInputConnectorPointCount, getInputConnectorPoints, getInputPoint, getInScopeAttributes, getInScopeAttributeXMap, getInternalId, getIntPropertyValue, getLeafLevelComponents, getLeafLevelTargets, getMapRootContainer, getName, getNumericId, getOutputAttributeExpressions, getOutputAttributes, getOutputConnectorPoint, getOutputConnectorPoint, getOutputConnectorPointCount, getOutputConnectorPoints, getOutputPoint, getOwner, getOwningComponent, getPersistentClassName, getPersistentComponent, getPrefix, getProjectedAttributes, getProjectorOrMultiInputSource, getProperties, getProperty, getPropertyDefinitionOwner, getPropertyValue, getPropertyValueReference, getProposedConnectionIssues, getProposedConnectionIssues, getProposedScopingIssues, getQualifiedName, getRootComponentOwner, getRootContainer, getScopingInputPointForSource, getSecurityContainer, getSources, getStringPropertyValue, getStrongTypeClassName, getSyncState, getTargets, getTopLevelComponentsOfType, getTopLevelSources, getTopLevelTargets, getTopmostComponent, getUpstreamAttributeXMap, getUpstreamComponentOwner, getUpstreamConnectedLeafComponents, getUpstreamConnectedLeafPoints, getUpstreamConnectedPoints, getUpstreamInScopeLeafAttributes, getUpstreamInScopeLeafComponentsFor, getUpstreamInScopeLeafPoints, getUpstreamLeafAttributes, getUpstreamLeafAttributes, getUpstreamLeafConnectorPoints, getUpstreamLeafConnectorPoints, getUpstreamLeafSources, getUpstreamSources, getUpstreamSplitPaths, hasCustomizedPersistenceMethodFor, invalidateDownstreamExpressions, invalidateExpressions, invokeCustomizedPersistenceMethodFor, invokeMethod, isBound, isComponent, isComponentLevelConnectAllowed, isCompositeComponent, isDecorator, isEndpoint, isHidden, isInScope, isInScope, isMapChangeEventHandlingEnabled, isMultiInputSelector, isOfType, isPhysicalNodeStale, isProjector, isPropertyDefined, isProposedConnectionValid, isProposedConnectionValid, isProposedScopingValid, isSelector, isSource, isSubComponent, isTarget, isUniqueComponentName, isUniqueComponentName, referencesObject, removeAllConnections, removeAllConnections, removeAllConnectionsAndReroute, removeAllConnectionsAndReroute, removeAllInputConnections, removeComponent, removeComponent, removeInputConnectorPoint, removeInputConnectorPoint, removeInputConnectorPoint, removeOutputConnectorPoint, removeOutputConnectorPoint, removeProperty, reorderInputConnectorPoint, reorderOutputConnectorPoint, rerouteConnections, setAlias, setAttributeExpressionText, setAttributeExpressionText, setBooleanPropertyValue, setBusinessName, setDescription, setIntPropertyValue, setIsHidden, setName, setPhysicalNodeIsStale, syncComponent, validate, validate, validate, validateProperties
public static final java.lang.String COMPONENT_TYPE_NAME
public static final java.lang.String PROPKEY_LOOKUP_TABLE
public static final java.lang.String PROPKEY_LOOKUP_INPUT_ROLE
public static final java.lang.String PROPKEY_LOOKUP_IS_JOIN
public static final java.lang.String DRIVER_ROLE
public static final java.lang.String LOOKUP_ROLE
public static final java.lang.String JOIN_TYPE_EXPRESSION_IN_SELECT
public LookupComponent(MapComponent component) throws MappingException
component
- oracle.odi.domain.mapping.exception.MapComponentException
MappingException
public LookupComponent(MapComponentOwner owner, java.lang.String name) throws MappingException, AdapterException
owner
- The component owner that will own the new component.name
- The name for the new component.PropertyException
oracle.odi.domain.mapping.exception.MapComponentException
AdapterException
MappingException
public java.util.Map getInScopeAttributeXMap(MapConnectorPoint inputPoint) throws MappingException, AdapterException
getInScopeAttributeXMap
in interface IMapComponentOwner
getInScopeAttributeXMap
in class oracle.odi.domain.mapping.MapComponentDelegate
inputPoint
- The connector point where the upstream attribute search will begin.oracle.odi.domain.mapping.exception.MapComponentException
PropertyException
AdapterException
MappingException
public void initializeConnectorPoint(MapConnectorPoint point) throws oracle.odi.domain.mapping.exception.MapComponentException, PropertyException
DefaultDelegate
initializeConnectorPoint
in class JoinComponent
point
- the group to be initializedoracle.odi.domain.mapping.exception.MapComponentException
PropertyException
public boolean isDerived()
JoinComponent
isDerived
in class JoinComponent
JoinComponent.getDerivedFrom(Dataset)
public IMapComponent getLookupSource() throws MappingException, AdapterException
MappingException
AdapterException
public IMapComponent getDriverSource() throws MappingException, AdapterException
MappingException
AdapterException
public boolean isGenerateANSISyntax() throws PropertyException
isGenerateANSISyntax
in class JoinComponent
PropertyException
public IMapComponent getComponentForRole(java.lang.String inputRole) throws PropertyException, oracle.odi.domain.mapping.exception.MapComponentException, MappingException, AdapterException
getComponentForRole
in class JoinComponent
inputRole
- input role property, values are DRIVER, LOOKUP, LEFT, or RIGHTPropertyException
oracle.odi.domain.mapping.exception.MapComponentException
MappingException
AdapterException
public MapConnectorPoint getLookupConnectorPoint() throws PropertyException
PropertyException
public MapConnectorPoint getDriverConnectorPoint() throws PropertyException
PropertyException
public void setLookupTable(IDataStore lookupTable) throws MappingException, AdapterException
lookupTable
- source model object to be used as the lookup.MappingException
AdapterException
setLookupTable
public void setLookupTable(ReusableMapping lookupRM) throws MappingException, AdapterException
lookupRM
- source model object to be used as the lookup.MappingException
AdapterException
setLookupTable
public void setDriverTable(IDataStore driverTable) throws MappingException, AdapterException
driverTable
- source model object (datastore or file) to be connected (through a DataStore or File source component) to
this component as the driver.MappingException
AdapterException
setLookupTable
public void setDriverTable(ReusableMapping driverRM) throws MappingException, AdapterException
driverRM
- source reusable mapping to be connected to this component as the driver.MappingException
AdapterException
setLookupTable
public void setDriverComponent(OutputConnectorPoint driverCompOCP) throws MappingException, AdapterException
driverCompOCP
- output connector point of the driver component.MappingException
AdapterException
setLookupTable
public void setLookupComponent(OutputConnectorPoint lookupCompOCP) throws MappingException, AdapterException
lookupCompOCP
- output connector point of the lookup component.MappingException
AdapterException
setLookupTable
public void setDriverComponent(IMapComponent driverComp) throws MappingException, AdapterException
driverCompOCP
- output connector point of the driver component.MappingException
AdapterException
setLookupTable
public void setLookupComponent(IMapComponent lookupComp) throws MappingException, AdapterException
lookupCompOCP
- output connector point of the lookup component.MappingException
AdapterException
setLookupTable
public void setLookupType(LookupComponent.LookupType type) throws PropertyException
type
- LookupType.LEFT_OUTER, LookupType.EXPRESSION_IN_SELECTPropertyException
public void setLookupType(java.lang.String type) throws PropertyException
type
- LEFT_OUTER, EXPRESSION_IN_SELECTPropertyException
public void setJoinType(oracle.odi.mapping.generation.JoinTable.JoinType type) throws PropertyException
JoinComponent
setJoinType
in class JoinComponent
type
- the enum value for the join typePropertyException
public void setJoinType(java.lang.String type) throws PropertyException
JoinComponent
setJoinType
in class JoinComponent
type
- the join condition type.PropertyException
public static LookupComponent createLookup(java.lang.String lookupName, IMapComponent driverSource, IMapComponent lookupSource, java.lang.String joinConditionText) throws MappingException, AdapterException
lookupName
- The name of the new lookup component.driverSource
- The first source to connect to the lookup input.lookupSource
- The second source to connect to the lookup input.oracle.odi.domain.mapping.exception.MapComponentException
PropertyException
AdapterException
MappingException
public static LookupComponent createLookup(IMapComponent driverSource, IMapComponent lookupSource, java.lang.String joinConditionText) throws MappingException, AdapterException
driverSource
- The first source to connect to the lookup input.lookupSource
- The second source to connect to the lookup input.oracle.odi.domain.mapping.exception.MapComponentException
PropertyException
AdapterException
MappingException
public MapExpression.ExecuteOnLocation getExecuteOnHint() throws PropertyException
IMapComponent
getExecuteOnHint
in class JoinComponent
PropertyException
public void setExecuteOnHint(MapExpression.ExecuteOnLocation hint) throws PropertyException
IMapComponent
setExecuteOnHint
in class JoinComponent
PropertyException
public MapAttribute[] getOrderedLookupAttributes() throws MappingException, AdapterException
MappingException
AdapterException
public LookupComponent.NO_MATCH_ROWS getNoMatchRows() throws PropertyException
PropertyException
public void setNoMatchRows(LookupComponent.NO_MATCH_ROWS noMatchRows) throws PropertyException
noMatchRows
- option for lookup behavior if no rows are matched in the lookup table.PropertyException
public int getNthRowNumber() throws PropertyException
PropertyException
public void setNthRowNumber(int nthRowNumber) throws PropertyException
nthRowNumber
- row number to return if multiple matching rows are foundPropertyException