|
Oracle® Data Integrator Java API Reference 11g Release 1 (11.1.1.7.0) E17060-04 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object
oracle.odi.domain.support.BusinessObject
oracle.odi.domain.support.AbstractRepositoryEntity
oracle.odi.domain.support.AbstractOdiEntity
oracle.odi.domain.project.OdiInterface
public class OdiInterface
An OdiInterface is the main class that implement target datastore feeding, suppling data from several source datastores.
If an interface is constructed with a reference object, the interface will represented a shortcut to the reference object. When an interface is used as a shortcut, most properties are accessed through the base object. The IOdiShortcutable
interface implemented by OdiInterface provides access and control over the shortcut aspects of this object.
This class is not intended to be used directly to create a consistent OdiInterface instance. A consistent OdiInterface is an OdiInterface instance that would be executed as is without any consistency issues regarding mappings, execution locations, etc. Creating a consistent OdiInterface
has to be done using 3d party tools or classes that extend IInteractiveInterfaceHelper
such as InteractiveInterfaceHelperWithActions
.
This class is provided for internal use only, or for ODI consumers that want to read an existing OdiInterface instance. Any direct changes to that class or any of its enclosing members from package oracle.odi.domain.project.interfaces
are strongly discouraged and without any guarantee. This may lead into unpredictable consistency issues.
StagingArea and TargetDataStore are non-nullable instances.
Nested Class Summary | |
---|---|
class |
OdiInterface.CheckableFlowConstraint A constraint that can be checkable on the flow and potentially overriden in the interface. Constraints include OdiKey s, OdiCondition s and OdiReference s.This class enables to manipulate the constraints and how they can be overridden in the interface. Note that as for all objects inside interfaces, you should use IInteractiveInterfaceHelper s to modify constraints. |
static class |
OdiInterface.ColumnSorterId Sorter for TargetColumns by id. |
static class |
OdiInterface.ColumnSorterPosition Comparator used to sort TargetColumns by position. |
static class |
OdiInterface.DatabaseSchema The database schema on which the temporary target datastore is located. |
static class |
OdiInterface.ExecutionLocation The execution location for Join , Filter , TargetMapping and TargetColumn expressions. |
static interface |
OdiInterface.IPersistenceComparable<T extends OdiInterface.IPersistenceComparable<?>> For internal use only. |
class |
OdiInterface.StagingArea Represents the staging area of the interface. |
class |
OdiInterface.TargetDataStore Represents the target datastore of the interface, which may be either a temporary datastore or an underlying existing OdiDataStore defined in an OdiModel .It is located on an OdiLogicalSchema , which is either deduced from the underlying OdiDataStore or either shared with the Staging Area for a temporary datastore.It contains TargetColumn s which are either the mirror of existing OdiColumn s from the underlying OdiDataStore , or either temporary target columns. |
Field Summary | |
---|---|
static OdiInterface.ExecutionLocation |
DEFAULT_MAPPING_EXECUTION_LOCATION The default location for newly mapped mappings. |
static int |
NAME_MAX_LENGTH Constants for maximum length of the name of an interface object. |
Fields inherited from class oracle.odi.domain.support.AbstractOdiEntity |
---|
STARTING_INTERNAL_VERSION |
Constructor Summary | |
---|---|
OdiInterface(OdiFolder pFolder, java.lang.String pName, OdiContext pOptimizationContext) For internal use only Creates a new interface. |
|
OdiInterface(OdiFolder pFolder, java.lang.String pName, OdiInterface pReferenceInterface, OdiContext pOptimizationContext) Creates a new interface. |
Method Summary | ||
---|---|---|
void |
addDataSet(DataSet pDataSet) For internal use only Add a new data set to the interface. |
|
void |
addDataSet(DataSet pDataSet, int pPosition) For internal use only Add a new data set to the interface at the specified location. |
|
void |
addObjTrace(ObjTrace pTrace) For internal use only Add a new object trace to this interface. |
|
boolean |
changeShortcutReferenceObject(OdiInterface pReferenceObject) Change the shortcut reference object. |
|
void |
checkValidReference(OdiInterface pReferenceObject) Internal Use Only |
|
void |
clearObjTraces() For internal use only Removes all object traces from this interface. |
|
static java.lang.String |
computeSQLWithHeaders(Expression pExpression, DataSet pDataSet) Returns a String representing a more functional representation of pExpression . |
|
java.util.List<DataSet> |
getDataSets() Returns a list of data sets of this interface, sorted by its position. |
|
java.lang.String |
getDescription() Returns the description of this interface. |
|
static java.lang.String |
getExecutionLocationDescription(OdiInterface.ExecutionLocation pExecutionLocation) Returns the textual string for the enum OdiInterface.ExecutionLocation . |
|
java.util.Collection<IFlexFieldValue> |
getFlexFieldsValues() Obtains flex fields values related to this IFlexFieldUser . |
|
OdiFolder |
getFolder() Returns the parent folder of this interface. |
|
java.lang.Number |
getInstanceId() Return the instance ID of this interface. |
|
java.lang.Number |
getInterfaceId() Return the instance ID of this interface. |
|
java.io.Serializable |
getInternalId() Provides a common getter for the persistence layer to obtain an identity, irrespective of the actual type of identity used. |
|
OdiInterface.TargetDataStore |
getInternalTargetDataStore() WARNING! This method is intended for internal use only. |
|
SourceDataStore |
getJournalizedDataStore(DataSet pDataSet) Return the source datastore that is set to be journalized in the specified data set. |
|
java.lang.String |
getName() Returns the name of this interface. |
|
java.util.List<ObjTrace> |
getObjTraces() Returns the list of object traces for this interface. |
|
OdiContext |
getOptimizationContext() Returns the optimization context used when computing source sets for this interface. |
|
OdiInterface |
getRealObject() Return the real object associated with this object. |
|
IReleaseTag |
getReleaseTag() Return the release tag for this object. |
|
IRepositoryEntity |
getSecurityContainer() Define a generic way to retrieve container for entities. |
|
OdiInterface |
getShortcutBaseObject() Return the base object of this shortcutable. |
|
OdiInterface |
getShortcutOrigObject() If this is a shortcut, return the original base object |
|
OdiInterface |
getShortcutReferenceObject() If this is a shortcut, return the reference object. |
|
OdiInterface.StagingArea |
getStagingArea() Returns the Staging Area object for this interface. |
|
java.lang.String |
getSubComponentDescription() Returns the sub component's description in a human-readable way. |
|
java.lang.String |
getSubComponentDescription(java.util.Locale pLocale) Returns the sub component's description in a human-readable way for the given Locale. |
|
OdiInterface.TargetDataStore |
getTargetDataStore() Returns the target data store object of this interface. |
|
OdiDataStore |
getUnderlyingShortcutTable() Returns the target data store shortcut of this interface, or null for a temporary interface. |
|
OdiDataStore |
getUnderlyingTable() Returns the target data store of this interface, or null for a temporary interface. |
|
boolean |
hasObjTrace() Returns whether there are any object traces for this interface. |
|
void |
initFlexFields(IOdiFlexFieldFinder pOdiFlexFieldFinder) Initialize flex fields related to this IFlexFieldUser . |
|
static
|
internalCollectionPersistenceEquals(java.util.Collection<T> t1, java.util.Collection<T> t2) For internal use only. |
|
static
|
internalListPersistenceEquals(java.util.List<T> t1, java.util.List<T> t2) For internal use only. |
|
boolean |
internalPersistenceEquals(OdiInterface i2) For internal use only. |
|
boolean |
isShortcut() Returns true if this object is a shortcut. |
|
static boolean |
nullSafeEquals(org.eclipse.persistence.indirection.ValueHolderInterface o1, org.eclipse.persistence.indirection.ValueHolderInterface o2) For internal use only. |
|
void |
removeDataSet(DataSet pDataSet) For internal use only Remove the specified data set from this interface. |
|
void |
removeObjTrace(ObjTrace pTrace) For internal use only Add an object trace from this interface. |
|
void |
setDescription(java.lang.String pDescription) For internal use only Set the description of the interface. |
|
void |
setName(java.lang.String pName) For internal use only Sets the name of this interface. |
|
void |
setOptimizationContext(OdiContext pOptimizationContext) For internal use only Sets the optimization context for this interface. |
|
boolean |
setShortcutBaseObject(OdiInterface pBaseObject) Internal Use Only. |
|
boolean |
setShortcutReferenceObject(OdiInterface pReferenceObject) Internal Use Only. |
Methods inherited from class oracle.odi.domain.support.AbstractOdiEntity |
---|
equals, getFirstDate, getFirstUser, getInternalVersion, getLastDate, getLastUser, hashCode, isInstanceLevelSecurityNeeded, isNew, toString |
Methods inherited from class oracle.odi.domain.support.BusinessObject |
---|
clone |
Methods inherited from class java.lang.Object |
---|
getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface oracle.odi.domain.IOdiEntity |
---|
getFirstDate, getFirstUser, getLastDate, getLastUser, isInstanceLevelSecurityNeeded |
Field Detail |
---|
public static final int NAME_MAX_LENGTH
public static final OdiInterface.ExecutionLocation DEFAULT_MAPPING_EXECUTION_LOCATION
Constructor Detail |
---|
public OdiInterface(OdiFolder pFolder, java.lang.String pName, OdiInterface pReferenceInterface, OdiContext pOptimizationContext)
pFolder
- the parent folder of this interfacepName
- the name,pReferenceInterface
- The reference interface if this is an interface shortcut.pOptimizationContext
- the optimization context of this interfacepublic OdiInterface(OdiFolder pFolder, java.lang.String pName, OdiContext pOptimizationContext)
IInteractiveInterfaceHelper
such as InteractiveInterfaceHelperWithActions
to create interfaces.
pFolder
- the parent folder of this interfacepName
- the name,pOptimizationContext
- the optimization context of this interfaceMethod Detail |
---|
public java.io.Serializable getInternalId()
IRepositoryEntity
Typically a subclass will delegate to a public SomePrimitiveWrapper getId()
method. The necessity for the getInternalId()
abstract method is solely because the persistence layer needs a way of obtaining the identity irrespective of the actual identity implementation choice.
Returning null
from this method will indicate the object has never been saved. This will likely be relied on by some DAO
implementations.
getInternalId
in interface IRepositoryEntity
getInternalId
in interface IInterfaceSubComponent
IRepositoryEntity.getInternalId()
public java.lang.Number getInterfaceId()
public java.lang.String getName()
getName
in interface IOdiEntity
getName
in class oracle.odi.domain.support.AbstractOdiEntity
setName(String)
public void setName(java.lang.String pName)
null
, and the maximum name length is 400 characters. To modify an OdiInterface
object or its children, please refer to the description of the class.pName
- the new name for the interfacegetName()
public IRepositoryEntity getSecurityContainer()
IRepositoryEntity
getSecurityContainer
in interface IRepositoryEntity
public OdiFolder getFolder()
public java.lang.String getDescription()
setDescription(String)
public void setDescription(java.lang.String pDescription)
OdiInterface
object or its children, please refer to the description of the class.pDescription
- The new description for this interface.getDescription()
public OdiInterface.TargetDataStore getTargetDataStore()
java.lang.IllegalStateException
- if this is a shortcut. Use getRealObject to access.public OdiInterface.TargetDataStore getInternalTargetDataStore()
public OdiContext getOptimizationContext()
setOptimizationContext(OdiContext)
public void setOptimizationContext(OdiContext pOptimizationContext)
OdiInterface
object or its children, please refer to the description of the class.pOptimizationContext
- the new Optimization ContextgetOptimizationContext()
public java.util.List<DataSet> getDataSets()
java.lang.IllegalStateException
- if this is a shortcut. Use getRealObject to access.public OdiInterface.StagingArea getStagingArea()
java.lang.IllegalStateException
- if this is a shortcut. Use getRealObject to access.public void addDataSet(DataSet pDataSet)
OdiInterface
object or its children, please refer to the description of the class.pDataSet
- The data set to be added.java.lang.IllegalStateException
- if this is a shortcut. Use getRealObject to access.public void addDataSet(DataSet pDataSet, int pPosition)
OdiInterface
object or its children, please refer to the description of the class.pDataSet
- The data set to be added.pPosition
- The position where the data set is to be added.java.lang.IllegalStateException
- if this is a shortcut. Use getRealObject to access.public void removeDataSet(DataSet pDataSet)
OdiInterface
object or its children, please refer to the description of the class.pDataSet
- The data set to be removed.java.lang.IllegalStateException
- if this is a shortcut. Use getRealObject to access.public SourceDataStore getJournalizedDataStore(DataSet pDataSet)
pDataSet
- The data set from which the journalized source is to be retrieved.java.lang.IllegalStateException
- if this is a shortcut. Use getRealObject to access.public java.lang.Number getInstanceId()
getInstanceId
in interface oracle.odi.domain.procusage.IProcedureUser
public void addObjTrace(ObjTrace pTrace)
OdiInterface
object or its children, please refer to the description of the class.pTrace
- The new object trace to be added to this interface.java.lang.IllegalStateException
- if this is a shortcut. Use getRealObject to access.public void removeObjTrace(ObjTrace pTrace)
OdiInterface
object or its children, please refer to the description of the class.pTrace
- The object trace to be removed from this interface.java.lang.IllegalStateException
- if this is a shortcut. Use getRealObject to access.public boolean hasObjTrace()
true
if there are object traces added to this interface, false
otherwise.java.lang.IllegalStateException
- if this is a shortcut. Use getRealObject to access.public void clearObjTraces()
OdiInterface
object or its children, please refer to the description of the class.java.lang.IllegalStateException
- if this is a shortcut. Use getRealObject to access.public java.util.List<ObjTrace> getObjTraces()
java.lang.IllegalStateException
- if this is a shortcut. Use getRealObject to access.public static java.lang.String computeSQLWithHeaders(Expression pExpression, DataSet pDataSet)
pExpression
. This is achieved by replacing all referenced column names by their "heading".pExpression
- the expression to processpDataSet
- the dataset in which the expression should be processedpublic java.lang.String getSubComponentDescription()
IInterfaceSubComponent
getSubComponentDescription
in interface IInterfaceSubComponent
public java.lang.String getSubComponentDescription(java.util.Locale pLocale)
IInterfaceSubComponent
getSubComponentDescription
in interface IInterfaceSubComponent
pLocale
- the Locale
for which the description should be returnedpublic static java.lang.String getExecutionLocationDescription(OdiInterface.ExecutionLocation pExecutionLocation)
OdiInterface.ExecutionLocation
.pExecutionLocation
- The desired execution location.OdiInterface.ExecutionLocation
.public OdiDataStore getUnderlyingShortcutTable()
null
for a temporary interface.OdiDataStore
used as the target.java.lang.IllegalStateException
- if this is a shortcut. Use getRealObject to access.public OdiDataStore getUnderlyingTable()
null
for a temporary interface.OdiDataStore
used as the target.java.lang.IllegalStateException
- if this is a shortcut. Use getRealObject to access.public java.util.Collection<IFlexFieldValue> getFlexFieldsValues()
IFlexFieldUser
IFlexFieldUser
.getFlexFieldsValues
in interface IFlexFieldUser
public void initFlexFields(IOdiFlexFieldFinder pOdiFlexFieldFinder)
IFlexFieldUser
IFlexFieldUser
.initFlexFields
in interface IFlexFieldUser
pOdiFlexFieldFinder
- OdiFlexField
finder to be used to query flex fieldspublic static <T extends OdiInterface.IPersistenceComparable<T>> boolean internalListPersistenceEquals(java.util.List<T> t1, java.util.List<T> t2)
T
- any type extending IPersistenceComparablet1
-t2
-public static <T extends OdiInterface.IPersistenceComparable<T>> boolean internalCollectionPersistenceEquals(java.util.Collection<T> t1, java.util.Collection<T> t2)
T
- any type extending IPersistenceComparablet1
-t2
-public static boolean nullSafeEquals(org.eclipse.persistence.indirection.ValueHolderInterface o1, org.eclipse.persistence.indirection.ValueHolderInterface o2)
o1
-o2
-true
if o1 equals o2 null safepublic boolean internalPersistenceEquals(OdiInterface i2)
i2
-true
if this interface is equal to i2public OdiInterface getShortcutBaseObject()
IOdiShortcutable
This will return null if the object never has been a shortcut. If this object is a materialized shortcut, the base object will be the base object at the time that this was shortcuted.
getShortcutBaseObject
in interface IOdiShortcutable<OdiInterface>
public boolean setShortcutBaseObject(OdiInterface pBaseObject)
IOdiShortcutable
If the base object is changed, we should correct all consumers of this object.
This method may be called from a precedent shortcut object in the shortcut chain and the precedent shortcut obejct is removed or materialized.
setShortcutBaseObject
in interface IOdiShortcutable<OdiInterface>
pBaseObject
- new base object.public OdiInterface getShortcutReferenceObject()
IOdiShortcutable
The reference object may also be a shortcut.
getShortcutReferenceObject
in interface IOdiShortcutable<OdiInterface>
public boolean setShortcutReferenceObject(OdiInterface pReferenceObject)
IOdiShortcutable
If pShortcutable is null, set pReference to null. This is no longer a shortcut.
If pShortcutable is not null, set the reference object to pShortcutable, set the base object to pShortcutable.getBaseObject.
This method may be called from a precedent shortcut object in the shortcut chain and the precedent shortcut obejct is removed or materialized.
setShortcutReferenceObject
in interface IOdiShortcutable<OdiInterface>
pReferenceObject
- new shortcutable object. Can be be nullpublic OdiInterface getShortcutOrigObject()
IOdiShortcutable
The reference object may also be a shortcut.
getShortcutOrigObject
in interface IOdiShortcutable<OdiInterface>
public boolean isShortcut()
IOdiShortcutable
isShortcut
in interface IOdiShortcutable<OdiInterface>
public IReleaseTag getReleaseTag()
IOdiShortcutable
release tag is actually maintained on the container object. This provides consistent access to the tag.
getReleaseTag
in interface IOdiShortcutable<OdiInterface>
public OdiInterface getRealObject()
IOdiShortcutable
This is a convenience function to obtain the real object of a shortcutable object. If this object is a shortcut, return the base obejct. If this object is not a shortcut, return this object.
getRealObject
in interface IOdiShortcutable<OdiInterface>
public void checkValidReference(OdiInterface pReferenceObject)
IOdiShortcutable
checkValidReference
in interface IOdiShortcutable<OdiInterface>
public boolean changeShortcutReferenceObject(OdiInterface pReferenceObject)
IOdiShortcutable
If pReferenceObject's base object is same as the base object of shortcut, the shortcut will have pReferenceObject as new reference. It will return true.
If pReferenceObject's base object is not same as the base of the shortcut, the shortcut reference object won't be changed. It will return false.
If pReferenceObject is null, the shortcut reference object won't be changed. It will return false.
If current object is not shortcut, nothing will be changed. It will return false.
changeShortcutReferenceObject
in interface IOdiShortcutable<OdiInterface>
pReferenceObject
- new reference object. Can be be null
|
Oracle® Data Integrator Java API Reference 11g Release 1 (11.1.1.7.0) E17060-04 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |