The OdiLoadPlanStep is an abstract class for the steps of the aggregate OdiLoadPlan.
The implementations are:

OdiLoadPlanStepSerial

OdiLoadPlanStepParallel

OdiLoadPlanStepCase

OdiLoadPlanStepRunScenario

The implementations have different behavior in regards to the OdiLoadPlan, this class helps share the common behavior and properties

The life cycle of an OdiLoadPlanStep begins when a user adds one of its implementation to the list of the steps of the OdiLoadPlan.
Users can modify the steps in order to make them fit their needs.
The life cycle ends when the step is removed from the list of steps of the OdiLoadPlan

Order is managed at creation time. When moving, order is managed by the step container. Order is then managed when removing a child.

Returns the exception step defined within this load plan to be executed in case this step is in Error.
In case the step is defined in the step hierarchy of an exception, this method will throw an UnsupportedOperationException

Returns the exception behavior specifies how this step should behave in case an exception is encountered.
In case the step is defined in the step hierarchy of an exception, this method will throw an UnsupportedOperationException

Will regenerate all scenarios of this step and its children according to the specified RegenerationMode.
If this step is a RunScenario step type it regenerates only this step scenario.
This operation is not supported if the work repository is a runtime repository.
This operation will not happen if one of the scenario original object doesn't exist anymore (throws OdiOriginalObjectNotExistException

Defines the exception step within this load plan that will be executed in case this step is in Error.
In case the step is defined in the step hierarchy of an exception, this method will throw an UnsupportedOperationException

getExceptionBehavior

Returns the exception behavior specifies how this step should behave in case an exception is encountered.
In case the step is defined in the step hierarchy of an exception, this method will throw an UnsupportedOperationException

Throws:

java.lang.UnsupportedOperationException - if the step is part of an exception hierarchy

getTimeout

public int getTimeout()

Returns:

Timeout in seconds for this step. The timeout defines a maximum time that this step should take before being aborted by the Load Plan. A value of zero indicates an infinite timeout..
When a timeout is reached, the step is marked in error and the Exception associated is launched.

setTimeout

public void setTimeout(int timeout)

Parameters:

timeout - in seconds for this step. The timeout defines a maximum time that this step should take before being aborted by the Load Plan. A value of zero indicates an infinite timeout.It must be positive.
When a timeout is reached, the step is marked in error and the Exception associated is launched.

getException

Returns the exception step defined within this load plan to be executed in case this step is in Error.
In case the step is defined in the step hierarchy of an exception, this method will throw an UnsupportedOperationException

Throws:

java.lang.UnsupportedOperationException - if the step is part of an exception hierarchy

setException

Defines the exception step within this load plan that will be executed in case this step is in Error.
In case the step is defined in the step hierarchy of an exception, this method will throw an UnsupportedOperationException

Parameters:

exception -

Throws:

java.lang.UnsupportedOperationException - if the step is part of an exception hierarchy

getInternalId

Provides a common getter for the persistence layer to obtain an identity,
irrespective of the actual type of identity used.

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.

regenerate

Will regenerate all scenarios of this step and its children according to the specified RegenerationMode.
If this step is a RunScenario step type it regenerates only this step scenario.
This operation is not supported if the work repository is a runtime repository.
This operation will not happen if one of the scenario original object doesn't exist anymore (throws OdiOriginalObjectNotExistException

Parameters:

pRegenerationMode - Must not be null.

pScenarioGenerator - The scenario generation service used. Must not be null.

Throws:

java.lang.UnsupportedOperationException - if the work repository is a runtime repository.