|
Oracle® Data Integrator Java API Reference 11g Release 1 (11.1.1.5.0) E17060-02 |
|||||||||
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 mapByTechnologyExclusion(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 OdiTechnology s 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) Specify the implementation becoming default and OdiTechnology s that will not be supported by it. |
void |
mapByTechnologyInclusion(OdiUserFunctionImpl pImpl, java.util.Collection<OdiTechnology> pIncludedTechnologies, IOdiTechnologyFinder pFinder) Specify the OdiTechnology s 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 Functionjava.lang.IllegalArgumentException
- 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 Functionjava.lang.IllegalArgumentException
- 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 IOdiEntity
getName
in class oracle.odi.domain.support.AbstractOdiEntity
OdiUserFunction
namesetName(String)
public boolean isInstanceLevelSecurityNeeded()
IOdiEntity
Defines a method to capture the info on which object needs instance level privilege.
isInstanceLevelSecurityNeeded
in interface IOdiEntity
isInstanceLevelSecurityNeeded
in class oracle.odi.domain.support.AbstractOdiEntity
true
if instance level security needed, false
otherwisepublic IRepositoryEntity getSecurityContainer()
IRepositoryEntity
getSecurityContainer
in interface IRepositoryEntity
public 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()
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
public void setFunctionString(java.lang.String pFunctionString)
pFunctionString
- a String specifying the function string valuejava.lang.IllegalArgumentException
- if the pFunctionString is null or emptygetFunctionString()
public void setName(java.lang.String pName)
OdiUserFunction
.pName
- namejava.lang.IllegalArgumentException
- 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 namejava.lang.IllegalArgumentException
- 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
instancejava.lang.IllegalArgumentException
- if pImplementationString is null or emptyremoveImplementation(OdiUserFunctionImpl)
public void removeImplementation(OdiUserFunctionImpl pImplementation)
OdiUserFunctionImpl
) of this OdiUserFunction
.pImplementation
- OdiUserFunctionImpl
to removejava.lang.IllegalArgumentException
- if pImplementation is null or pImplementation does not belong to this OdiUserFunction
addImplementation(String)
public java.util.Collection<OdiTechnology> getSupportedTechnologies(OdiUserFunctionImpl pImplementation, IOdiTechnologyFinder pFinder)
OdiTechnology
s supported by the given OdiUserFunctionImpl
.pImplementation
- OdiUserFunctionImpl
belonging to this OdiUserFunction
pFinder
- technology finderOdiTechnology
s Collectionjava.lang.IllegalArgumentException
- if the given IOdiTechnologyFinder
is null or pImplementation does not belong to this OdiUserFunction
public void mapByTechnologyExclusion(OdiUserFunctionImpl pDefaultImpl, java.util.Collection<OdiTechnology> pExcludedTechnologies, IOdiTechnologyFinder pFinder) throws OdiTechnologyAlreadyImplementedException
Specify the implementation becoming default and OdiTechnology
s that will not be supported by it. I.e. given OdiUserFunctionImpl
will support all other (not in pExcludedTechnologies) and all new created OdiTechnology
s.
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 OdiUserFunction
pExcludedTechnologies
- Collection of OdiTechnology
s to be excludedpFinder
- technology finderjava.lang.IllegalArgumentException
- if pImpl, pExcludedTechnologies or pFinder is nulljava.lang.IllegalStateException
- if default implementation already existsOdiTechnologyAlreadyImplementedException
- if some already supported OdiTechnology
is not given to be excluded.mapByTechnologyInclusion(OdiUserFunctionImpl, Collection, IOdiTechnologyFinder)
public void unmapByTechnologyExclusion(IOdiTechnologyFinder pFinder)
OdiUserFunctionImpl
and make it non-default. This means that implementation will not automatically support new created OdiTechnology
s. The set of its currently supported technologies is not changed (become mapped by Technology inclusion).pFinder
- technology finderjava.lang.IllegalArgumentException
- if pFinder is nullmapByTechnologyExclusion(OdiUserFunctionImpl, Collection, IOdiTechnologyFinder)
, mapByTechnologyInclusion(OdiUserFunctionImpl, Collection, IOdiTechnologyFinder)
public void mapByTechnologyInclusion(OdiUserFunctionImpl pImpl, java.util.Collection<OdiTechnology> pIncludedTechnologies, IOdiTechnologyFinder pFinder) throws OdiTechnologyAlreadyImplementedException
OdiTechnology
s that will be supported by the given OdiUserFunctionImpl
.pImpl
- OdiUserFunctionImpl
belonging to this OdiUserFunction
pIncludedTechnologies
- Collection of OdiTechnology
s to be supportedpFinder
- technology finderjava.lang.IllegalArgumentException
- if pImpl, pIncludedTechnologies or pFinder is nullOdiTechnologyAlreadyImplementedException
- if one of the given OdiTechnology
is already supportedmapByTechnologyExclusion(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 mapByTechnologyExclusion(OdiUserFunctionImpl, Collection, IOdiTechnologyFinder)
method.
OdiUserFunctionImpl
mapByTechnologyExclusion(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 findermapByTechnologyExclusion(OdiUserFunctionImpl, Collection, IOdiTechnologyFinder)
, mapByTechnologyInclusion(OdiUserFunctionImpl, Collection, IOdiTechnologyFinder)
|
Oracle® Data Integrator Java API Reference 11g Release 1 (11.1.1.5.0) E17060-02 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |