javax.batch.runtime.context

## Interface StepContext

    public interface StepContext

A StepContext provides information about the current step of a job execution.

### Method Summary

Methods
`BatchStatus` `getBatchStatus()` The getBatchStatus method returns the current batch status of the current step.
`Exception` `getException()` The getException method returns the last exception thrown from a step level batch artifact to the batch runtime.
`String` `getExitStatus()` The getExitStatus method simply returns the exit status value stored into the step context through the setExitStatus method or null.
`Metric[]` `getMetrics()` The getMetrics method returns an array of step level metrics.
`Serializable` `getPersistentUserData()` The getPersistentUserData method returns a persistent data object belonging to the current step.
`Properties` `getProperties()` The getProperties method returns the step level properties specified in a job definition.
`long` `getStepExecutionId()` The getStepExecutionId method returns the current step's execution id.
`String` `getStepName()` Get step name.
`Object` `getTransientUserData()` The getTransientUserData method returns a transient data object belonging to the current Job XML execution element.
`void` `setExitStatus(String status)` The setExitStatus method assigns the user-specified exit status for the current step.
`void` `setPersistentUserData(Serializable data)` The setPersistentUserData method stores a persistent data object into the current step.
`void` `setTransientUserData(Object data)` The setTransientUserData method stores a transient data object into the current batch context.

### Method Detail

#### getStepName

    String getStepName()

Get step name.

Returns:
  value of 'id' attribute from <step>

#### getTransientUserData

    Object getTransientUserData()

The getTransientUserData method returns a transient data object belonging to the current Job XML execution element.

Returns:
  user-specified type

#### setTransientUserData

    void setTransientUserData(Object data)

The setTransientUserData method stores a transient data object into the current batch context.

Parameters:
  `data` - is the user-specified type

#### getStepExecutionId

    long getStepExecutionId()

The getStepExecutionId method returns the current step's execution id.

Returns:
  step execution id

#### getProperties

    Properties getProperties()

The getProperties method returns the step level properties specified in a job definition.

A couple notes:

- There is no guarantee that the same Properties object instance is always returned in the same (step) scope.
- Besides the properties which are defined in JSL within a child <properties> element of a <step> element, the batch runtime implementation may choose to include additional, implementation-defined properties.

Returns:
  step level properties

#### getPersistentUserData

    Serializable getPersistentUserData()

The getPersistentUserData method returns a persistent data object belonging to the current step. The user data type must implement java.util.Serializable. This data is saved as part of a step's checkpoint. For a step that does not do checkpoints, it is saved after the step ends. It is available upon restart.

Returns:
  user-specified type

#### setPersistentUserData

    void setPersistentUserData(Serializable data)

The setPersistentUserData method stores a persistent data object into the current step. The user data type must implement java.util.Serializable. This data is saved as part of a step's checkpoint. For a step that does not do checkpoints, it is saved after the step ends. It is available upon restart.

Parameters:
  `data` - is the user-specified type

#### getBatchStatus

    BatchStatus getBatchStatus()

The getBatchStatus method returns the current batch status of the current step. This value is set by the batch runtime and changes as the batch status changes.

Returns:
  batch status string

#### getExitStatus

    String getExitStatus()

The getExitStatus method simply returns the exit status value stored into the step context through the setExitStatus method or null.

Returns:
  exit status string

#### setExitStatus

    void setExitStatus(String status)

The setExitStatus method assigns the user-specified exit status for the current step. When the step ends, the exit status of the step is the value specified through setExitStatus. If setExitStatus was not called or was called with a null value, then the exit status defaults to the batch status of the step.

Parameters:
  `status` - string

#### getException

    Exception getException()

The getException method returns the last exception thrown from a step level batch artifact to the batch runtime.

Returns:
  the last exception

#### getMetrics

    Metric[] getMetrics()

The getMetrics method returns an array of step level metrics. These are things like commits, skips, etc.

Returns:
  metrics array
See Also:
  `for definition of standard metrics.`

© Copyright IBM Corp. 2014
Licensed under the Apache License, Version 2.0