com.ibm.workplace.wcm.api
Interface WorkflowStage

All Superinterfaces:
Document, Editable, EditableItem, Item, Localized, WCMApiObject

public interface WorkflowStage
extends Editable

Represents a workflow stage.

A WorkflowStage consists of WorkflowActions in a specific order. Workflowing controls access to and manages the progression of WCM objects through specified WorkflowStages.


Nested Class Summary
static class WorkflowStage.ACTION_GROUP
          The list of possible workflow action groups
 
Method Summary
 void addActions(WorkflowStage.ACTION_GROUP actionGroup, DocumentId... workflowActionIds)
          Adds WorkflowActions to the end of the actions for this WorkflowStage
 void addActions(WorkflowStage.ACTION_GROUP actionGroup, java.util.List<DocumentId> workflowActionIds)
          Adds WorkflowActions to the end of the actions for this WorkflowStage
 void addJointApprovers(java.lang.String... members)
          Add members as joint approvers.
 void addMembersForWorkflowDefinedAccess(Access access, java.util.Collection<java.lang.String> members)
          Adds the specified members to the specified access level for this WorkflowStage
 void addMembersForWorkflowDefinedAccess(Access access, java.lang.String... members)
          Adds the specified members to the specified access level for this WorkflowStage
 void clearActions(WorkflowStage.ACTION_GROUP actionGroup)
          Removes all WorkflowActions of the specified type from this WorkflowStage
 void clearJointApprovers()
          Remove all members from the set of joint approvers.
 void clearMembersForWorkflowDefinedAccess(Access access)
          Removes all members of the specified access level for this WorkflowStage
 int getActionCount(WorkflowStage.ACTION_GROUP actionGroup)
          Returns the number of actions for the specified ACTION_GROUP in this WorkflowStage.
 DocumentIdIterator getActions(WorkflowStage.ACTION_GROUP actionGroup)
          Returns an iterator of DocumentId objects of the WorkflowActions for the given ACTION_GROUP in this WorkflowStage.
 java.lang.String[] getJointApprovers()
          Get the joint approvers currently defined.
 java.lang.String[] getMembersForWorkflowDefinedAccess(Access access)
          Get the members who have been selected for the specified access level for this WorkflowStage.
 boolean isCommentOnApprovalEnabled()
          Indicates if this WorkflowStage has commenting enabled on approval
 boolean isInheritanceEnabledForWorkflowDefinedAccess(Access access)
          Checks if the Access permissions are set to be inherited for items that enter this stage during their workflow cycle.
 boolean isJointApprovalEnabled()
          Indicates if this WorkflowStage is using Joint Approval
 boolean isPreviousStageEnabled()
          Indicates if the moving to previous stage is enabled (for non-managers) for this WorkflowStage.
 boolean isPropagationEnabledForWorkflowDefinedAccess(Access access)
          Checks if the Access permissions are set to be propagated for items that enter this stage during their workflow cycle.
 void removeActions(WorkflowStage.ACTION_GROUP actionGroup, DocumentId... workflowActionIds)
          Removes WorkflowActions from this WorkflowStage
 void removeActions(WorkflowStage.ACTION_GROUP actionGroup, java.util.List<DocumentId> workflowActionIds)
          Removes WorkflowActions from this WorkflowStage
 void removeJointApprovers(java.lang.String... members)
          Remove members from the set of joint approvers.
 void removeMembersForWorkflowDefinedAccess(Access access, java.util.Collection<java.lang.String> members)
          Removes the specified members to the specified access level for this WorkflowStage
 void removeMembersForWorkflowDefinedAccess(Access access, java.lang.String... members)
          Removes the specified members to the specified access level for this WorkflowStage
 void setCommentOnApprovalEnabled(boolean enableCommentOnApproval)
          Specifies whether this WorkflowStage should require comments on approval
 void setInheritanceEnabledForWorkflowDefinedAccess(Access access, boolean isInherited)
          Specifies if the Access permissions are set to be inherited for items that enter this stage during their workflow cycle.
 void setJointApprovalEnabled(boolean jointApprovalEnabled)
          Specifies whether this WorkflowStage should use Joint Approval
 void setPreviousStageEnabled(boolean enableMovingPreviousStage)
          Specifies whether Document's in this WorkflowStage should be allowed to be moved back to the previous stage
 void setPropagationEnabledForWorkflowDefinedAccess(Access access, boolean isPropagated)
          Specifies if the Access permissions are set to be propagated for items that enter this stage during their workflow cycle.
 
Methods inherited from interface com.ibm.workplace.wcm.api.Editable
addAuthors, addCategoryIds, addContributorAccessMembers, addDeleteAccessMembers, addEditAccessMembers, addEditorAccessMembers, addHistoryLogEntry, addLiveAccessMembers, addManagerAccessMembers, addMembersForAccess, addOwners, addReadAccessMembers, addUserAccessMembers, isChanged, removeAuthors, removeCategoryIds, removeContributorAccessMembers, removeDeleteAccessMembers, removeEditAccessMembers, removeEditorAccessMembers, removeLiveAccessMembers, removeManagerAccessMembers, removeMembersForAccess, removeOwners, removeReadAccessMembers, removeUserAccessMembers, setContributorAccessInheritance, setDescriptionTextProviderKey, setDescriptionTextProviderName, setEditorAccessInheritance, setInheritance, setKeywords, setManagerAccessInheritance, setPropagation, setTitleTextProviderKey, setTitleTextProviderName, setUserAccessInheritance
 
Methods inherited from interface com.ibm.workplace.wcm.api.Document
getAuthors, getCategoryIds, getContributorAccessMembers, getCreator, getDeleteAccessMembers, getDescription, getDescriptionTextProviderKey, getDescriptionTextProviderName, getEditAccessMembers, getEditorAccessMembers, getHistoryLog, getId, getInheritedContributorAccessMembers, getInheritedEditorAccessMembers, getInheritedManagerAccessMembers, getInheritedUserAccessMembers, getKeywords, getLastModifier, getLiveAccessMembers, getManagerAccessMembers, getMembersForAccess, getMembersForInheritedAccess, getOwnerLibrary, getOwners, getProject, getReadAccessMembers, getSourceWorkspace, getTitle, getTitleTextProviderKey, getTitleTextProviderName, getUserAccessMembers, getVersionCatalog, getVersionStrategy, hasDeleteAccess, hasDeleteAccess, hasEditAccess, hasEditAccess, hasLiveAccess, hasLiveAccess, hasProfile, hasProject, hasReadAccess, hasReadAccess, isContributorAccessInherited, isEditorAccessInherited, isInherited, isManagerAccessInherited, isNew, isPropagated, isUserAccessInherited, isWorkflowed
 
Methods inherited from interface com.ibm.workplace.wcm.api.Item
getCreationDate, getDescription, getIdentity, getModifiedDate, getName, getTitle
 
Methods inherited from interface com.ibm.portal.Localized
getLocales
 
Methods inherited from interface com.ibm.workplace.wcm.api.EditableItem
setDescription, setName, setTitle
 

Method Detail

getActionCount

int getActionCount(WorkflowStage.ACTION_GROUP actionGroup)
Returns the number of actions for the specified ACTION_GROUP in this WorkflowStage.

Parameters:
actionGroup - The ACTION_GROUP to query
Returns:
the number of actions for the specified ACTION_GROUP in this WorkflowStage.

getActions

DocumentIdIterator getActions(WorkflowStage.ACTION_GROUP actionGroup)
Returns an iterator of DocumentId objects of the WorkflowActions for the given ACTION_GROUP in this WorkflowStage.

Returns an empty iterator if no workflow actions have been specified for the given ACTION_GROUP.

Parameters:
actionGroup - The ACTION_GROUP to query
Returns:
an iterator of DocumentId objects of the WorkflowActions for the given ACTION_GROUP in this WorkflowStage.

addActions

void addActions(WorkflowStage.ACTION_GROUP actionGroup,
                DocumentId... workflowActionIds)
                throws com.ibm.workplace.wcm.api.exceptions.IllegalDocumentTypeException
Adds WorkflowActions to the end of the actions for this WorkflowStage

Parameters:
actionGroup - The type of action to add
workflowActionIds - The DocumentId's of the WorkflowActions to add
Throws:
com.ibm.workplace.wcm.api.exceptions.IllegalDocumentTypeException - if any of the supplied DocumentId's are not a WorkflowStage

addActions

void addActions(WorkflowStage.ACTION_GROUP actionGroup,
                java.util.List<DocumentId> workflowActionIds)
                throws com.ibm.workplace.wcm.api.exceptions.IllegalDocumentTypeException
Adds WorkflowActions to the end of the actions for this WorkflowStage

Parameters:
actionGroup - The type of action to add
workflowActionIds - The DocumentId's of the WorkflowActions to add
Throws:
com.ibm.workplace.wcm.api.exceptions.IllegalDocumentTypeException - if any of the supplied DocumentId's are not a WorkflowStage

removeActions

void removeActions(WorkflowStage.ACTION_GROUP actionGroup,
                   DocumentId... workflowActionIds)
                   throws com.ibm.workplace.wcm.api.exceptions.IllegalDocumentTypeException
Removes WorkflowActions from this WorkflowStage

Parameters:
actionGroup - The type of action to remove
workflowActionIds - The DocumentId's of the WorkflowActions to remove
Throws:
com.ibm.workplace.wcm.api.exceptions.IllegalDocumentTypeException - if any of the supplied DocumentId's are not a WorkflowStage

removeActions

void removeActions(WorkflowStage.ACTION_GROUP actionGroup,
                   java.util.List<DocumentId> workflowActionIds)
                   throws com.ibm.workplace.wcm.api.exceptions.IllegalDocumentTypeException
Removes WorkflowActions from this WorkflowStage

Parameters:
actionGroup - The type of action to remove
workflowActionIds - The DocumentId's of the WorkflowActions to remove
Throws:
com.ibm.workplace.wcm.api.exceptions.IllegalDocumentTypeException - if any of the supplied DocumentId's are not a WorkflowStage

clearActions

void clearActions(WorkflowStage.ACTION_GROUP actionGroup)
Removes all WorkflowActions of the specified type from this WorkflowStage

Parameters:
actionGroup - The type of action to remove

isJointApprovalEnabled

boolean isJointApprovalEnabled()
Indicates if this WorkflowStage is using Joint Approval

Returns:
true if this WorkflowStage is using Joint Approval, false otherwise

setJointApprovalEnabled

void setJointApprovalEnabled(boolean jointApprovalEnabled)
Specifies whether this WorkflowStage should use Joint Approval

Parameters:
jointApprovalEnabled - true if Joint Approval is requested, false otherwise

addJointApprovers

void addJointApprovers(java.lang.String... members)
Add members as joint approvers.

Note that adding a joint approver does not give approve access. The user must inherit approver access, or have it explicitly assigned.

Parameters:
members - the members to add as joint approvers
Since:
8.5

removeJointApprovers

void removeJointApprovers(java.lang.String... members)
Remove members from the set of joint approvers.

Parameters:
members -
Since:
8.5

clearJointApprovers

void clearJointApprovers()
Remove all members from the set of joint approvers.

Since:
8.5

getJointApprovers

java.lang.String[] getJointApprovers()
Get the joint approvers currently defined.

Returns:
the current joint approvers
Since:
8.5

isCommentOnApprovalEnabled

boolean isCommentOnApprovalEnabled()
Indicates if this WorkflowStage has commenting enabled on approval

Returns:
true if this WorkflowStage has commenting enabled on approval, false otherwise

setCommentOnApprovalEnabled

void setCommentOnApprovalEnabled(boolean enableCommentOnApproval)
Specifies whether this WorkflowStage should require comments on approval

Parameters:
enableCommentOnApproval - true if comments should be enabled false otherwise

isPreviousStageEnabled

boolean isPreviousStageEnabled()
Indicates if the moving to previous stage is enabled (for non-managers) for this WorkflowStage.

Returns:
true if moving to previous stage is enabled for this WorkflowStage false otherwise.

setPreviousStageEnabled

void setPreviousStageEnabled(boolean enableMovingPreviousStage)
Specifies whether Document's in this WorkflowStage should be allowed to be moved back to the previous stage

Parameters:
enableMovingPreviousStage - true to enable moving to the previous stage, false otherwise

getMembersForWorkflowDefinedAccess

java.lang.String[] getMembersForWorkflowDefinedAccess(Access access)
Get the members who have been selected for the specified access level for this WorkflowStage. These members will be set on items as they enter this stage during their Workflow cycle. The strings are either the users' common name or distinguished name, depending on the setting on the Workspace. See Workspace.isDistinguishedNamesUsed().

The resultant array may contain the names of users and groups.

Returns an empty array if no user is explicitly granted the specified access on this WorkflowStage object.

Parameters:
access - the access to query the members for.
Returns:
a string array of members that have the specified access explicitly granted on this WorkflowStage object.
Since:
8.0.0.1

addMembersForWorkflowDefinedAccess

void addMembersForWorkflowDefinedAccess(Access access,
                                        java.lang.String... members)
Adds the specified members to the specified access level for this WorkflowStage

The strings should be either the users' common name or distinguished name, depending on the setting on the Workspace. See Workspace.isDistinguishedNamesUsed().

Parameters:
access - the accesss to add the members to
members - the members to add

addMembersForWorkflowDefinedAccess

void addMembersForWorkflowDefinedAccess(Access access,
                                        java.util.Collection<java.lang.String> members)
Adds the specified members to the specified access level for this WorkflowStage

The strings should be either the users' common name or distinguished name, depending on the setting on the Workspace. See Workspace.isDistinguishedNamesUsed().

Parameters:
access - the accesss to add the members to
members - the members to add

removeMembersForWorkflowDefinedAccess

void removeMembersForWorkflowDefinedAccess(Access access,
                                           java.lang.String... members)
Removes the specified members to the specified access level for this WorkflowStage

The strings should be either the users' common name or distinguished name, depending on the setting on the Workspace. See Workspace.isDistinguishedNamesUsed().

Parameters:
access - the accesss to remove the members from
members - the members to remove

removeMembersForWorkflowDefinedAccess

void removeMembersForWorkflowDefinedAccess(Access access,
                                           java.util.Collection<java.lang.String> members)
Removes the specified members to the specified access level for this WorkflowStage

The strings should be either the users' common name or distinguished name, depending on the setting on the Workspace. See Workspace.isDistinguishedNamesUsed().

Parameters:
access - the accesss to remove the members from
members - the members to remove

clearMembersForWorkflowDefinedAccess

void clearMembersForWorkflowDefinedAccess(Access access)
Removes all members of the specified access level for this WorkflowStage

Parameters:
access - the accesss to remove the members from

isInheritanceEnabledForWorkflowDefinedAccess

boolean isInheritanceEnabledForWorkflowDefinedAccess(Access access)
Checks if the Access permissions are set to be inherited for items that enter this stage during their workflow cycle.

Parameters:
access - the access to query the inheritance for.
Returns:
true if access level will be inherited, false if not
Since:
8.0.0.1

isPropagationEnabledForWorkflowDefinedAccess

boolean isPropagationEnabledForWorkflowDefinedAccess(Access access)
Checks if the Access permissions are set to be propagated for items that enter this stage during their workflow cycle.

Parameters:
access - the access level to query propagation for.
Returns:
true if the access level will be propagated false if it will not
Since:
8.5

setInheritanceEnabledForWorkflowDefinedAccess

void setInheritanceEnabledForWorkflowDefinedAccess(Access access,
                                                   boolean isInherited)
Specifies if the Access permissions are set to be inherited for items that enter this stage during their workflow cycle.

Parameters:
access - the access to modify the inheritance for
isInherited - true to enable inheritance, false to disable it

setPropagationEnabledForWorkflowDefinedAccess

void setPropagationEnabledForWorkflowDefinedAccess(Access access,
                                                   boolean isPropagated)
Specifies if the Access permissions are set to be propagated for items that enter this stage during their workflow cycle.

Parameters:
access - the access level to modify the propagation for
isPropagated - true to enable propagation, false to disable.
Since:
8.5