atg.workflow
Interface WorkflowView


public interface WorkflowView

An interface exposing workflow features to a notional user of the workflow system. The user associated with the view is typically represented by a security construct such as atg.security.User or atg.security.Persona; note that in the latter case, the view may actually be associated with a role, group, or organization, rather than a single user. A workflow view provides status information on workflow instances, tasks and outcomes, allows new workflow instances to be created, and permits task outcomes to be fired to existing workflow instances. All of these operations are implicitly performed from the point of view of the user, and the view exposes only those workflow objects which are accessible to the user.

A WorkflowView can be read-only, in which case any of the methods which normally modify workflow state throw runtime exceptions instead. This is useful when providing workflow views for arbitrary Personas, rather than individual users. For example, this type of view can be used to access workflow information which is available to all the users with a particular role, or in a particular organization. Because such a view does not represent an actual user effecting workflow state, it makes sense for it to provide read-only access.

It is also possible for a WorkflowView to be global, that is, not associated with any user. A global view performs no access control, thereby providing an unconstrained view of the workflow system.

See Also:
User, Persona

Field Summary
static java.lang.String CLASS_VERSION
           
static int OWNERSHIP_ANY
          Accept all tasks, regardless of ownership.
static int OWNERSHIP_SELF
          Accept only tasks owned by the user associated with this view.
static int OWNERSHIP_SELF_OR_UNOWNED
          Accept only tasks which are either unowned or owned by the user associated with this view.
static int OWNERSHIP_UNOWNED
          Accept only tasks which are unowned.
 
Method Summary
 boolean canClaimTask(TaskInfo pTaskInfo)
          Determines whether the given task is assignable and unowned, and whether the user associated with this view is permitted to claim the task.
 boolean canFireTaskOutcome(TaskInfo pTaskInfo)
          Determines whether the user associated with this view is permitted to fire outcomes against the given task.
 boolean canReleaseTask(TaskInfo pTaskInfo)
          Determines whether the given task is assignable and owned by the user associated with this view, and whether the user is permitted to release the task.
 boolean canSetTaskAccessControlList(TaskInfo pTaskInfo)
          Determines whether the user associated with this view is permitted to change the task's access control list.
 boolean canSetTaskOwner(TaskInfo pTaskInfo)
          Determines whether the given task is assignable, and whether the user associated with this view is permitted to change the ownership of the task.
 boolean canSetTaskPriority(TaskInfo pTaskInfo)
          Determines whether the user associated with this view is permitted to change the priority of the task.
 boolean canStartWorkflow(java.lang.String pProcessName, java.lang.String pSegmentName)
          Determines whether the user associated with this view is permitted to start the workflow with the given process and segment names.
 void claimTask(java.lang.String pProcessName, java.lang.String pSegmentName, java.lang.String pSubjectId, java.lang.String pTaskElementId)
          Sets the owner of a workflow instance's task to the DirectoryPrincipal associated with this view.
 void fireTaskOutcome(java.lang.String pProcessName, java.lang.String pSegmentName, java.lang.String pSubjectId, java.lang.String pOutcomeElementId, int pErrorResponse)
          Fires a particular outcome of some task for an existing workflow instance on behalf of this view's user.
 java.util.Collection getActiveTasks(java.lang.String pSubjectId, TaskQueryOptions pQueryOptions, AccessRight pAccessRight, int pOwnership)
          Returns TaskInfos for all the active tasks associated with the given workflow subject, that can be acted upon by the view.
 java.util.Collection getActiveTasks(TaskQueryOptions pQueryOptions, AccessRight pAccessRight, int pOwnership)
          Returns TaskInfos for all the active tasks associated with all workflow subjects, that can be acted upon by the view.
 java.util.Collection getAllTasks(java.lang.String pSubjectId, TaskQueryOptions pQueryOptions, AccessRight pAccessRight, int pOwnership)
          Returns TaskInfos for all the tasks associated with the given workflow subject, that can be acted upon by the view, including inactive and completed tasks.
 DirectoryPrincipal getDirectoryPrincipal()
          Returns the DirectoryPrincipal corresponding to this view's user.
 boolean hasAccessToTask(TaskInfo pTaskInfo, AccessRight pAccessRight)
          Determines whether the user associated with this view has a particular access right to the given workflow task.
 boolean hasAccessToWorkflow(java.lang.String pProcessName, java.lang.String pSegmentName, AccessRight pAccessRight)
          Determines whether the user associated with this view has a particular access right to the given workflow.
 void releaseTask(java.lang.String pProcessName, java.lang.String pSegmentName, java.lang.String pSubjectId, java.lang.String pTaskElementId)
          Clears the ownership of a workflow instance's task by setting the owner to null.
 void setTaskAccessControlList(java.lang.String pProcessName, java.lang.String pSegmentName, java.lang.String pSubjectId, java.lang.String pTaskElementId, AccessControlList pAcl)
          Sets the given task's access control list for an existing workflow instance.
 void setTaskOwner(java.lang.String pProcessName, java.lang.String pSegmentName, java.lang.String pSubjectId, java.lang.String pTaskElementId, DirectoryPrincipal pOwner)
          Sets the owner of a workflow instance's task to the given DirectoryPrincipal, or to null if ownership of the task it to be cleared.
 void setTaskPriority(java.lang.String pProcessName, java.lang.String pSegmentName, java.lang.String pSubjectId, java.lang.String pTaskElementId, int pPriority)
          Sets the given task's priority for an existing workflow instance.
 void startWorkflow(java.lang.String pProcessName, java.lang.String pSegmentName, java.lang.String pSubjectId, int pErrorResponse)
          Starts a workflow instance for the given subject on behalf of this view's user.
 

Field Detail

CLASS_VERSION

static final java.lang.String CLASS_VERSION
See Also:
Constant Field Values

OWNERSHIP_ANY

static final int OWNERSHIP_ANY
Accept all tasks, regardless of ownership.

See Also:
Constant Field Values

OWNERSHIP_SELF

static final int OWNERSHIP_SELF
Accept only tasks owned by the user associated with this view. For a global view, this yields no results.

See Also:
Constant Field Values

OWNERSHIP_UNOWNED

static final int OWNERSHIP_UNOWNED
Accept only tasks which are unowned.

See Also:
Constant Field Values

OWNERSHIP_SELF_OR_UNOWNED

static final int OWNERSHIP_SELF_OR_UNOWNED
Accept only tasks which are either unowned or owned by the user associated with this view. For a global view, this yields the same results as OWNERSHIP_UNOWNED.

See Also:
Constant Field Values
Method Detail

getAllTasks

java.util.Collection getAllTasks(java.lang.String pSubjectId,
                                 TaskQueryOptions pQueryOptions,
                                 AccessRight pAccessRight,
                                 int pOwnership)
                                 throws WorkflowException
Returns TaskInfos for all the tasks associated with the given workflow subject, that can be acted upon by the view, including inactive and completed tasks. The pQueryOptions argument, if not null, specifies additional restrictions to be placed on the tasks, as well as optional sorting criteria.

The pAccessRight argument specifies the access right which should be consulted to determine the tasks' accessibility; for example, TaskAccessRights.EXECUTE will yield only those tasks which can be executed/claimed/released by this view. For a global view, all active tasks are returned, and this argument has no effect.

Parameters:
pSubjectId - the repository id of the workflow subject for which all tasks should be returned
pQueryOptions - a TaskQueryOptions object containing any additional filtering or sorting criteria; if null, all accessible tasks for the given subject will be returned
pAccessRight - one of the access rights in TaskAccessRights
pOwnership - specifies whether/how tasks are further filtered by ownership; one of OWNERSHIP_ANY, OWNERSHIP_SELF, OWNERSHIP_UNOWNED, or OWNERSHIP_SELF_OR_UNOWNED
Returns:
a Collection of TaskInfo objects
Throws:
WorkflowException - if the task information cannot be obtained
See Also:
TaskAccessRights, TaskInfo

getActiveTasks

java.util.Collection getActiveTasks(TaskQueryOptions pQueryOptions,
                                    AccessRight pAccessRight,
                                    int pOwnership)
                                    throws WorkflowException
Returns TaskInfos for all the active tasks associated with all workflow subjects, that can be acted upon by the view. The pQueryOptions argument, if not null, specifies additional restrictions to be placed on the tasks, as well as optional sorting criteria.

The pAccessRight argument specifies the access right which should be consulted to determine the tasks' accessibility; for example, TaskAccessRights.EXECUTE will yield only those tasks which can be executed/claimed/released by this view. For a global view, all active tasks are returned, and this argument has no effect.

Parameters:
pQueryOptions - a TaskQueryOptions object containing any additional filtering or sorting criteria; if null, all accessible active tasks will be returned
pAccessRight - one of the access rights in TaskAccessRights
pOwnership - specifies whether/how tasks are further filtered by ownership; one of OWNERSHIP_ANY, OWNERSHIP_SELF, OWNERSHIP_UNOWNED, or OWNERSHIP_SELF_OR_UNOWNED
Returns:
a Collection of TaskInfo objects
Throws:
WorkflowException - if the task information cannot be obtained
See Also:
TaskAccessRights, TaskInfo

getActiveTasks

java.util.Collection getActiveTasks(java.lang.String pSubjectId,
                                    TaskQueryOptions pQueryOptions,
                                    AccessRight pAccessRight,
                                    int pOwnership)
                                    throws WorkflowException
Returns TaskInfos for all the active tasks associated with the given workflow subject, that can be acted upon by the view. The pQueryOptions argument, if not null, specifies additional restrictions to be placed on the tasks, as well as optional sorting criteria.

The pAccessRight argument specifies the access right which should be consulted to determine the tasks' accessibility; for example, TaskAccessRights.EXECUTE will yield only those tasks which can be executed/claimed/released by this view. For a global view, all active tasks are returned, and this argument has no effect.

Parameters:
pSubjectId - the repository id of the workflow subject for which active tasks should be returned
pQueryOptions - a TaskQueryOptions object containing any additional filtering or sorting criteria; if null, all accessible active tasks for the given subject will be returned
pAccessRight - one of the access rights in TaskAccessRights
pOwnership - specifies whether/how tasks are further filtered by ownership; one of OWNERSHIP_ANY, OWNERSHIP_SELF, OWNERSHIP_UNOWNED, or OWNERSHIP_SELF_OR_UNOWNED
Returns:
a Collection of TaskInfo objects
Throws:
WorkflowException - if the task information cannot be obtained
See Also:
TaskAccessRights, TaskInfo

startWorkflow

void startWorkflow(java.lang.String pProcessName,
                   java.lang.String pSegmentName,
                   java.lang.String pSubjectId,
                   int pErrorResponse)
                   throws MissingWorkflowDescriptionException,
                          ActorAccessException,
                          ActionException,
                          java.lang.UnsupportedOperationException
Starts a workflow instance for the given subject on behalf of this view's user. The user must have the access rights to start the workflow. No access control is performed for a global view. This operation is not supported for a read-only view.

The pErrorResponse argument refers to one of the constants in atg.process.action.ActionConstants, and specifies the error handling disposition to be used in case an ActionException occurs in the course of creating the workflow instance. If ERROR_RESPONSE_DEFAULT is specified, the default error response configured for the action will be used. Otherwise, the action's default response will be overriden with the value specified.

Parameters:
pProcessName - the name of the workflow process
pSegmentName - the name of the workflow process segment
pSubjectId - the repository id of the workflow subject for which the workflow instance should be created
pErrorResponse - the error handling disposition to be used for any ActionExceptions thrown while creating the workflow instance
Throws:
MissingWorkflowDescriptionException - if the workflow information cannot be found
ActorAccessException - if the view's user does not have access rights to start this workflow
ActionException - if an error occurs while executing a process action
java.lang.UnsupportedOperationException - if this method is called for a read-only view
See Also:
WorkflowConstants.DEFAULT_WORKFLOW_SEGMENT, ActionConstants

canStartWorkflow

boolean canStartWorkflow(java.lang.String pProcessName,
                         java.lang.String pSegmentName)
                         throws MissingWorkflowDescriptionException
Determines whether the user associated with this view is permitted to start the workflow with the given process and segment names. Specifically, the user must have the WorkflowAccessRights.EXECUTE access right for the workflow. Always returns true for a global view.

Parameters:
pProcessName - the name of the workflow process
pSegmentName - the name of the workflow process segment
Returns:
true if the view's user is permitted to start the given workflow, false otherwise
Throws:
MissingWorkflowDescriptionException - if the workflow information cannot be found
See Also:
WorkflowConstants.DEFAULT_WORKFLOW_SEGMENT, WorkflowAccessRights.EXECUTE

setTaskAccessControlList

void setTaskAccessControlList(java.lang.String pProcessName,
                              java.lang.String pSegmentName,
                              java.lang.String pSubjectId,
                              java.lang.String pTaskElementId,
                              AccessControlList pAcl)
                              throws MissingWorkflowDescriptionException,
                                     ActorAccessException,
                                     java.lang.UnsupportedOperationException
Sets the given task's access control list for an existing workflow instance. The user must have the access rights to change the task's ACL. No access control is performed for a global view. This operation is not supported for a read-only view.

Note: The access control list assigned to a task at runtime must be a subset of the access control list specified in the task's TaskDescriptor: that is, everybody who is allowed access by the runtime ACL must have also been allowed access by the TaskDescriptor's ACL. This restriction is not enforced by the API, and may be relaxed in the future. However, the implementation currently relies on it, and will behave incorrectly if this rule is not observed. For example, tasks returned by the getActiveTasks methods will not include those tasks which are accessible via the runtime ACL, unless they are also accessible via the TaskDescriptor's ACL.

Parameters:
pProcessName - the name of the workflow process
pSegmentName - the name of the workflow process segment
pSubjectId - the repository id of the workflow subject whose workflow instance is to be affected
pTaskElementId - process element id of the task element, as it appears in the workflow definition file
pAcl - access control list to assign
Throws:
MissingWorkflowDescriptionException - if the workflow information cannot be found
ActorAccessException - if the view's user does not have access rights to change the ACL of the task
java.lang.UnsupportedOperationException - if this method is called for a read-only view
See Also:
WorkflowConstants.DEFAULT_WORKFLOW_SEGMENT

canSetTaskAccessControlList

boolean canSetTaskAccessControlList(TaskInfo pTaskInfo)
                                    throws MissingWorkflowDescriptionException
Determines whether the user associated with this view is permitted to change the task's access control list. Specifically, the user must have the TaskAccessRights.WRITE access right for the task. Always returns true for a global view.

Parameters:
pTaskInfo - a TaskInfo describing some workflow task
Returns:
true if the view's user is permitted to change the task's access control list, false otherwise
Throws:
MissingWorkflowDescriptionException - if the workflow information cannot be found
See Also:
TaskAccessRights.WRITE

setTaskPriority

void setTaskPriority(java.lang.String pProcessName,
                     java.lang.String pSegmentName,
                     java.lang.String pSubjectId,
                     java.lang.String pTaskElementId,
                     int pPriority)
                     throws MissingWorkflowDescriptionException,
                            ActorAccessException,
                            java.lang.UnsupportedOperationException
Sets the given task's priority for an existing workflow instance. The user must have the access rights to change the priority of the task. No access control is performed for a global view. This operation is not supported for a read-only view.

Parameters:
pProcessName - the name of the workflow process
pSegmentName - the name of the workflow process segment
pSubjectId - the repository id of the workflow subject whose workflow instance is to be affected
pTaskElementId - process element id of the task element, as it appears in the workflow definition file
pPriority - priority value to assign
Throws:
MissingWorkflowDescriptionException - if the workflow information cannot be found
ActorAccessException - if the view's user does not have access rights to change the priority of the task
java.lang.UnsupportedOperationException - if this method is called for a read-only view
See Also:
WorkflowConstants.DEFAULT_WORKFLOW_SEGMENT

canSetTaskPriority

boolean canSetTaskPriority(TaskInfo pTaskInfo)
                           throws MissingWorkflowDescriptionException
Determines whether the user associated with this view is permitted to change the priority of the task. Specifically, the user must have the TaskAccessRights.WRITE access right for the task. Always returns true for a global view.

Parameters:
pTaskInfo - a TaskInfo describing some workflow task
Returns:
true if the view's user is permitted to change the task's priority, false otherwise
Throws:
MissingWorkflowDescriptionException - if the workflow information cannot be found
See Also:
TaskAccessRights.WRITE

setTaskOwner

void setTaskOwner(java.lang.String pProcessName,
                  java.lang.String pSegmentName,
                  java.lang.String pSubjectId,
                  java.lang.String pTaskElementId,
                  DirectoryPrincipal pOwner)
                  throws MissingWorkflowDescriptionException,
                         ActorAccessException,
                         java.lang.UnsupportedOperationException
Sets the owner of a workflow instance's task to the given DirectoryPrincipal, or to null if ownership of the task it to be cleared. The task must be assignable, and the user must have the access rights to change the ownership of the task. No access control is performed for a global view. This operation is not supported for a read-only view.

Parameters:
pProcessName - the name of the workflow process
pSegmentName - the name of the workflow process segment
pSubjectId - the repository id of the workflow subject whose workflow instance is to be affected
pTaskElementId - process element id of the task element, as it appears in the workflow definition file
pOwner - a DirectoryPrincipal that is to be assigned ownership of this task, or null if ownership of the task is to be cleared
Throws:
MissingWorkflowDescriptionException - if the workflow information cannot be found
ActorAccessException - if the task is not assignable, or if the view's user does not have access rights to change the owner of the task
java.lang.UnsupportedOperationException - if this method is called for a read-only view
See Also:
WorkflowConstants.DEFAULT_WORKFLOW_SEGMENT

canSetTaskOwner

boolean canSetTaskOwner(TaskInfo pTaskInfo)
                        throws MissingWorkflowDescriptionException
Determines whether the given task is assignable, and whether the user associated with this view is permitted to change the ownership of the task. Specifically, the user must have the TaskAccessRights.WRITE access right for the task. For a global view, only the task's assignability is checked.

Parameters:
pTaskInfo - a TaskInfo describing some workflow task
Returns:
true if the view's user is permitted to change the task's ownership, false otherwise
Throws:
MissingWorkflowDescriptionException - if the workflow information cannot be found
See Also:
TaskAccessRights.WRITE

claimTask

void claimTask(java.lang.String pProcessName,
               java.lang.String pSegmentName,
               java.lang.String pSubjectId,
               java.lang.String pTaskElementId)
               throws MissingWorkflowDescriptionException,
                      ActorAccessException,
                      java.lang.UnsupportedOperationException
Sets the owner of a workflow instance's task to the DirectoryPrincipal associated with this view. The task must be assignable and unowned, and the user must have the access rights to claim the task. This operation is not supported for a global view, or for a read-only view.

Parameters:
pProcessName - the name of the workflow process
pSegmentName - the name of the workflow process segment
pSubjectId - the repository id of the workflow subject whose workflow instance is to be affected
pTaskElementId - process element id of the task element, as it appears in the workflow definition file
Throws:
MissingWorkflowDescriptionException - if the workflow information cannot be found
ActorAccessException - if the view's user does not have access rights to claim the task
java.lang.UnsupportedOperationException - if this method is called for a global view, or a read-only view
See Also:
WorkflowConstants.DEFAULT_WORKFLOW_SEGMENT

canClaimTask

boolean canClaimTask(TaskInfo pTaskInfo)
                     throws MissingWorkflowDescriptionException
Determines whether the given task is assignable and unowned, and whether the user associated with this view is permitted to claim the task. Specifically, the user must have the TaskAccessRights.EXECUTE access right for the task. Always returns false for a global view.

Parameters:
pTaskInfo - a TaskInfo describing some workflow task
Returns:
true if the view's user is permitted to claim the task, false otherwise
Throws:
MissingWorkflowDescriptionException - if the workflow information cannot be found
See Also:
TaskAccessRights.EXECUTE

releaseTask

void releaseTask(java.lang.String pProcessName,
                 java.lang.String pSegmentName,
                 java.lang.String pSubjectId,
                 java.lang.String pTaskElementId)
                 throws MissingWorkflowDescriptionException,
                        ActorAccessException,
                        java.lang.UnsupportedOperationException
Clears the ownership of a workflow instance's task by setting the owner to null. The task must be assignable and owned by the user associated with this view, and the user must have the access rights to release the task. This operation is not supported for a global view, or for a read-only view.

Parameters:
pProcessName - the name of the workflow process
pSegmentName - the name of the workflow process segment
pSubjectId - the repository id of the workflow subject whose workflow instance is to be affected
pTaskElementId - process element id of the task element, as it appears in the workflow definition file
Throws:
MissingWorkflowDescriptionException - if the workflow information cannot be found
ActorAccessException - if the view's user does not have access rights to release the task
java.lang.UnsupportedOperationException - if this method is called for a global view, or a read-only view
See Also:
WorkflowConstants.DEFAULT_WORKFLOW_SEGMENT

canReleaseTask

boolean canReleaseTask(TaskInfo pTaskInfo)
                       throws MissingWorkflowDescriptionException
Determines whether the given task is assignable and owned by the user associated with this view, and whether the user is permitted to release the task. Specifically, the user must have the TaskAccessRights.EXECUTE access right for the task. Always returns false for a global view.

Parameters:
pTaskInfo - a TaskInfo describing some workflow task
Returns:
true if the view's user is permitted to release the task, false otherwise
Throws:
MissingWorkflowDescriptionException - if the workflow information cannot be found
See Also:
TaskAccessRights.EXECUTE

fireTaskOutcome

void fireTaskOutcome(java.lang.String pProcessName,
                     java.lang.String pSegmentName,
                     java.lang.String pSubjectId,
                     java.lang.String pOutcomeElementId,
                     int pErrorResponse)
                     throws MissingWorkflowDescriptionException,
                            ActorAccessException,
                            ActionException,
                            java.lang.UnsupportedOperationException
Fires a particular outcome of some task for an existing workflow instance on behalf of this view's user. The user must have the access rights to execute the task, and if the task is owned, the DirectoryPrincipal associated with this view must be the task's owner. No access control is performed for a global view. This operation is not supported for a read-only view.

The pErrorResponse argument refers to one of the constants in atg.process.action.ActionConstants, and specifies the error handling disposition to be used in case an ActionException occurs in the course of firing the outcome. If ERROR_RESPONSE_DEFAULT is specified, the default error response configured for the action will be used. Otherwise, the action's default response will be overriden with the value specified.

Parameters:
pProcessName - the name of the workflow process
pSegmentName - the name of the workflow process segment
pSubjectId - the repository id of the workflow subject for whose workflow instance the outcome should be fired
pOutcomeElementId - process element id of the outcome to be fired, as it appears in the workflow definition file
pErrorResponse - the error handling disposition to be used for any ActionExceptions thrown while taking the outcome
Throws:
MissingWorkflowDescriptionException - if the workflow information cannot be found
ActorAccessException - if the view's user does not have access or ownership rights for this task
ActionException - if an error occurs while executing a process action
java.lang.UnsupportedOperationException - if this method is called for a read-only view
See Also:
WorkflowConstants.DEFAULT_WORKFLOW_SEGMENT, ActionConstants

canFireTaskOutcome

boolean canFireTaskOutcome(TaskInfo pTaskInfo)
                           throws MissingWorkflowDescriptionException
Determines whether the user associated with this view is permitted to fire outcomes against the given task. Specifically, the user must have the TaskAccessRights.EXECUTE access right for the task, and if the task is owned, the DirectoryPrincipal associated with this view must be the task's owner. For a global view, no access control is performed, and the task must be unowned.

Parameters:
pTaskInfo - a TaskInfo describing some workflow task
Returns:
true if the view's user is permitted to fire outcomes against the given task, false otherwise
Throws:
MissingWorkflowDescriptionException - if the workflow information cannot be found
See Also:
TaskAccessRights.EXECUTE

hasAccessToWorkflow

boolean hasAccessToWorkflow(java.lang.String pProcessName,
                            java.lang.String pSegmentName,
                            AccessRight pAccessRight)
                            throws MissingWorkflowDescriptionException
Determines whether the user associated with this view has a particular access right to the given workflow. Always returns true for a global view.

Parameters:
pProcessName - the name of the workflow process
pSegmentName - the name of the workflow process segment
pAccessRight - one of the access rights in WorkflowAccessRights
Returns:
true if the view's user has access, false otherwise
Throws:
MissingWorkflowDescriptionException - if the workflow information cannot be found
See Also:
WorkflowConstants.DEFAULT_WORKFLOW_SEGMENT, WorkflowAccessRights

hasAccessToTask

boolean hasAccessToTask(TaskInfo pTaskInfo,
                        AccessRight pAccessRight)
                        throws MissingWorkflowDescriptionException
Determines whether the user associated with this view has a particular access right to the given workflow task. Always returns true for a global view.

Parameters:
pTaskInfo - a TaskInfo describing some workflow task
pAccessRight - one of the access rights in TaskAccessRights
Returns:
true if the view's user has access, false otherwise
Throws:
MissingWorkflowDescriptionException - if the workflow information cannot be found
See Also:
TaskAccessRights

getDirectoryPrincipal

DirectoryPrincipal getDirectoryPrincipal()
Returns the DirectoryPrincipal corresponding to this view's user. Returns null for a global view.

Returns:
a DirectoryPrincipal object corresponding to the view's User or Persona, or null if the view is global