org.ow2.bonita.facade
Interface QueryRuntimeAPI

All Superinterfaces:
RemoteQueryRuntimeAPI

public interface QueryRuntimeAPI
extends RemoteQueryRuntimeAPI

Getters on workflow recorded data.
Operations in this API applies to main entities managed by Nova Bonita such as:
packages, processes, process instances, activities, tasks.
Returned records are issued from recorded runtime informations (both runtime and archived workflow instances).

Author:
Pierre Vigneras, Charles Souillard
See Also:
RoleMapper, PerformerAssign, Hook

Method Summary
 ActivityInstance<ActivityBody> getActivityInstance(ActivityInstanceUUID activityUUID)
          Returns the record of the activity with the given activity UUID.
 java.util.Set<ActivityInstance<ActivityBody>> getActivityInstances(ProcessInstanceUUID instanceUUID)
          Returns all records of activity for the given process instance UUID.
 java.util.Set<ActivityInstance<ActivityBody>> getActivityInstances(ProcessInstanceUUID instanceUUID, java.lang.String activityId)
          Returns records for all iterations and multi-instantiations that should happend for the given process instance UUID and activity Id.
 java.lang.Object getActivityInstanceVariable(ActivityInstanceUUID activityUUID, java.lang.String variableId)
          Obtains a variable defined as local to the activity for the given activity UUID and variable Id.
 java.util.Map<java.lang.String,java.lang.Object> getActivityInstanceVariables(ActivityInstanceUUID activityUUID)
          Obtains the variables defined as local to the activity for the given activity UUID.
 ProcessInstance getProcessInstance(ProcessInstanceUUID instanceUUID)
          Returns the record of the instance with the given UUID.
 java.util.Set<ProcessInstance> getProcessInstances()
          Returns all records of instance.
 java.util.Set<ProcessInstance> getProcessInstances(ProcessDefinitionUUID processUUID)
          Returns all records of instance for the given process processDefinitionUUID.
 java.lang.Object getProcessInstanceVariable(ProcessInstanceUUID instanceUUID, java.lang.String variableId)
          Obtains a process variable for the given process instance UUID and variable Id.
 java.util.Map<java.lang.String,java.lang.Object> getProcessInstanceVariables(ProcessInstanceUUID instanceUUID)
          Obtains the process variables for the given process instance UUID.
 ActivityInstance<TaskInstance> getTask(TaskUUID taskUUID)
          Returns the record of the task with the given task UUID.
 java.util.Collection<ActivityInstance<TaskInstance>> getTaskList(ProcessInstanceUUID instanceUUID, java.lang.String userId, TaskState taskState)
          Obtains the tasks with state either READY or EXECUTING or SUSPENDED or FINISHED for the given instance and for the given user.
 java.util.Collection<ActivityInstance<TaskInstance>> getTaskList(ProcessInstanceUUID instanceUUID, TaskState taskState)
          Obtains the user tasks with state either READY or EXECUTING or SUSPENDED or FINISHED for the given instance and the authenticated user.
 java.util.Collection<ActivityInstance<TaskInstance>> getTaskList(java.lang.String userId, TaskState taskState)
           Obtains the user tasks with state either READY or EXECUTING or SUSPENDED or FINISHED for the given user.
 java.util.Collection<ActivityInstance<TaskInstance>> getTaskList(TaskState taskState)
          Obtains the user tasks with state either READY or EXECUTING or SUSPENDED or FINISHED for the authenticated user.
 java.util.Set<ActivityInstance<TaskInstance>> getTasks(ProcessInstanceUUID instanceUUID)
          Returns all records of task for the given process instance UUID.
 java.lang.Object getVariable(ActivityInstanceUUID activityUUID, java.lang.String variableId)
          Obtains a variable for the given activity and variable Id.
 java.util.Map<java.lang.String,java.lang.Object> getVariables(ActivityInstanceUUID activityUUID)
          Obtains the activity variables (including global process and local activity variables) for the given activity UUID.
 

Method Detail

getProcessInstances

java.util.Set<ProcessInstance> getProcessInstances()
Returns all records of instance.
An empty set is returned if no instance is found.

Specified by:
getProcessInstances in interface RemoteQueryRuntimeAPI
Returns:
a set containing all instance records.
Throws:
BonitaInternalException - if an exception occurs.

getProcessInstance

ProcessInstance getProcessInstance(ProcessInstanceUUID instanceUUID)
                                   throws InstanceNotFoundException
Returns the record of the instance with the given UUID.

Specified by:
getProcessInstance in interface RemoteQueryRuntimeAPI
Parameters:
instanceUUID - the instance UUID.
Returns:
the record of the instance with the given UUID.
Throws:
InstanceNotFoundException - if no instance has been found with the given instance UUID.
BonitaInternalException - if an exception occurs.

getProcessInstances

java.util.Set<ProcessInstance> getProcessInstances(ProcessDefinitionUUID processUUID)
                                                   throws ProcessNotFoundException
Returns all records of instance for the given process processDefinitionUUID.
An empty set is returned if no instance is found.

Specified by:
getProcessInstances in interface RemoteQueryRuntimeAPI
Parameters:
processUUID - the process definition UUID.
Returns:
a set containing all instance records.
Throws:
ProcessNotFoundException - if no process has been found with the given process UUID.
BonitaInternalException - if an exception occurs.

getActivityInstance

ActivityInstance<ActivityBody> getActivityInstance(ActivityInstanceUUID activityUUID)
                                                   throws ActivityNotFoundException
Returns the record of the activity with the given activity UUID.

Specified by:
getActivityInstance in interface RemoteQueryRuntimeAPI
Parameters:
activityUUID - the activity UUID.
Returns:
the activity record with the given instance UUID and activity id.
Throws:
InstanceNotFoundException - if no instance has been found with the given instance UUID.
ActivityNotFoundException - if no activity has been found with the given activity id.
BonitaInternalException - if an exception occurs.

getActivityInstances

java.util.Set<ActivityInstance<ActivityBody>> getActivityInstances(ProcessInstanceUUID instanceUUID)
                                                                   throws InstanceNotFoundException
Returns all records of activity for the given process instance UUID.

Specified by:
getActivityInstances in interface RemoteQueryRuntimeAPI
Parameters:
instanceUUID - the instance UUID.
Returns:
the unordered set containing activity records.
Throws:
InstanceNotFoundException - if no instance has been found with the given instance UUID.
BonitaInternalException - if an exception occurs.

getActivityInstances

java.util.Set<ActivityInstance<ActivityBody>> getActivityInstances(ProcessInstanceUUID instanceUUID,
                                                                   java.lang.String activityId)
                                                                   throws InstanceNotFoundException,
                                                                          ActivityNotFoundException
Returns records for all iterations and multi-instantiations that should happend for the given process instance UUID and activity Id.
An empty set is returned if no instance is found.

Specified by:
getActivityInstances in interface RemoteQueryRuntimeAPI
Parameters:
instanceUUID - the instance UUID.
activityId - the activity Id (as specified into the XPDL file).
Returns:
the unordered set containing activity records.
Throws:
InstanceNotFoundException - if no instance has been found with the given instance UUID.
BonitaInternalException - if an exception occurs.
ActivityNotFoundException

getTask

ActivityInstance<TaskInstance> getTask(TaskUUID taskUUID)
                                       throws TaskNotFoundException
Returns the record of the task with the given task UUID.

Specified by:
getTask in interface RemoteQueryRuntimeAPI
Parameters:
taskUUID - the task UUID.
Returns:
the record of the task with the given task UUID.
Throws:
TaskNotFoundException - if no task has been found with the given task UUID.
BonitaInternalException - if an exception occurs.

getTasks

java.util.Set<ActivityInstance<TaskInstance>> getTasks(ProcessInstanceUUID instanceUUID)
                                                       throws InstanceNotFoundException
Returns all records of task for the given process instance UUID.

Specified by:
getTasks in interface RemoteQueryRuntimeAPI
Parameters:
instanceUUID - the instance UUID.
Returns:
a set containing all task records for the instance.
Throws:
InstanceNotFoundException - if no instance has been found with the given instance UUID.
BonitaInternalException - if an exception occurs.

getTaskList

java.util.Collection<ActivityInstance<TaskInstance>> getTaskList(ProcessInstanceUUID instanceUUID,
                                                                 TaskState taskState)
                                                                 throws InstanceNotFoundException
Obtains the user tasks with state either READY or EXECUTING or SUSPENDED or FINISHED for the given instance and the authenticated user.

Specified by:
getTaskList in interface RemoteQueryRuntimeAPI
Parameters:
instanceUUID - the instance UUID.
taskState - the state of the task.
Returns:
a collection of task records. If no tasks are found, an empty collection is returned.
Throws:
InstanceNotFoundException - if no instance record is found with the given instance UUID.
BonitaInternalException - if an other exception occurs.

getTaskList

java.util.Collection<ActivityInstance<TaskInstance>> getTaskList(ProcessInstanceUUID instanceUUID,
                                                                 java.lang.String userId,
                                                                 TaskState taskState)
                                                                 throws InstanceNotFoundException
Obtains the tasks with state either READY or EXECUTING or SUSPENDED or FINISHED for the given instance and for the given user.
If the task has been assigned to a user, only this user can get the task into the returned list. Otherwise all the users that believe to the candidate list can get the task.

Specified by:
getTaskList in interface RemoteQueryRuntimeAPI
Parameters:
instanceUUID - the instance UUID.
userId - the userId for which the tasks are searched.
taskState - the state of the task.
Returns:
a collection of task records. If no tasks are found, an empty collection is returned.
Throws:
InstanceNotFoundException - if no instance record is found with the given instance UUID.
BonitaInternalException - if an other exception occurs.

getTaskList

java.util.Collection<ActivityInstance<TaskInstance>> getTaskList(TaskState taskState)
Obtains the user tasks with state either READY or EXECUTING or SUSPENDED or FINISHED for the authenticated user.
If the task has been assigned to a user, only this user can get the task into the returned list.
Otherwise all the users that believe to the candidate list can get the task.

Specified by:
getTaskList in interface RemoteQueryRuntimeAPI
Parameters:
taskState - the state of the task.
Returns:
a collection of task records. If no tasks are found, an empty collection is returned.
Throws:
BonitaInternalException - if an other exception occurs.

getTaskList

java.util.Collection<ActivityInstance<TaskInstance>> getTaskList(java.lang.String userId,
                                                                 TaskState taskState)

Obtains the user tasks with state either READY or EXECUTING or SUSPENDED or FINISHED for the given user.
If the task has been assigned to a user, only this user can get the task into the returned list.
Otherwise all the users that believe to the candidate list can get the task.

Specified by:
getTaskList in interface RemoteQueryRuntimeAPI
Parameters:
userId - the userId for which the tasks are searched.
taskState - the state of the task.
Returns:
a collection of task records. If no tasks are found, an empty collection is returned.
Throws:
BonitaInternalException - if an other exception occurs.

getActivityInstanceVariable

java.lang.Object getActivityInstanceVariable(ActivityInstanceUUID activityUUID,
                                             java.lang.String variableId)
                                             throws ActivityNotFoundException,
                                                    VariableNotFoundException
Obtains a variable defined as local to the activity for the given activity UUID and variable Id. The activity should either be executed or currently pointed by the a process execution.

Specified by:
getActivityInstanceVariable in interface RemoteQueryRuntimeAPI
Parameters:
activityUUID - the activity UUID.
variableId - the value of the Id attribute of the DataField element defined into the XPDL file.
Returns:
the variable object (can be: an Enumeration or a plain String).
Throws:
ActivityNotFoundException - if this activity is not pointed by a process execution and the execution informations for this activity has not been recorded.
VariableNotFoundException - if no variable is found with the given id.
BonitaInternalException - if an other exception occurs.

getActivityInstanceVariables

java.util.Map<java.lang.String,java.lang.Object> getActivityInstanceVariables(ActivityInstanceUUID activityUUID)
                                                                              throws ActivityNotFoundException
Obtains the variables defined as local to the activity for the given activity UUID.
An empty map is returned if no variable is found.

Specified by:
getActivityInstanceVariables in interface RemoteQueryRuntimeAPI
Parameters:
activityUUID - the activity UUID.
Returns:
the map of activity variables where key is the variable id and value is the variable object.
Throws:
ActivityNotFoundException - if this activity is not pointed by a process execution and the execution informations for this activity has not been recorded.
BonitaInternalException - if an other exception occurs.

getVariable

java.lang.Object getVariable(ActivityInstanceUUID activityUUID,
                             java.lang.String variableId)
                             throws ActivityNotFoundException,
                                    VariableNotFoundException
Obtains a variable for the given activity and variable Id. This variable could be local to the activity or global to the process. The activity should either be executed or currently pointed by the a process execution.

Specified by:
getVariable in interface RemoteQueryRuntimeAPI
Parameters:
activityUUID - the activity UUID.
variableId - the value of the Id attribute of the DataField element defined into the XPDL file.
Returns:
the variable object (can be: an Enumeration or a plain String})
Throws:
ActivityNotFoundException - if this activity is not pointed by a process execution and the execution informations for this activity has not been recorded.
VariableNotFoundException - if no variable is found with the given id.
BonitaInternalException - if an other exception occurs.

getVariables

java.util.Map<java.lang.String,java.lang.Object> getVariables(ActivityInstanceUUID activityUUID)
                                                              throws InstanceNotFoundException,
                                                                     ActivityNotFoundException
Obtains the activity variables (including global process and local activity variables) for the given activity UUID.
An empty map is returned if no variable is found.

Specified by:
getVariables in interface RemoteQueryRuntimeAPI
Parameters:
activityUUID - the activity UUID.
Returns:
the map of activity variables where key is the variable id and value is the variable object.
Throws:
ActivityNotFoundException - if this activity is not pointed by a process execution and the execution informations for this activity has not been recorded.
InstanceNotFoundException - if no recorded informations is found with the given instance UUID.
BonitaInternalException - if an other exception occurs.

getProcessInstanceVariable

java.lang.Object getProcessInstanceVariable(ProcessInstanceUUID instanceUUID,
                                            java.lang.String variableId)
                                            throws InstanceNotFoundException,
                                                   VariableNotFoundException
Obtains a process variable for the given process instance UUID and variable Id.

Specified by:
getProcessInstanceVariable in interface RemoteQueryRuntimeAPI
Parameters:
instanceUUID - the instance UUID.
variableId - the variable id.
Returns:
the variable object (can be: Enumeration if the XPDL type is Enumeration
or standard classes from the JDK for supported basic XPDL types).
Throws:
InstanceNotFoundException - if no instance has found with the given instance UUID.
VariableNotFoundException - if no variable is found with the given id.
BonitaInternalException - if an other exception occurs.

getProcessInstanceVariables

java.util.Map<java.lang.String,java.lang.Object> getProcessInstanceVariables(ProcessInstanceUUID instanceUUID)
                                                                             throws InstanceNotFoundException
Obtains the process variables for the given process instance UUID. An empty map is returned if no process variable is found.

Specified by:
getProcessInstanceVariables in interface RemoteQueryRuntimeAPI
Parameters:
instanceUUID - the instance UUID.
Returns:
the map of process variables where key is the variable id and value is the variable object.
Throws:
InstanceNotFoundException - if no instance has been found with the given instance UUID.
BonitaInternalException - if an other exception occurs.


Copyright © 2008 OW2 Consortium. All Rights Reserved.