|
Oracle® Data Integrator Java API Reference 11g Release 1 (11.1.1.6.0) E17060-03 |
|||||||||
| 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.OdiUserFunction
public final class OdiUserFunction
Represents design time metadata about a customized function that can be used in expressions of other objects such as OdiInterface, OdiUserProcedure.
OdiUserFunction is the root entity of OdiUserFunction - OdiUserFunctionImpl aggregate. Thus, an instance of OdiUserFunction controls life cycle of OdiUserFunctionImpl that belongs to it, and provides auditing informations about this aggregate.
Each OdiUserFunction can have zero, one or many implementations (OdiUserFunctionImpl). Each implementation can support one or many technologies (OdiTechnology). As the root of aggregate, OdiUserFunction manages the mappings between its implementations and technologies. Zero or one (but not more) OdiUserFunction's implementation can be declared as default for newly created technologies, i.e. automatically support them. To define default OdiUserFunctionImpl user should use mapByTechnologyExclusionSafely(OdiUserFunctionImpl, Collection, IOdiTechnologyFinder) method, passing the Collection of technologies to be NOT supported by default implementation.
There are two distinct scopes of OdiUserFunction: Global and Project.
OdiUserFunction are not bound to a given project and can be used in every object's expression.OdiUserFunction are bound to a single OdiProject and can only be used inside expression of objects part of the same OdiProject.An OdiUserFunction is independent from any physical information, thus is not tied to any OdiTechnology. As such, functionString property is just a basic text pattern defining relevant parameters and types. This functionString will be replaced during code generation by actual implementation according relevant technology where the expression will be executed (see OdiUserFunctionImpl).
| Field Summary |
|---|
| Fields inherited from class oracle.odi.domain.support.AbstractOdiEntity |
|---|
STARTING_INTERNAL_VERSION |
| Constructor Summary | |
|---|---|
OdiUserFunction(OdiProject pProject, java.lang.String pName, java.lang.String pGroupName, java.lang.String pFunctionString)Constructs a new OdiUserFunction with the given name, group name and functional string owned by the given OdiProject. |
|
OdiUserFunction(java.lang.String pName, java.lang.String pGroupName, java.lang.String pFunctionString)Constructs a new global (i.e. |
|
| Method Summary | |
|---|---|
OdiUserFunctionImpl |
addImplementation(java.lang.String pImplementationString)Creates a new implementation of this OdiUserFunction specified by pImplementationString. |
OdiUserFunctionImpl |
getDefaultImplementation()Obtains the default OdiUserFunctionImpl - implementation which automatically supports newly created technologies. |
java.lang.String |
getDescription()Obtains the description of this OdiUserFunction. |
java.lang.String |
getFunctionString()Obtains the function's string / text of this OdiUserFunction. |
java.lang.String |
getGroupName()Obtains group name for this OdiUserFunction. |
OdiUserFunctionImpl |
getImplementation(OdiTechnology pTechnology, IOdiTechnologyFinder pFinder)Obtains the OdiUserFunctionImpl which supports the given OdiTechnology or null if it is not supported. |
java.util.Collection<OdiUserFunctionImpl> |
getImplementations()Obtains an unmodifiable collection of OdiUserFunctionImpls related to this OdiUserFunction. |
java.io.Serializable |
getInternalId()Provides a common getter for the persistence layer to obtain an identity, irrespective of the actual type of identity used. |
java.lang.String |
getName()Obtains the name of this OdiUserFunction. |
OdiProject |
getProject()Obtains the OdiProject this OdiUserFunction belongs to, or null if this is a global OdiUserFunction. |
IRepositoryEntity |
getSecurityContainer()Define a generic way to retrieve container for entities. |
java.util.Collection<OdiTechnology> |
getSupportedTechnologies(OdiUserFunctionImpl pImplementation, IOdiTechnologyFinder pFinder)Obtains the Collection of OdiTechnologys supported by the given OdiUserFunctionImpl. |
java.lang.Number |
getUserFunctionId()Obtains the ID of this OdiUserFunction. |
boolean |
isGlobal()Returns whether this OdiUserFunction is global, or not. |
boolean |
isInstanceLevelSecurityNeeded()Internal: this method is for internal purpose and must not be considered as part of the public API. |
void |
mapByTechnologyExclusion(OdiUserFunctionImpl pDefaultImpl, java.util.Collection<OdiTechnology> pExcludedTechnologies, IOdiTechnologyFinder pFinder)Deprecated. |
void |
mapByTechnologyExclusionSafely(OdiUserFunctionImpl pDefaultImpl, java.util.Collection<OdiTechnology> pExcludedTechnologies, IOdiTechnologyFinder pFinder)Specify the implementation becoming default and OdiTechnologys that will not be supported by it. |
void |
mapByTechnologyInclusion(OdiUserFunctionImpl pImpl, java.util.Collection<OdiTechnology> pIncludedTechnologies, IOdiTechnologyFinder pFinder)Deprecated. |
void |
mapByTechnologyInclusionSafely(OdiUserFunctionImpl pImpl, java.util.Collection<OdiTechnology> pIncludedTechnologies, IOdiTechnologyFinder pFinder)Specify the OdiTechnologys that will be supported by the given OdiUserFunctionImpl. |
void |
removeImplementation(OdiUserFunctionImpl pImplementation)Remove the given implementation ( OdiUserFunctionImpl) of this OdiUserFunction. |
void |
setDescription(java.lang.String pDescription)Sets the description of this OdiUserFunction. |
void |
setFunctionString(java.lang.String pFunctionString)Specifies the function string value. |
void |
setGroupName(java.lang.String pGroupName)Sets the group name of this OdiUserFunction. |
void |
setName(java.lang.String pName)Sets the name of this OdiUserFunction. |
void |
unmapByTechnologyExclusion(IOdiTechnologyFinder pFinder)Finds the default OdiUserFunctionImpl and make it non-default. |
| Methods inherited from class oracle.odi.domain.support.AbstractOdiEntity |
|---|
equals, getFirstDate, getFirstUser, getInternalVersion, getLastDate, getLastUser, hashCode, 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 |
| Constructor Detail |
|---|
public OdiUserFunction(java.lang.String pName,
java.lang.String pGroupName,
java.lang.String pFunctionString)
OdiUserFunction with the given name, group name and functional string.
pName - - the name of the User FunctionpGroupName - - the group name for the User FunctionpFunctionString - - the function's string / text of the User FunctionDomainRuntimeException - if pName, pGroupName or pFunctionString is null or empty or if pName or pGroupName is longer than NAME_MAX_LENGTHNAME_MAX_LENGTH
public OdiUserFunction(OdiProject pProject,
java.lang.String pName,
java.lang.String pGroupName,
java.lang.String pFunctionString)
OdiUserFunction with the given name, group name and functional string owned by the given OdiProject.
pProject - - the owning projectpName - - the name of the User FunctionpGroupName - - the group name for the User FunctionpFunctionString - - the function's string / text of the User FunctionDomainRuntimeException - if pName, pGroupName or pFunctionString is null or empty or if pName or pGroupName is longer than NAME_MAX_LENGTHNAME_MAX_LENGTH| Method Detail |
|---|
public java.lang.Number getUserFunctionId()
OdiUserFunction.OdiUserFunction IDpublic java.lang.String getName()
OdiUserFunction.getName in interface IOdiEntitygetName in class oracle.odi.domain.support.AbstractOdiEntityOdiUserFunction namesetName(String)public boolean isInstanceLevelSecurityNeeded()
IOdiEntityDefines a method to capture the info on which object needs instance level privilege.
isInstanceLevelSecurityNeeded in interface IOdiEntityisInstanceLevelSecurityNeeded in class oracle.odi.domain.support.AbstractOdiEntitytrue if instance level security needed, false otherwisepublic IRepositoryEntity getSecurityContainer()
IRepositoryEntitygetSecurityContainer in interface IRepositoryEntitypublic OdiProject getProject()
OdiProject this OdiUserFunction belongs to, or null if this is a global OdiUserFunction.OdiProject this OdiUserFunction belongs topublic java.lang.String getFunctionString()
OdiUserFunction.setFunctionString(String)public boolean isGlobal()
OdiUserFunction is global, or not. (true if this is a Global Scope OdiUserFunction, false if this is a Project Scope OdiUserFunction).OdiUserFunction is global, or notpublic java.lang.String getGroupName()
OdiUserFunction. OdiUserFunction can be grouped using this property.setGroupName(String)public java.lang.String getDescription()
OdiUserFunction.setDescription(String)public java.util.Collection<OdiUserFunctionImpl> getImplementations()
OdiUserFunctionImpls related to this OdiUserFunction.public java.io.Serializable getInternalId()
IRepositoryEntityTypically 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 IRepositoryEntitypublic void setFunctionString(java.lang.String pFunctionString)
pFunctionString - a String specifying the function string valueDomainRuntimeException - if the pFunctionString is null or emptygetFunctionString()public void setName(java.lang.String pName)
OdiUserFunction.pName - nameDomainRuntimeException - if the pName is null, empty or longer than NAME_MAX_LENGTHgetName()public void setGroupName(java.lang.String pGroupName)
OdiUserFunction. OdiUserFunction can be grouped using this property.pGroupName - group nameDomainRuntimeException - if the pGroupName is null, empty or longer than NAME_MAX_LENGTHgetGroupName()public void setDescription(java.lang.String pDescription)
OdiUserFunction.pDescription - descriptiongetDescription()public OdiUserFunctionImpl addImplementation(java.lang.String pImplementationString)
OdiUserFunction specified by pImplementationString.pImplementationString - implementation stringOdiUserFunctionImpl instanceDomainRuntimeException - if pImplementationString is null or emptyremoveImplementation(OdiUserFunctionImpl)public void removeImplementation(OdiUserFunctionImpl pImplementation)
OdiUserFunctionImpl) of this OdiUserFunction.pImplementation - OdiUserFunctionImpl to removeDomainRuntimeException - if pImplementation is null or pImplementation does not belong to this OdiUserFunctionaddImplementation(String)
public java.util.Collection<OdiTechnology> getSupportedTechnologies(OdiUserFunctionImpl pImplementation,
IOdiTechnologyFinder pFinder)
OdiTechnologys supported by the given OdiUserFunctionImpl.pImplementation - OdiUserFunctionImpl belonging to this OdiUserFunctionpFinder - technology finderOdiTechnologys CollectionDomainRuntimeException - if the given IOdiTechnologyFinder is null or pImplementation does not belong to this OdiUserFunction
public void mapByTechnologyExclusionSafely(OdiUserFunctionImpl pDefaultImpl,
java.util.Collection<OdiTechnology> pExcludedTechnologies,
IOdiTechnologyFinder pFinder)
Specify the implementation becoming default and OdiTechnologys that will not be supported by it. I.e. given OdiUserFunctionImpl will support all other (not in pExcludedTechnologies) and all new created OdiTechnologys.
Thus, make sure you exclude all Technologies already supported by other OdiUserFunction's implementations.
Within a single OdiUserFunction you can have only one default implementation.
pDefaultImpl - OdiUserFunctionImpl belonging to this OdiUserFunctionpExcludedTechnologies - Collection of OdiTechnologys to be excludedpFinder - technology finderDomainRuntimeException - if pImpl, pExcludedTechnologies or pFinder is nulljava.lang.IllegalStateException - if default implementation already existsmapByTechnologyInclusionSafely(OdiUserFunctionImpl, Collection, IOdiTechnologyFinder)
@Deprecated
public void mapByTechnologyExclusion(OdiUserFunctionImpl pDefaultImpl,
java.util.Collection<OdiTechnology> pExcludedTechnologies,
IOdiTechnologyFinder pFinder)
throws OdiTechnologyAlreadyImplementedException
Specify the implementation becoming default and OdiTechnologys that will not be supported by it. I.e. given OdiUserFunctionImpl will support all other (not in pExcludedTechnologies) and all new created OdiTechnologys.
Thus, make sure you exclude all Technologies already supported by other OdiUserFunction's implementations.
Within a single OdiUserFunction you can have only one default implementation.
pDefaultImpl - OdiUserFunctionImpl belonging to this OdiUserFunctionpExcludedTechnologies - Collection of OdiTechnologys to be excludedpFinder - technology finderOdiTechnologyAlreadyImplementedException - if some already supported OdiTechnology is not given to be excluded.DomainRuntimeException - if pImpl, pExcludedTechnologies or pFinder is nulljava.lang.IllegalStateException - if default implementation already existsmapByTechnologyInclusionSafely(OdiUserFunctionImpl, Collection, IOdiTechnologyFinder)public void unmapByTechnologyExclusion(IOdiTechnologyFinder pFinder)
OdiUserFunctionImpl and make it non-default. This means that implementation will not automatically support new created OdiTechnologys. The set of its currently supported technologies is not changed (become mapped by Technology inclusion).pFinder - technology finderDomainRuntimeException - if pFinder is nullmapByTechnologyExclusionSafely(OdiUserFunctionImpl, Collection, IOdiTechnologyFinder), mapByTechnologyInclusionSafely(OdiUserFunctionImpl, Collection, IOdiTechnologyFinder)
public void mapByTechnologyInclusionSafely(OdiUserFunctionImpl pImpl,
java.util.Collection<OdiTechnology> pIncludedTechnologies,
IOdiTechnologyFinder pFinder)
OdiTechnologys that will be supported by the given OdiUserFunctionImpl.pImpl - OdiUserFunctionImpl belonging to this OdiUserFunctionpIncludedTechnologies - Collection of OdiTechnologys to be supportedpFinder - technology finderDomainRuntimeException - if pImpl, pIncludedTechnologies or pFinder is nullmapByTechnologyExclusionSafely(OdiUserFunctionImpl, Collection, IOdiTechnologyFinder)
@Deprecated
public void mapByTechnologyInclusion(OdiUserFunctionImpl pImpl,
java.util.Collection<OdiTechnology> pIncludedTechnologies,
IOdiTechnologyFinder pFinder)
throws OdiTechnologyAlreadyImplementedException
OdiTechnologys that will be supported by the given OdiUserFunctionImpl.pImpl - OdiUserFunctionImpl belonging to this OdiUserFunctionpIncludedTechnologies - Collection of OdiTechnologys to be supportedpFinder - technology finderOdiTechnologyAlreadyImplementedException - if one of the given OdiTechnology is already supportedDomainRuntimeException - if pImpl, pIncludedTechnologies or pFinder is nullmapByTechnologyExclusionSafely(OdiUserFunctionImpl, Collection, IOdiTechnologyFinder)public OdiUserFunctionImpl getDefaultImplementation()
Obtains the default OdiUserFunctionImpl - implementation which automatically supports newly created technologies. Each OdiUserFunction can have zero or one default implementation. Thus, method returns null if none OdiUserFunctionImpl is default.
The default implementation can be defined using mapByTechnologyExclusionSafely(OdiUserFunctionImpl, Collection, IOdiTechnologyFinder) method.
OdiUserFunctionImplmapByTechnologyExclusionSafely(OdiUserFunctionImpl, Collection, IOdiTechnologyFinder)
public OdiUserFunctionImpl getImplementation(OdiTechnology pTechnology,
IOdiTechnologyFinder pFinder)
OdiUserFunctionImpl which supports the given OdiTechnology or null if it is not supported.pTechnology - technologypFinder - technology findermapByTechnologyExclusionSafely(OdiUserFunctionImpl, Collection, IOdiTechnologyFinder), mapByTechnologyInclusionSafely(OdiUserFunctionImpl, Collection, IOdiTechnologyFinder)
|
Oracle® Data Integrator Java API Reference 11g Release 1 (11.1.1.6.0) E17060-03 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||