public final class OdiUserProcedure extends OdiProcedure implements oracle.odi.domain.shortcuts.IOdiShortcutable, IOdiScenarioSource, oracle.odi.domain.impexp.IExportable, IProcedureUser, oracle.odi.impexp.smartie.ISmartExportable, oracle.odi.core.audit.support.IAuditableFirstClassObject
An OdiUserProcedure is a set of commands that can be executed by an agent. These commands concern all technologies accessible by Oracle Data Integrator (OS, JDBC, JMS commands, etc).
 If an OdiUserProcedure is constructed with a reference object, the OdiUserProcedure will represented a shortcut to 
 the reference object. When an OdiUserProcedure 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.
 
An OdiUserProcedure is dedicated to a single OdiProject and is located inside an OdiFolder. Thus, life cycle of an OdiUserProcedure begin when it is created from an OdiFolder using OdiFolder#addUserProcedure(String name) method, or when an OdiUserProcedure is imported from an XML file.
Life cycle ends when enclosing OdiProject or OdiFolder is removed from design time repository. An instance of OdiUserProcedure can be generated into an OdiScenario and implements the interface IOdiScenarioSource for this purpose. Also, an instance of OdiUserProcedure can be exported and imported. It implements the interface IExportable.
OdiUserProcedureClass class is defined to only use OdiUserProcedureLineLine as ProcedureLine.
NAME_MAX_LENGTH| Constructor and Description | 
|---|
OdiUserProcedure(OdiFolder pFolder,
                java.lang.String pName)
Constructor that sets the parent  
OdiFolder and the name of this OdiUserProcedure instance. | 
OdiUserProcedure(OdiFolder pFolder,
                java.lang.String pName,
                OdiUserProcedure pReferenceUserProcedure)
Constructor that sets the parentFolder, the name of the user procedure,
 and the reference user procedure. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
OdiUserProcedureLine | 
addLine(java.lang.String pName,
       OdiProcedureLineCmd pTargetCommand,
       OdiProcedureLineCmd pSourceCommand,
       java.util.Collection pGenerationConditions)
Adds (assigning it the latest position) a new OdiProcedureLine with the
 given name, the given target and source commands (possibly nulls) and
 options (possibly null) that will condition the generation of the line. 
 | 
ProcedureOption | 
addOption(java.lang.String pOptionName)
Adds (assigning it the lastest position) a new ProcedureOption with the
 given name and default OptionType to this OdiProcedure. 
 | 
ProcedureOption | 
addOption(java.lang.String pOptionName,
         ProcedureOption.OptionType pType,
         java.lang.Object pDefaultValue)
Adds (assigning it the lastest position) a new ProcedureOption of the
 given type, default value and with the given name to this OdiProcedure. 
 | 
boolean | 
changeShortcutReferenceObject(OdiUserProcedure pReferenceObject)  | 
void | 
checkValidReference(OdiUserProcedure pReferenceObject)  | 
OdiDesigntimeBreakpoint | 
getBreakpointOn(OdiUserProcedureLine pUserProcedureLine)
Returns breakpoint set on the line specified if any and  
null
 otherwise. | 
java.util.Collection | 
getExecutionOptions()
Obtains an unmodifiable collection of options defined
 for the design time execution of this OdiUserProcedure. 
 | 
OdiFolder | 
getFolder()
Return the parent  
OdiFolder. | 
java.lang.Number | 
getInstanceId()
Return the internal identifier of the instance that is marked by this interface. 
 | 
java.util.List | 
getLines()
Returns an unmodifiable list of OdiProcedureLines held by this
 OdiProcedure. 
 | 
java.lang.Class | 
getLineType()  | 
ProcedureOption | 
getOption(java.lang.String pName)
Retrieves the procedure option which name is the parameter name. 
 | 
java.util.Collection | 
getOptionNames()
Returns a collection of names of all this procedure's options. 
 | 
java.util.List | 
getOptions()
Returns an unmodifable list of ProcedureOptions held by this
 OdiProcedure. 
 | 
OdiUserProcedure | 
getRealObject()  | 
IReleaseTag | 
getReleaseTag()  | 
OdiUserProcedure | 
getShortcutBaseObject()  | 
OdiUserProcedure | 
getShortcutOrigObject()
Deprecated.   
 | 
OdiUserProcedure | 
getShortcutReferenceObject()  | 
boolean | 
isCleanupOnError()
Returns true if cleanup tasks should be performed on error, false otherwise. 
 | 
boolean | 
isConcurrent()
Returns true if concurrency enabled, false otherwise. 
 | 
boolean | 
isInstanceLevelSecurityNeeded()
Internal: this method is for internal purpose and must not be considered
 as part of the public API. 
 | 
boolean | 
isMultiConnectionSupported()
Return whether this OdiProcedure supports mulitConnection or not. 
 | 
boolean | 
isShortcut()  | 
void | 
moveLineAfter(OdiUserProcedureLine pSource,
             OdiUserProcedureLine pAfter)
Moves the given OdiProcedureLine after the line specified. 
 | 
void | 
moveLineBefore(OdiUserProcedureLine pSource,
              OdiUserProcedureLine pBefore)
Moves the given Procedure Moves the given OdiProcedureLine before the
 line specified. 
 | 
void | 
removeBreakpointOn(OdiUserProcedureLine pUserProcedureLine)
Removes breakpoint on the line specified. 
 | 
void | 
removeLine(OdiUserProcedureLine pLine)
Removes the given line from this OdiProcedure. 
 | 
void | 
removeOption(ProcedureOption pOption)
Remove the specified option from this procedure. 
 | 
OdiDesigntimeBreakpoint | 
setBreakpointOn(OdiUserProcedureLine pUserProcedureLine)
Sets breakpoint on the line specified. 
 | 
void | 
setCleanupOnError(boolean pCleanupOnError)
Cleanup tasks should be performed on error is  
pCleanupOnError is true. | 
void | 
setConcurrent(boolean pConcurrent)
Enables concurrency if  
pConcurrent is true and disables it otherwise. | 
void | 
setDefaultSourceTechnology(OdiTechnology pTechnology)
Sets the default source technology of this OdiProcedure. 
 | 
void | 
setDefaultTargetTechnology(OdiTechnology pTechnology)
Sets the default target technology. 
 | 
void | 
setMultiConnectionSupported(boolean pMultiConnectionSupported)
Defines whether this OdiProcedure supports mulitConnection or not. 
 | 
boolean | 
setShortcutBaseObject(OdiUserProcedure pBaseObject)  | 
boolean | 
setShortcutReferenceObject(OdiUserProcedure pReferenceObject)  | 
addLine, addLine, addLine, addOptionGroup, addProcedureLine, addProcedureLine, addProcedureOption, dumpLineOrder, duplicateLine, duplicateOption, getDefaultSourceTechnology, getDefaultTargetTechnology, getDescription, getFlexFieldsValues, getInternalId, getName, getOptionGroup, getOptionGroups, getOptionsWithNoGroup, getProcedureId, getProcedureOption, getProcedureOptions, getTopLevelLines, initFlexFields, isProcedureLine, moveGroupAfterGroup, moveGroupBeforeGroup, moveLineToBottom, moveLineToTop, moveOptionAfter, moveOptionBefore, moveOptionToBottom, moveOptionToTop, removeOptionGroup, removeProcedureLine, setDescription, setNamegetFirstDate, getFirstUser, getInternalVersion, getLastDate, getLastUser, isNew, preCommit, toStringequals, getBigNumericId, getGlobalId, getNumericId, getParent, hashCodegetBigNumericId, getGlobalId, getNumericIdgetFirstDate, getFirstUser, getLastDate, getLastUsergetGlobalId, getParentpublic OdiUserProcedure(OdiFolder pFolder, java.lang.String pName, OdiUserProcedure pReferenceUserProcedure)
pFolder - owning folderpName - name of OdiUserProcedurepReferenceUserProcedure - The reference datastore for this datastore shortcut.DomainRuntimeException - if the folder is null or if the name is null, empty or longer than NAME_MAX_LENGTH (400 characters)OdiFolderpublic OdiUserProcedure(OdiFolder pFolder, java.lang.String pName)
OdiFolder and the name of this OdiUserProcedure instance.pFolder - owning folderpName - name of OdiUserProcedureDomainRuntimeException - if the folder is null or if the name is null, empty or longer than NAME_MAX_LENGTH (400 characters)OdiFolderpublic OdiFolder getFolder()
OdiFolder.OdiFolderOdiFolder, 
setFolder(OdiFolder)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 java.util.Collection getExecutionOptions()
java.lang.IllegalStateException - if this is a shortcut. Use getRealObject to access.public java.lang.Number getInstanceId()
IProcedureUsergetInstanceId in interface IProcedureUserpublic OdiUserProcedure getShortcutBaseObject()
getShortcutBaseObject in interface oracle.odi.domain.shortcuts.IOdiShortcutablepublic boolean setShortcutBaseObject(OdiUserProcedure pBaseObject)
setShortcutBaseObject in interface oracle.odi.domain.shortcuts.IOdiShortcutablepublic OdiUserProcedure getShortcutReferenceObject()
getShortcutReferenceObject in interface oracle.odi.domain.shortcuts.IOdiShortcutablepublic boolean setShortcutReferenceObject(OdiUserProcedure pReferenceObject)
setShortcutReferenceObject in interface oracle.odi.domain.shortcuts.IOdiShortcutablepublic OdiUserProcedure getShortcutOrigObject()
getShortcutOrigObject in interface oracle.odi.domain.shortcuts.IOdiShortcutablepublic IReleaseTag getReleaseTag()
getReleaseTag in interface oracle.odi.domain.shortcuts.IOdiShortcutablepublic boolean isShortcut()
isShortcut in interface oracle.odi.domain.shortcuts.IOdiShortcutablepublic OdiUserProcedure getRealObject()
getRealObject in interface oracle.odi.domain.shortcuts.IOdiShortcutablepublic void checkValidReference(OdiUserProcedure pReferenceObject)
checkValidReference in interface oracle.odi.domain.shortcuts.IOdiShortcutablepublic boolean changeShortcutReferenceObject(OdiUserProcedure pReferenceObject)
changeShortcutReferenceObject in interface oracle.odi.domain.shortcuts.IOdiShortcutablepublic ProcedureOption getOption(java.lang.String pName)
OdiProceduregetOption in class OdiProcedurepName - the name of the optionjava.lang.IllegalStateException - if this is a shortcut. Use getRealObject to access.OdiProcedure.addOption(ProcedureOption)public java.util.Collection getOptionNames()
OdiProceduregetOptionNames in class OdiProcedurejava.lang.IllegalStateException - if this is a shortcut. Use getRealObject to access.OdiProcedure.getOptions(), 
OdiProcedure.getOption(String)public java.util.List getOptions()
OdiProcedureThe obtained list is ordered by option's positions.
Note that list's indexes and options positions are consistent by not equals since the position of a ProcedureOption can be changed manually from ProcedureOption#setPosition(int). Also, when a ProcedureOption's position is changed, the obtained list is not consistent anymore with the new position.
getOptions in class OdiProcedurejava.lang.IllegalStateException - if this is a shortcut. Use getRealObject to access.OdiProcedure.addOption(ProcedureOption), 
OdiProcedure.getOption(String)public ProcedureOption addOption(java.lang.String pOptionName)
OdiProcedureaddOption in class OdiProcedurepOptionName - option namejava.lang.IllegalStateException - if this is a shortcut. Use getRealObject to access.public ProcedureOption addOption(java.lang.String pOptionName, ProcedureOption.OptionType pType, java.lang.Object pDefaultValue)
OdiProcedureaddOption in class OdiProcedurepOptionName - Name of option.pType - Option typepDefaultValue - Default valuejava.lang.IllegalStateException - if this is a shortcut. Use getRealObject to access.public void removeOption(ProcedureOption pOption)
OdiProcedureThe option is also removed from any OdiProcedureLine's generation condition.
removeOption in class OdiProcedurepOption - the option to removejava.lang.IllegalStateException - if this is a shortcut. Use getRealObject to access.public void setDefaultSourceTechnology(OdiTechnology pTechnology)
OdiProcedureMainly used inside ODI Studio when creating commands.
 By default this property is set to null.
 
setDefaultSourceTechnology in class OdiProcedurepTechnology - the default source technologyjava.lang.IllegalStateException - if this is a shortcut. Use getRealObject to access.OdiProcedure.getDefaultSourceTechnology()public void setDefaultTargetTechnology(OdiTechnology pTechnology)
OdiProcedureMainly used inside ODI Studio when creating commands.
 By default this property is set to null.
 
setDefaultTargetTechnology in class OdiProcedurepTechnology - the default target technologyjava.lang.IllegalStateException - if this is a shortcut. Use getRealObject to access.OdiProcedure.getDefaultTargetTechnology()public OdiUserProcedureLine addLine(java.lang.String pName, OdiProcedureLineCmd pTargetCommand, OdiProcedureLineCmd pSourceCommand, java.util.Collection pGenerationConditions)
OdiProcedureaddLine in class OdiProcedurepName - Name of line.pTargetCommand - target command, or nullpSourceCommand - source command, or nullpGenerationConditions - conditions, or nulljava.lang.IllegalStateException - if this is a shortcut. Use getRealObject to access.public java.util.List getLines()
OdiProceduregetLines in class OdiProcedurejava.lang.IllegalStateException - if this is a shortcut. Use getRealObject to access.public void moveLineAfter(OdiUserProcedureLine pSource, OdiUserProcedureLine pAfter)
OdiProceduremoveLineAfter in class OdiProcedurepSource - source linepAfter - move source line after this linejava.lang.IllegalStateException - if this is a shortcut. Use getRealObject to access.public void moveLineBefore(OdiUserProcedureLine pSource, OdiUserProcedureLine pBefore)
OdiProceduremoveLineBefore in class OdiProcedurepSource - source linepBefore - move source line before this linejava.lang.IllegalStateException - if this is a shortcut. Use getRealObject to access.public void removeLine(OdiUserProcedureLine pLine)
OdiProcedureremoveLine in class OdiProcedurepLine - line to be removedjava.lang.IllegalStateException - if this is a shortcut. Use getRealObject to access.public void setMultiConnectionSupported(boolean pMultiConnectionSupported)
OdiProcedureSetting this will affect source technology. If set to false, source technology will be set to null.
setMultiConnectionSupported in class OdiProcedurepMultiConnectionSupported - true to make this procedure
        supports mutliConnection, false otherwisejava.lang.IllegalStateException - if this is a shortcut. Use getRealObject to access.OdiProcedure.isMultiConnectionSupported()public boolean isMultiConnectionSupported()
OdiProcedureisMultiConnectionSupported in class OdiProceduretrue if the procedure supports mutliConnection,
         false otherwisejava.lang.IllegalStateException - if this is a shortcut. Use getRealObject to access.OdiProcedure.setMultiConnectionSupported(boolean)public OdiDesigntimeBreakpoint setBreakpointOn(OdiUserProcedureLine pUserProcedureLine)
pUserProcedureLine - line to set breakpoint ongetBreakpointOn(OdiUserProcedureLine), 
removeBreakpointOn(OdiUserProcedureLine)public OdiDesigntimeBreakpoint getBreakpointOn(OdiUserProcedureLine pUserProcedureLine)
null
 otherwise.pUserProcedureLine - line to get breakpoint onsetBreakpointOn(OdiUserProcedureLine), 
removeBreakpointOn(OdiUserProcedureLine)public void removeBreakpointOn(OdiUserProcedureLine pUserProcedureLine)
pUserProcedureLine - line to remove breakpoint onsetBreakpointOn(OdiUserProcedureLine), 
getBreakpointOn(OdiUserProcedureLine)public boolean isConcurrent()
public void setConcurrent(boolean pConcurrent)
pConcurrent is true and disables it otherwise.pConcurrent - public boolean isCleanupOnError()
public void setCleanupOnError(boolean pCleanupOnError)
pCleanupOnError is true.pCleanupOnError - if cleanup tasks should be performed on error.public java.lang.Class getLineType()
getLineType in class OdiProcedure