public final class OdiSession extends oracle.odi.domain.support.AbstractOdiEntity implements IWorkRuntimeOdiEntity, IRuntimeExecutable
An OdiSession
is an execution (of a scenario, an interface, a package or a procedure, ...)
undertaken by an execution agent. OdiSession
is the root entity in OdiSession
- OdiSessionVariable
- OdiSessionStepLog
. It is identified by a unique session ID that
can be obtained from getSessionId()
method call.
Life cycle of an OdiSession
begins when it is created / prepared from a scenario, an interface,
etc. Once prepared, ODI Execution Engine can execute it. Life cycle ends when the session is removed from
runtime repository.
Constructor and Description |
---|
OdiSession(OdiSessionBlueprint pSessionBlueprint,
java.lang.String pName,
ExecutionMode pExecutionMode,
Status pStatus,
java.lang.String pContextCode)
FOR INTERNAL USE ONLY.
|
OdiSession(java.lang.String pSessionName,
ExecutionMode pExeMode,
Status pSessionStatus,
java.lang.String pExeContext)
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
void |
addSessionCustomStep(OdiSessionCustomStep pSessionCustomStep)
Adds the
OdiSessionCustomStep to this OdiSession . |
void |
addSessionCustomTask(OdiSessionCustomTask pSessionCustomTask)
Adds the
OdiSessionCustomTask to this OdiSession . |
void |
addSessionCustomVariable(OdiSessionCustomVariable pSessionCustomVariable)
Adds the
OdiSessionCustomVariable to this OdiSession . |
void |
addSessionStepLog(OdiSessionStepLog pSessionStepLog) |
java.lang.String |
getAgentCreationTime() |
java.lang.String |
getAgentName()
Returns the name of the agent that manage this
OdiSession . |
java.lang.String |
getAgentThreadId() |
int |
getChildSessionCount()
Obtains the count of child
OdiSession . |
java.lang.String |
getContextCode()
Returns the execution context code for this
OdiSession . |
java.lang.String |
getDebugClientId()
INTERNAL: Returns id of the debug client connected to this session.
|
java.lang.Integer |
getDeleteCount()
Relevant for Interfaces and Procedures and any execution that manipulates data.
|
java.lang.Integer |
getDuration()
Returns the duration of the
OdiSession execution in second, or null if not yet defined
(i.e. |
java.util.Date |
getEndTime()
Returns the end time of the
OdiSession , or null if the session isn't yet finished. |
java.lang.Integer |
getErrorCount()
Obtains number of errors of this session i.e.
|
java.lang.String |
getErrorMessage()
Obtains the error message of this
OdiSession if failed, or null if the
session successfully ended. |
java.lang.Long |
getEssJobId()
Returns the ID of ESS Job which started this
OdiSession . |
java.lang.Long |
getEssRequestExecutionContext()
Returns the RequestExecutionContext of ESS Job which started this
OdiSession . |
ExecutionMode |
getExecutionMode()
Returns execution mode for this OdiSession.
|
int |
getFailedChildSessionCount()
Obtains the count of failed child
OdiSession . |
OdiSessionStepLog |
getFailureStepLog()
Return the step log (
OdiSessionStepLog ) that caused the session's failure. |
java.lang.Integer |
getInsertCount()
Relevant for Interfaces and Procedures and any execution that manipulates data.
|
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 |
getKeywordsAsString()
Obtains comma separated list of keywords associated with
OdiSession . |
LogLevel |
getLogLevel()
Deprecated.
As of 11.1.1.5 this method is replaced by #getExecutionMode()
|
java.lang.String |
getMasterAgentName()
Returns the name of agent received execution request for this session.
|
java.lang.String |
getName()
Returns the name of this
OdiSession (i.e. |
java.lang.Number |
getParentSessionId()
Obtains the ID of parent
OdiSession . |
java.lang.Integer |
getRecordCount()
Relevant for Interfaces and Procedures and any execution that manipulates data.
|
java.lang.String |
getReturnCode()
Obtains the return code of this
OdiSession . |
OdiSessionStepLog |
getRunningStepLog()
Obtains the current running step log (
OdiSessionStepLog ), or null if the execution is not
yet started or is finished. |
IRepositoryEntity |
getSecurityContainer()
Define a generic way to retrieve container for entities.
|
OdiSessionBlueprint |
getSessionBlueprint()
Returns related
OdiSessionBlueprint , representing the execution plan of this session. |
java.util.Collection |
getSessionCustomSteps()
Returns the unmodifiable collection of related
OdiSessionCustomStep s |
java.util.Collection |
getSessionCustomTasks()
Returns the unmodifiable collection of related
OdiSessionCustomTask s |
java.util.Collection |
getSessionCustomVariables()
Returns the unmodifiable collection of related
OdiSessionCustomVariable s |
java.lang.Number |
getSessionId()
Returns the ID of this
OdiSession . |
java.util.Collection |
getSessionSequences()
Deprecated.
|
java.util.List |
getSessionStepLogs()
Obtains the ordered list of executed steps' logs (
OdiSessionStepLog ). |
java.util.Collection |
getSessionVariables()
Deprecated.
|
Tag |
getSourceScenarioTag()
Deprecated.
replaced by
#getSessionBlueprint().getSourceScenarioTag() |
java.util.Date |
getStartTime()
Returns the start time of the
OdiSession , or null if the session isn't started yet. |
java.lang.String |
getStartupVariables() |
Status |
getStatus()
Obtains the current status of this
OdiSession . |
java.util.List |
getSteps()
Deprecated.
consider using
OdiSessionBlueprintStep instead. |
java.lang.String |
getSubmitterName()
Obtains actual ODI user name that has submitted the
OdiSession . |
int |
getSuccessfulChildSessionCount()
Obtains the count of successful child
OdiSession . |
java.lang.Integer |
getUpdateCount()
Relevant for Interfaces and Procedures and any execution that manipulates data.
|
boolean |
isDebuggable()
Returns
true if the session can be debugged, false otherwise. |
boolean |
isEssJobSession()
Returns true if this
OdiSession was started by ESS Job, false otherwise. |
boolean |
isInstanceLevelSecurityNeeded()
Internal: this method is for internal purpose and must not be considered
as part of the public API.
|
boolean |
isOwbJobSession()
Returns
true if the session is OWB Job, false otherwise. |
boolean |
isSessionStartedSynchronously() |
void |
removeStep(IRuntimeStep pStep)
Deprecated.
consider using
OdiSessionBlueprintStep instead. |
void |
setAgentCreationTime(java.lang.String pCreationTime) |
void |
setAgentName(java.lang.String pAgentName)
FOR INTERNAL USE ONLY.
|
void |
setAgentThreadId(java.lang.String pAgentThreadId) |
void |
setChildSessionCount(int pChildSessionCount)
FOR INTERNAL USE ONLY.
|
void |
setContextCode(java.lang.String pContextCode)
FOR INTERNAL USE ONLY.
|
void |
setDeleteCount(java.lang.Integer pDeleteCount)
FOR INTERNAL USE ONLY.
|
void |
setDuration(java.lang.Integer pDuration)
FOR INTERNAL USE ONLY.
|
void |
setEndTime(java.util.Date pEndTime)
FOR INTERNAL USE ONLY.
|
void |
setErrorCount(java.lang.Integer pErrorCount)
FOR INTERNAL USE ONLY.
|
void |
setErrorMessage(java.lang.String pErrorMessage)
FOR INTERNAL USE ONLY.
|
void |
setExecutionMode(ExecutionMode pExecutionMode)
FOR INTERNAL USE ONLY.
|
void |
setFailedChildSessionCount(int pFailedChildSessionCount)
FOR INTERNAL USE ONLY.
|
void |
setInsertCount(java.lang.Integer pInsertCount)
FOR INTERNAL USE ONLY.
|
void |
setKeywordsAsString(java.lang.String pKeywordsAsString)
FOR INTERNAL USE ONLY.
|
void |
setMasterAgentName(java.lang.String pMasterAgentName)
FOR INTERNAL USE ONLY.
|
void |
setName(java.lang.String pName)
FOR INTERNAL USE ONLY.
|
void |
setParentSessionId(java.lang.Number pParentSesionId)
FOR INTERNAL USE ONLY.
|
void |
setRecordCount(java.lang.Integer pRecordCount)
FOR INTERNAL USE ONLY.
|
void |
setReturnCode(java.lang.String pReturnCode)
FOR INTERNAL USE ONLY.
|
void |
setSessionStartedSynchronously(boolean pSessionStartedSynchronously) |
void |
setSourceScenarioTag(Tag pTag)
Deprecated.
Source Scenario Tag property is owned by
OdiSessionBlueprint from now, and
thus it may be common for a number of Sessions. So its modification is not possible
at this level. |
void |
setStartTime(java.util.Date pStartTime)
FOR INTERNAL USE ONLY.
|
void |
setStartupVariables(java.lang.String pStartupVariables) |
void |
setStatus(Status pStatus)
Set the current status of this session.
|
void |
setSubmitterName(java.lang.String pSubmitterName)
FOR INTERNAL USE ONLY.
|
void |
setSuccessfulChildSessionCount(int pSucessfulChildSessionCount)
FOR INTERNAL USE ONLY.
|
void |
setUpdateCount(java.lang.Integer pUpdateCount)
FOR INTERNAL USE ONLY.
|
equals, getFirstDate, getFirstUser, getInternalVersion, getLastDate, getLastUser, hashCode, isNew, toString
getGlobalId, getNumericId, hasCustomizedPersistenceMethodFor, invokeCustomizedPersistenceMethodFor
getFirstDate, getFirstUser, getLastDate, getLastUser
getGlobalId
public OdiSession(java.lang.String pSessionName, ExecutionMode pExeMode, Status pSessionStatus, java.lang.String pExeContext)
OdiSession(OdiSessionBlueprint, String, ExecutionMode, Status, String)
public OdiSession(OdiSessionBlueprint pSessionBlueprint, java.lang.String pName, ExecutionMode pExecutionMode, Status pStatus, java.lang.String pContextCode)
Constructs OdiSession
with specified blueprint, name, execution mode, status and execution context.
pSessionBlueprint
- blueprintpName
- namepExecutionMode
- execution modepStatus
- statuspContextCode
- execution contextpublic void removeStep(IRuntimeStep pStep)
OdiSessionBlueprintStep
instead.removeStep
in interface IRuntimeExecutable
public java.util.List getSteps()
OdiSessionBlueprintStep
instead.getSteps
in interface IRuntimeExecutable
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 java.lang.String getName()
OdiSession
(i.e. the name of the element that produce this
session, this means the package, variable, scenario, etc.).getName
in interface IOdiEntity
getName
in class oracle.odi.domain.support.AbstractOdiEntity
OdiSession
public void setName(java.lang.String pName)
Specifies the OdiSession
's name.
pName
- namepublic java.lang.Number getSessionId()
OdiSession
.OdiSession
public Status getStatus()
OdiSession
.OdiSession
setStatus(Status)
public java.lang.String getAgentName()
OdiSession
.public void setAgentName(java.lang.String pAgentName)
Specifies the name of the agent that manage this OdiSession
.
pAgentName
- agent namepublic java.lang.String getContextCode()
OdiSession
.public void setContextCode(java.lang.String pContextCode)
Specifies the execution context code for this OdiSession
.
pContextCode
- context codepublic Tag getSourceScenarioTag()
#getSessionBlueprint().getSourceScenarioTag()
null
if not executed from scenario.public void setSourceScenarioTag(Tag pTag)
OdiSessionBlueprint
from now, and
thus it may be common for a number of Sessions. So its modification is not possible
at this level.pTag
- tag to setpublic java.lang.String getSubmitterName()
OdiSession
.OdiSession
public void setSubmitterName(java.lang.String pSubmitterName)
Specifies the actual ODI user name that has submitted the OdiSession
.
pSubmitterName
- submitter namepublic 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 java.lang.String getKeywordsAsString()
OdiSession
.
Keywords are used to distribute this OdiSession
into OdiSessionFolder
.OdiSession
public void setKeywordsAsString(java.lang.String pKeywordsAsString)
Specifies the comma separated list of keywords associated with OdiSession
.
pKeywordsAsString
- comma separated list of keywordspublic java.util.Date getStartTime()
OdiSession
, or null
if the session isn't started yet.OdiSession
public void setStartTime(java.util.Date pStartTime)
Specifies the start time of the OdiSession
.
pStartTime
- the start timepublic java.util.Date getEndTime()
OdiSession
, or null
if the session isn't yet finished.OdiSession
public void setEndTime(java.util.Date pEndTime)
Specifies the end time of the OdiSession
.
pEndTime
- public java.lang.Integer getDuration()
OdiSession
execution in second, or null
if not yet defined
(i.e. the execution is still running).OdiSession
execution in secondpublic void setDuration(java.lang.Integer pDuration)
Specifies the duration of the OdiSession
execution in seconds.
pDuration
- duration of the OdiSession
execution in secondspublic java.lang.String getReturnCode()
OdiSession
.
The return code is obtained from the execution channel of the last task, e.g. operating system code, database error code, etc. It will be "0" (zero) in case of success.
OdiSession
public void setReturnCode(java.lang.String pReturnCode)
Specifies the return code for this OdiSession
.
pReturnCode
- return codepublic java.lang.String getErrorMessage()
OdiSession
if failed, or null
if the
session successfully ended.OdiSession
if failedpublic void setErrorMessage(java.lang.String pErrorMessage)
Specifies the error message for this OdiSession
.
pErrorMessage
- error messagepublic int getChildSessionCount()
OdiSession
.OdiSession
public void setChildSessionCount(int pChildSessionCount)
Specifies the child session count.
pChildSessionCount
- child session countpublic int getSuccessfulChildSessionCount()
OdiSession
.OdiSession
public void setSuccessfulChildSessionCount(int pSucessfulChildSessionCount)
Specifies the successful child session count.
pSucessfulChildSessionCount
- successful child session countpublic int getFailedChildSessionCount()
OdiSession
.OdiSession
public void setFailedChildSessionCount(int pFailedChildSessionCount)
Specifies the failed child session count.
pFailedChildSessionCount
- failed child session countpublic java.util.List getSessionStepLogs()
OdiSessionStepLog
).
If a running step exists it will be the last one in the returned list.OdiSessionStepLog
)public OdiSessionStepLog getFailureStepLog()
OdiSessionStepLog
) that caused the session's failure. If the session didn't
failed, than method will always return null
. However, it can be null
even if
session is failed (e.g. session failed at preparation time).OdiSessionStepLog
) that caused the session's failure, or null
if the session didn't failedpublic OdiSessionStepLog getRunningStepLog()
OdiSessionStepLog
), or null
if the execution is not
yet started or is finished.OdiSessionStepLog
)public java.lang.Number getParentSessionId()
OdiSession
.OdiSession
public void setParentSessionId(java.lang.Number pParentSesionId)
Specifies the parent OdiSession
ID.
pParentSesionId
- parent OdiSession
IDpublic IRepositoryEntity getSecurityContainer()
IRepositoryEntity
getSecurityContainer
in interface IRepositoryEntity
public java.lang.Integer getRecordCount()
Relevant for Interfaces and Procedures and any execution that manipulates data.
Obtains overall numbers of records processed by this session i.e. the sum of records processed by each steps of this OdiSession
.
null
if not applicableOdiSessionStepLog.getRecordCount()
public void setRecordCount(java.lang.Integer pRecordCount)
Specifies the overall number of records processed by this session.
pRecordCount
- overall number of processed recordspublic java.lang.Integer getInsertCount()
Relevant for Interfaces and Procedures and any execution that manipulates data.
Obtains overall numbers of rows inserted during execution of this session i.e. the sum of insert made by each steps of this OdiSession
.
OdiSessionStepLog.getInsertCount()
public void setInsertCount(java.lang.Integer pInsertCount)
Specifies the overall number of rows inserted during execution of this session.
pInsertCount
- overall number of rows insertedpublic java.lang.Integer getUpdateCount()
Relevant for Interfaces and Procedures and any execution that manipulates data.
Obtains overall numbers of rows updated during execution of this session i.e. the sum of update made by each steps of this OdiSession
.
OdiSessionStepLog.getUpdateCount()
public void setUpdateCount(java.lang.Integer pUpdateCount)
Specifies the overall number of rows updated during execution of this session.
pUpdateCount
- overall number of rows updatedpublic java.lang.Integer getDeleteCount()
Relevant for Interfaces and Procedures and any execution that manipulates data.
Obtains overall numbers of rows deleted during execution of this session i.e. the sum of delete made by each steps of this OdiSession
.
OdiSessionStepLog.getDeleteCount()
public void setDeleteCount(java.lang.Integer pDeleteCount)
Specifies the overall number of rows deleted during execution of this session.
pDeleteCount
- overall number of rows deletedpublic java.lang.Integer getErrorCount()
Obtains number of errors of this session i.e. the sum of errors of each steps of this OdiSession
.
OdiSessionStepLog.getErrorCount()
public void setErrorCount(java.lang.Integer pErrorCount)
Specifies the overall number errors during execution of this session.
pErrorCount
- overall number of errorspublic java.util.Collection getSessionVariables()
OdiSession
.OdiSessionVariable
public java.util.Collection getSessionSequences()
OdiSession
.OdiSessionSequence
public boolean isEssJobSession()
OdiSession
was started by ESS Job, false otherwise.OdiSession
was started by ESS Job, false otherwisepublic java.lang.Long getEssJobId()
OdiSession
.OdiSession
java.lang.IllegalStateException
- if this OdiSession
is not ESS Job relatedpublic java.lang.Long getEssRequestExecutionContext()
OdiSession
.OdiSession
java.lang.IllegalStateException
- if this OdiSession
is not ESS Job related@Deprecated public LogLevel getLogLevel()
public ExecutionMode getExecutionMode()
ExecutionMode
public void setExecutionMode(ExecutionMode pExecutionMode)
Specifies the execution mode for this OdiSession
pExecutionMode
- execution modepublic java.lang.String getMasterAgentName()
agentName
if the agent involved in load
balancing.public void setMasterAgentName(java.lang.String pMasterAgentName)
Specifies the master agent name for this OdiSession
pMasterAgentName
- master agent namepublic java.lang.String getAgentThreadId()
public void setAgentThreadId(java.lang.String pAgentThreadId)
public java.lang.String getAgentCreationTime()
public void setAgentCreationTime(java.lang.String pCreationTime)
public boolean isSessionStartedSynchronously()
public void setSessionStartedSynchronously(boolean pSessionStartedSynchronously)
public java.lang.String getStartupVariables()
public void setStartupVariables(java.lang.String pStartupVariables)
public void setStatus(Status pStatus)
pStatus
- the statusgetStatus()
public boolean isOwbJobSession()
true
if the session is OWB Job, false
otherwise.public boolean isDebuggable()
true
if the session can be debugged, false
otherwise.public java.lang.String getDebugClientId()
public OdiSessionBlueprint getSessionBlueprint()
OdiSessionBlueprint
, representing the execution plan of this session.OdiSessionBlueprint
public java.util.Collection getSessionCustomSteps()
OdiSessionCustomStep
sOdiSessionCustomStep
spublic java.util.Collection getSessionCustomTasks()
OdiSessionCustomTask
sOdiSessionCustomTask
spublic java.util.Collection getSessionCustomVariables()
OdiSessionCustomVariable
sOdiSessionCustomVariable
spublic void addSessionCustomStep(OdiSessionCustomStep pSessionCustomStep)
OdiSessionCustomStep
to this OdiSession
.pSessionCustomStep
- OdiSessionCustomStep
to addpublic void addSessionCustomVariable(OdiSessionCustomVariable pSessionCustomVariable)
OdiSessionCustomVariable
to this OdiSession
.pSessionCustomVariable
- OdiSessionCustomVariable
to addpublic void addSessionCustomTask(OdiSessionCustomTask pSessionCustomTask)
OdiSessionCustomTask
to this OdiSession
.pSessionCustomTask
- OdiSessionCustomTask
to addpublic void addSessionStepLog(OdiSessionStepLog pSessionStepLog)