com.ibm.workflow.api
Interface ProcessInstance


public interface ProcessInstance


Method Summary
 AuditSetting auditMode()
          Returns the audit mode of the process instance.
 java.lang.String category()
          Returns the category of the process instance.
 java.util.Calendar creationTime()
          Returns the creation time of the process instance.
 java.lang.String creator()
          Returns the creator of the process instance.
 void delete()
          This API call deletes the specified process instance from the MQ Workflow execution server (action call).
 java.lang.String description()
          Returns the description of the process instance.
 java.lang.String documentation()
          Returns the documentation of the process instance.
 java.util.Calendar endTime()
          Returns the end time of the process instance.
 ReadOnlyContainer globalContainer()
          This API call retrieves the global container associated with the process instance from the MQ Workflow execution server (action call).
 java.lang.String icon()
          Returns the icon associated with the process instance.
 ReadWriteContainer inContainer()
          This API call retrieves the input container associated with the process instance from the MQ Workflow execution server (action call).
 java.lang.String inContainerName()
          Returns the name of the input container of the process instance.
 boolean inContainerNeeded()
          Indicates whether an input container is needed to start the process instance.
 boolean isComplete()
          Indicates whether the complete process instance information is available.
 boolean isEmpty()
          Indicates whether no process instance information is available.
 java.util.Calendar lastModificationTime()
          Returns the last time a primary attribute of the process instance was changed.
 java.util.Calendar lastStateChangeTime()
          Returns the last time the state of the process instance was changed.
 java.lang.String name()
          Returns the name of the process instance.
 java.util.Calendar notificationTime()
          Returns the notification time of the process instance.
 java.lang.String notifiedPerson()
          Returns the person who received the notification.
 InstanceMonitor obtainProcessMonitor(boolean deep)
          This API call obtains a monitor for the process instance from the MQ Workflow execution server (action call).
 java.lang.String organizationName()
          Returns the name of the organization of the process instance.
 ReadOnlyContainer outContainer()
          This API call retrieves the output container associated with the process instance from the MQ Workflow execution server (action call).
 java.lang.String outContainerName()
          Returns the name of the output container of the process instance.
 java.lang.String parentName()
          Returns the name of the parent process instance of this process instance.
 java.lang.String persistentOid()
          Returns a representation of the object identification of the process instance.
 java.lang.String persistentOidOfProcessTemplate()
          Returns a representation of the object identification of the process template the process instance is derived from.
 java.lang.String processAdmin()
          Returns the user ID of the process administrator of the process instance.
 java.lang.String processContext()
          Returns the user-specified context of the process instance.
 java.lang.String processTemplateName()
          Returns the name of the process template the process instance is derived from.
 void refresh()
          This API call refreshes the process instance from the MQ Workflow execution server (action call).
 void restart()
          This API call restarts the process instance on the MQ Workflow execution server (action call).
 void resume(boolean deep)
          This API call resumes processing of a suspended or suspending process instance (action call).
 java.lang.String roleName()
          Returns the name of the role of the process instance.
 void setDescription(java.lang.String description)
          This API call sets the description of the process instance to the specified value (action call).
 void setName(java.lang.String name)
          This API call sets the name of the process instance to the specified value (action call).
 void setProcessAdmin(java.lang.String administrator)
          This API call sets the process administrator to the specified user ID (action call).
 void start()
          This API call starts a ready process instance (action call).
 void start2(ReadWriteContainer input)
          See start; additionally allows to pass an input container.
 void start3(ReadWriteContainer inContainer, java.lang.String processContext)
          See start; additionally allows to pass an input container and a process context.
 java.lang.String starter()
          Returns the starter of the process instance.
 java.util.Calendar startTime()
          Returns the start time of the process instance.
 ExecutionState state()
          Returns the state of the process instance.
 Escalation stateOfNotification()
          Returns the notification state of the process instance.
 void suspend(boolean deep)
          This API call suspends (temporarily stops) the process instance (action call).
 void suspend2(java.util.Calendar time, boolean deep)
          See suspend; additionally allows to provide a date at which the process instance is automatically resumed.
 java.util.Calendar suspensionExpirationTime()
          Returns the suspension expiration time of the process instance.
 java.util.Calendar suspensionTime()
          Returns the time the process instance was suspended.
 java.lang.String systemGroupName()
          Returns the name of the system group where the process instance runs.
 java.lang.String systemName()
          Returns the name of the system where the process instance runs.
 void terminate()
          This API call terminates a process instance and all of its non-autonomous subprocesses (action call).
 java.lang.String topLevelName()
          Returns the name of the top level process instance of this process instance.
 java.util.Calendar validFromTime()
          Returns the time from when on the associated process template is valid.
 

Method Detail

isEmpty

public boolean isEmpty()
                throws FmcException
Indicates whether no process instance information is available.

Throws:
FmcException - thrown if an API error or a communication error occurred.

isComplete

public boolean isComplete()
                   throws FmcException
Indicates whether the complete process instance information is available.

Throws:
FmcException - thrown if an API error or a communication error occurred.

auditMode

public AuditSetting auditMode()
                       throws FmcException
Returns the audit mode of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

category

public java.lang.String category()
                          throws FmcException
Returns the category of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

creationTime

public java.util.Calendar creationTime()
                                throws FmcException
Returns the creation time of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

creator

public java.lang.String creator()
                         throws FmcException
Returns the creator of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

description

public java.lang.String description()
                             throws FmcException
Returns the description of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

documentation

public java.lang.String documentation()
                               throws FmcException
Returns the documentation of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

endTime

public java.util.Calendar endTime()
                           throws FmcException
Returns the end time of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

icon

public java.lang.String icon()
                      throws FmcException
Returns the icon associated with the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

inContainerName

public java.lang.String inContainerName()
                                 throws FmcException
Returns the name of the input container of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

inContainerNeeded

public boolean inContainerNeeded()
                          throws FmcException
Indicates whether an input container is needed to start the process instance. An input container is needed when

Throws:
FmcException - thrown if an API error or a communication error occurred.

lastModificationTime

public java.util.Calendar lastModificationTime()
                                        throws FmcException
Returns the last time a primary attribute of the process instance was changed.

Throws:
FmcException - thrown if an API error or a communication error occurred.

lastStateChangeTime

public java.util.Calendar lastStateChangeTime()
                                       throws FmcException
Returns the last time the state of the process instance was changed.

Throws:
FmcException - thrown if an API error or a communication error occurred.

name

public java.lang.String name()
                      throws FmcException
Returns the name of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

notificationTime

public java.util.Calendar notificationTime()
                                    throws FmcException
Returns the notification time of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

notifiedPerson

public java.lang.String notifiedPerson()
                                throws FmcException
Returns the person who received the notification.

Throws:
FmcException - thrown if an API error or a communication error occurred.

organizationName

public java.lang.String organizationName()
                                  throws FmcException
Returns the name of the organization of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

outContainerName

public java.lang.String outContainerName()
                                  throws FmcException
Returns the name of the output container of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

parentName

public java.lang.String parentName()
                            throws FmcException
Returns the name of the parent process instance of this process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

persistentOid

public java.lang.String persistentOid()
                               throws FmcException
Returns a representation of the object identification of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

persistentOidOfProcessTemplate

public java.lang.String persistentOidOfProcessTemplate()
                                                throws FmcException
Returns a representation of the object identification of the process template the process instance is derived from.

Throws:
FmcException - thrown if an API error or a communication error occurred.

processAdmin

public java.lang.String processAdmin()
                              throws FmcException
Returns the user ID of the process administrator of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

processContext

public java.lang.String processContext()
                                throws FmcException
Returns the user-specified context of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

processTemplateName

public java.lang.String processTemplateName()
                                     throws FmcException
Returns the name of the process template the process instance is derived from.

Throws:
FmcException - thrown if an API error or a communication error occurred.

roleName

public java.lang.String roleName()
                          throws FmcException
Returns the name of the role of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

starter

public java.lang.String starter()
                         throws FmcException
Returns the starter of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

startTime

public java.util.Calendar startTime()
                             throws FmcException
Returns the start time of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

state

public ExecutionState state()
                     throws FmcException
Returns the state of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

stateOfNotification

public Escalation stateOfNotification()
                               throws FmcException
Returns the notification state of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

suspensionExpirationTime

public java.util.Calendar suspensionExpirationTime()
                                            throws FmcException
Returns the suspension expiration time of the process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

suspensionTime

public java.util.Calendar suspensionTime()
                                  throws FmcException
Returns the time the process instance was suspended.

Throws:
FmcException - thrown if an API error or a communication error occurred.

systemGroupName

public java.lang.String systemGroupName()
                                 throws FmcException
Returns the name of the system group where the process instance runs.

Throws:
FmcException - thrown if an API error or a communication error occurred.

systemName

public java.lang.String systemName()
                            throws FmcException
Returns the name of the system where the process instance runs.

Throws:
FmcException - thrown if an API error or a communication error occurred.

topLevelName

public java.lang.String topLevelName()
                              throws FmcException
Returns the name of the top level process instance of this process instance.

Throws:
FmcException - thrown if an API error or a communication error occurred.

validFromTime

public java.util.Calendar validFromTime()
                                 throws FmcException
Returns the time from when on the associated process template is valid. The process template name and its valid from time uniquely identify the process template from which the process instance is derived.

Throws:
FmcException - thrown if an API error or a communication error occurred.

delete

public void delete()
            throws FmcException

This API call deletes the specified process instance from the MQ Workflow execution server (action call).

The process instance must be a top-level process and in states Ready, Finished, or Terminated. The creator can delete the process instance as long as it has not been started.

Throws:
FmcException - thrown if an API error or a communication error occurred.

globalContainer

public ReadOnlyContainer globalContainer()
                                  throws FmcException

This API call retrieves the global container associated with the process instance from the MQ Workflow execution server (action call).

Throws:
FmcException - thrown if an API error or a communication error occurred.

inContainer

public ReadWriteContainer inContainer()
                               throws FmcException

This API call retrieves the input container associated with the process instance from the MQ Workflow execution server (action call).

Throws:
FmcException - thrown if an API error or a communication error occurred.

obtainProcessMonitor

public InstanceMonitor obtainProcessMonitor(boolean deep)
                                     throws FmcException

This API call obtains a monitor for the process instance from the MQ Workflow execution server (action call).

When the deep option is specified, then activity instances of type Block are resolved, that is, their block monitors are also fetched from the server.

Note:
Deep is currently not supported.
Throws:
FmcException - thrown if an API error or a communication error occurred.

outContainer

public ReadOnlyContainer outContainer()
                               throws FmcException

This API call retrieves the output container associated with the process instance from the MQ Workflow execution server (action call).


refresh

public void refresh()
             throws FmcException

This API call refreshes the process instance from the MQ Workflow execution server (action call).

All information about the process instance, primary and secondary, is retrieved.

Throws:
FmcException - thrown if an API error or a communication error occurred.

restart

public void restart()
             throws FmcException

This API call restarts the process instance on the MQ Workflow execution server (action call).

Only finished or terminated top-level process instances can be restarted. The process administrator does not change. The process starter is set to the requester of this API call.

Throws:
FmcException - thrown if an API error or a communication error occurred.

resume

public void resume(boolean deep)
            throws FmcException

This API call resumes processing of a suspended or suspending process instance (action call).

All non-autonomous subprocesses with respect to control autonomy are also resumed, if the deep option is true.

Throws:
FmcException - thrown if an API error or a communication error occurred.

setDescription

public void setDescription(java.lang.String description)
                    throws FmcException

This API call sets the description of the process instance to the specified value (action call).

If no description is provided, the description of the process instance is erased.

The following rules apply for specifying a process instance description:

Throws:
FmcException - thrown if an API error or a communication error occurred.

setName

public void setName(java.lang.String name)
             throws FmcException

This API call sets the name of the process instance to the specified value (action call).

The process instance must still be in the Ready state.

The following rules apply for specifying a process instance name:

Throws:
FmcException - thrown if an API error or a communication error occurred.

setProcessAdmin

public void setProcessAdmin(java.lang.String administrator)
                     throws FmcException

This API call sets the process administrator to the specified user ID (action call).

The user ID must be an ID known to MQ Workflow. The process instance can be in any state.

Throws:
FmcException - thrown if an API error or a communication error occurred.

start

public void start()
           throws FmcException

This API call starts a ready process instance (action call). Optionally, context information meaningful to the caller can be provided. That information accompanies the process instance throughout its lifetime and can be used when searching for process instances.

When initial values are to be passed to the process instance to be started, an input container can be provided (see also FmcjProcessInstance:: InContainer()). When the process instance requires input and is started without specifying an input container, the input-container values are not set. So, when, for example, input-container values are queried from within an activity implementation, FMC_ERROR_MEMBER_NOT_SET is returned.

When successfully executed, the starter is set to the requestor of this action and the process administrator is determined, the starting activities are determined and maybe started or work items are created, and the global container is set when available.

Throws:
FmcException - thrown if an API error or a communication error occurred.

start2

public void start2(ReadWriteContainer input)
            throws FmcException
See start; additionally allows to pass an input container.

Throws:
FmcException - thrown if an API error or a communication error occurred.

start3

public void start3(ReadWriteContainer inContainer,
                   java.lang.String processContext)
            throws FmcException
See start; additionally allows to pass an input container and a process context.

Throws:
FmcException - thrown if an API error or a communication error occurred.

suspend

public void suspend(boolean deep)
             throws FmcException

This API call suspends (temporarily stops) the process instance (action call).

The process instance must be in state Running. All non-autonomous subprocesses with respect to control autonomy are also suspended if the deep option is true. Autonomous subprocesses are not considered.

The process instance remains in state Suspending as long as there are running program activity implementations, suspending non-autonomous subprocesses, or checked-out work items. When the activity implementations completed their executions and the non-autonomous subprocesses reached the Suspended state, and when the checked-out work items are checked in, the process instance is put into the Suspended state.

Optionally, a date may be specified up to when the process instance is suspended. The date is to be specified in local time. The process instance is then automatically resumed, together with the non-autonomous subprocesses, if the deep option had been specified.

Throws:
FmcException - thrown if an API error or a communication error occurred.

suspend2

public void suspend2(java.util.Calendar time,
                     boolean deep)
              throws FmcException
See suspend; additionally allows to provide a date at which the process instance is automatically resumed.

Throws:
FmcException - thrown if an API error or a communication error occurred.

terminate

public void terminate()
               throws FmcException

This API call terminates a process instance and all of its non-autonomous subprocesses (action call). All running, checked-out, and suspended activity instances are automatically terminated.

The process instance must be in states Running, Suspended, or Suspending.

The process instance is put into state terminating as long as there are terminating non-autonomous subprocesses. When the non-autonomous subprocesses terminated, the process instance is put into the Terminated state. When the process instance has reached the Terminated state, it is deleted depending on the setting of the "delete finished items" option.

Throws:
FmcException - thrown if an API error or a communication error occurred.


© Copyright IBM Corporation 1999, 2008. All Rights Reserved.