# com.bea.wli.management.runtime
ProcessInstanceInfo Interface

public interface ProcessInstanceInfo
extends `Serializable`

Represents information about a particular process instance.

Related Topics

{@link ProcessRuntimeMBean}

All Superinterfaces
  `Serializable`

## Method Summary

`public `String`` | `getDisplayName`() Returns the display name for the process.
`public long` | `getExecTime`() Returns the total elapsed time in terms of milliseconds.
`public `String`` | `getId`() Returns the conversation id of this process instance
`public `String`` | `getLabel`() Returns the process label for this process instance.
`public `Date`` | `getLastStatusChangeTime`() Returns the time when the status of this process has changed.
`public `ProcessNodeInfo`[]` | `getPendingActivities`() Returns an array of pending activities, namely, nodes where the instance is blocked.
`public `WrappedThrowable`[]` | `getProcessExceptions`() Returns a list of fatal exception for the instance.
`public `String`` | `getServiceURI`() Returns the service URI for the process type
`public long` | `getSLA`() Returns the SLA value in milliseconds for this process.
`public long` | `getSLAWarning`() Returns the SLA Warning threshold in milliseconds.
`public double` | `getSLAWarningThreshold`() Returns the SLA Warning threshold for this process as a fraction of the actual SLA.
`public `Date`` | `getStartTime`() Returns the starting time for this process instance.
`public `ProcessStatus`` | `getStatus`() Returns the current status of this instance.
`public boolean` | `isDetailed`() Returns true if the detailed information about this instance is available.

## Method Detail

### getDisplayName() Method

    public String getDisplayName()

Returns the display name for the process. This information can be obtained via `ProcessConfigurationMBean.getDisplayName()``` as well.

### getExecTime() Method

    public long getExecTime()

Returns the total elapsed time in terms of milliseconds. This figure is the wall-clock execution time, and does not exclude the time an instance spent waiting for input. Elapsed time is computed differently depending on the current status of the instances. For running, suspended, and frozen instances the execution time is simply the difference between the current time and the start time. For aborted, terminated and completed instances it is the difference between the last status change time (i.e., whenever the instance has been aborted, terminated, or completed) and the start time.

### getId() Method

    public String getId()

Returns the conversation id of this process instance

### getLabel() Method

    public String getLabel()

Returns the process label for this process instance. For instances that are no longer running, this returns the last process label that was set by the instance.

### getLastStatusChangeTime() Method

    public Date getLastStatusChangeTime()

Returns the time when the status of this process has changed. The return value can be used to determine when a process has completed, terminated, suspended, aborted, and frozen. This method should be used in conjunction with `ProcessInstanceInfo.getStatus()``` method.

### getPendingActivities() Method

    public ProcessNodeInfo[] getPendingActivities()

Returns an array of pending activities, namely, nodes where the instance is blocked. A `null` return value indicates that the information is unavailable.

Related Topics

{@link ProcessRuntimeMBean#getPendingActivities}
{@link #isDetailed}.

### getProcessExceptions() Method

    public WrappedThrowable[] getProcessExceptions()

Returns a list of fatal exception for the instance. Usually just one.

### getServiceURI() Method

    public String getServiceURI()

Returns the service URI for the process type

### getSLA() Method

    public long getSLA()

Returns the SLA value in milliseconds for this process. This value can also be obtained via `ProcessConfigurationMBean.getSLA()```, and is included here for convenience.

### getSLAWarning() Method

    public long getSLAWarning()

Returns the SLA Warning threshold in milliseconds. This is equal to `getSLA() * getSLAWarningThreshold`

### getSLAWarningThreshold() Method

    public double getSLAWarningThreshold()

Returns the SLA Warning threshold for this process as a fraction of the actual SLA. This value can also be obtained via `ProcessConfigurationMBean.getSLAWarningThreshold()```, and is included here for convenience

### getStartTime() Method

    public Date getStartTime()

Returns the starting time for this process instance. Returns null if there was an error obtaining the start time.

### getStatus() Method

    public ProcessStatus getStatus()

Returns the current status of this instance.

### isDetailed() Method

    public boolean isDetailed()

Returns true if the detailed information about this instance is available. When `false` , pending activities and process exceptions are unavailable. In other words the calls to methods `ProcessInstanceInfo.getPendingActivities()```, and `ProcessInstanceInfo.getProcessExceptions()``` will return null. Detail information is available only when obtaining information about one particular process instance, rather than querying for more than one instance.

Related Topics

``ProcessRuntimeMBean.getProcessInstanceInfo(String, boolean)``