Skip navigation links


oracle.iam.platform.workflowservice.api
Interface WorkflowService


public interface WorkflowService

This is the main interface for using the workflowservice. It has couple of uses 1. Manage the workflow definitions in OIM Operations include Create,delete and list definitions 2. Manage workflow instances in OIM Operations include initiate,cancel,query status of particular workflow instance The workflow categories are next level abstractions which define which category a given workflow falls under. e.g of categories are approval, attestation etc. The category is static metadata and is obtained using xml files defined under a particular feature.


Method Summary
 void cancel(java.lang.String id)
          Cancel a workflow instance.
 void close(java.lang.String identificationKey)
          close a workflow instance of the given id.
 boolean disableWorkflowDefinition(java.lang.String name)
          Disable a particular definition from OIM DB.
 void enableWorkFlowDefinition(java.lang.String workflowDefinition)
          Re-Register workflow definition which already exists in OIM DB and enable it if disabled.
 java.util.List getAllWorkflowDefinitions()
          Get the list of all registered workflow definitions.
 ApprovalTask[] getApprovalTasks(java.lang.String identificationKey, boolean onlyPending)
          Gets Approval Tasks from the underlying provider
 ApprovalTask[] getApprovalTasks(java.lang.String identificationKey, boolean onlyPending, boolean onlyAssigned)
          Gets Approval Tasks from the underlying provider
 java.lang.String getState(java.lang.String id)
          Gets the state a workflow instance.
 java.lang.String getStatus(java.lang.String id)
          Gets the status a workflow instance.
 java.util.Map getWFCategories()
          To get all the workflow categories for OIM
 WorkflowDefinition getWorkflowDefinition(java.lang.String name)
          Get the registered workflow definition with given name.
 java.util.List getWorkflowDefinitions(java.lang.String category)
          Get the list of all registered workflow definitions with given workflow category.
 java.util.List getWorkflowDefinitions(java.lang.String type, java.lang.String pattern)
          To get all workflow composites in specific category with a specific pattern
 java.lang.String initiate(java.lang.String name, java.lang.String inputXML)
          Initiate workflow with given name and payload.
 boolean isApprovalTaskAssigned(java.lang.String identificationKey, boolean onlyAssigned)
          Determine if logged-in user has any task assigned
 void registerWFDefinitionNoMapping(WorkflowDefinition workflowDefinition)
          Register workflow definition in OIM DB without creating any mapping (apps requirement).
 void registerWorkFlowDefinition(WorkflowDefinition workflowDefinition)
          Register workflow definition to OIM DB.
 void withdraw(java.lang.String identificationKey)
          Withdraw a workflow instance of the given id.

 

Method Detail

registerWorkFlowDefinition

void registerWorkFlowDefinition(WorkflowDefinition workflowDefinition)
                                throws IAMWorkflowException
Register workflow definition to OIM DB. This registers a given workflow process, and hence should be done before intiation of the process.
Parameters:
workflowDefinition -
Throws:
IAMWorkflowException

enableWorkFlowDefinition

void enableWorkFlowDefinition(java.lang.String workflowDefinition)
                              throws IAMWorkflowException
Re-Register workflow definition which already exists in OIM DB and enable it if disabled. This registers a given workflow process, and hence should be done before intiation of the process.
Parameters:
workflowDefinition -
Throws:
IAMWorkflowException

registerWFDefinitionNoMapping

void registerWFDefinitionNoMapping(WorkflowDefinition workflowDefinition)
                                   throws IAMWorkflowException
Register workflow definition in OIM DB without creating any mapping (apps requirement). This registers a given workflow process, and hence should be done before intiation of the process.
Parameters:
workflowDefinition -
Throws:
IAMWorkflowException

getWorkflowDefinitions

java.util.List getWorkflowDefinitions(java.lang.String category)
Get the list of all registered workflow definitions with given workflow category. For example, it gets the list of all registered definitions of "approval" Category
Parameters:
type - workflow type
Returns:
List of workflow definitions with the given type.

getWorkflowDefinition

WorkflowDefinition getWorkflowDefinition(java.lang.String name)
                                         throws IAMWorkflowException
Get the registered workflow definition with given name. Name is the actual name which identies the workflow, incase of bpel it is the process name e.g laptopApproval
Parameters:
name - workflow name
Returns:
workflow definition
Throws:
IAMWorkflowException

getAllWorkflowDefinitions

java.util.List getAllWorkflowDefinitions()
Get the list of all registered workflow definitions. ALl definitions of all categories is returned
Returns:
list of all registered workflow definitions

initiate

java.lang.String initiate(java.lang.String name,
                          java.lang.String inputXML)
                          throws IAMWorkflowException
Initiate workflow with given name and payload. The workflow service will call the callback class associated with the workflow definition once the workflow instance is completed, expired, withdrawn or errored
Parameters:
name - workflow definition name
payload - payload for the workflow instance
Returns:
Workflow instance of the workflow
Throws:
InstanceCreationException
IAMWorkflowException

cancel

void cancel(java.lang.String id)
            throws IAMWorkflowException
Cancel a workflow instance. The instanceID which uniquely identifies the workflow instance is the input parameter
Parameters:
id - workflow instance ID
Throws:
IAMWorkflowException

getState

java.lang.String getState(java.lang.String id)
                          throws IAMWorkflowException
Gets the state a workflow instance. The instanceID which uniquely identifies the workflow instance is the input parameter
Parameters:
id - workflow instance ID
Throws:
IAMWorkflowException

getStatus

java.lang.String getStatus(java.lang.String id)
                           throws IAMWorkflowException
Gets the status a workflow instance. The status is the business process level in which the process is For example, for BPEL it could be INPUTAPPROVAL etc
Parameters:
id - workflow instance ID
Throws:
IAMWorkflowException

disableWorkflowDefinition

boolean disableWorkflowDefinition(java.lang.String name)
                                  throws IAMWorkflowException
Disable a particular definition from OIM DB.
Parameters:
name - -- definition name
Throws:
IAMWorkflowException

getApprovalTasks

ApprovalTask[] getApprovalTasks(java.lang.String identificationKey,
                                boolean onlyPending)
                                throws IAMWorkflowException
Gets Approval Tasks from the underlying provider
Parameters:
identificationKey -
onlyPending - if set to true, API returns only pending Tasks (both rfi and assigned), if set to false API returns all Approval Tasks
Returns:
array of Approval Tasks
Throws:
IAMWorkflowException

getApprovalTasks

ApprovalTask[] getApprovalTasks(java.lang.String identificationKey,
                                boolean onlyPending,
                                boolean onlyAssigned)
                                throws IAMWorkflowException
Gets Approval Tasks from the underlying provider
Parameters:
identificationKey -
onlyPending - if set to true, API returns only pending Approval Tasks, if set to false API returns all Approval Tasks
onlyAssigned - if set to true, it returns only Assigned tasks
Returns:
array of Approval Tasks
Throws:
IAMWorkflowException

getWFCategories

java.util.Map getWFCategories()
To get all the workflow categories for OIM
Returns:
map with category name as key

getWorkflowDefinitions

java.util.List getWorkflowDefinitions(java.lang.String type,
                                      java.lang.String pattern)
                                      throws IAMWorkflowException
To get all workflow composites in specific category with a specific pattern
Parameters:
type -
pattern -
Throws:
IAMWorkflowException

isApprovalTaskAssigned

boolean isApprovalTaskAssigned(java.lang.String identificationKey,
                               boolean onlyAssigned)
                               throws IAMWorkflowException
Determine if logged-in user has any task assigned
Parameters:
identificationKey -
onlyAssigned - if set to true, it checks only Assigned tasks, else it checks for Assigned as well as Request for Information tasks
Returns:
array of Approval Tasks
Throws:
IAMWorkflowException

withdraw

void withdraw(java.lang.String identificationKey)
              throws IAMWorkflowException
Withdraw a workflow instance of the given id. The identificationKey which uniquely identifies the instance to be withdrawn.
Parameters:
id - identificationKey which uniquely identifies the instance to be withdrawn.
Throws:
IAMWorkflowException

close

void close(java.lang.String identificationKey)
           throws IAMWorkflowException
close a workflow instance of the given id. The identificationKey which uniquely identifies the instance to be close.
Parameters:
id - identificationKey which uniquely identifies the instance to be close.
Throws:
IAMWorkflowException

Skip navigation links


Copyright © 2010, Oracle and/or its affiliates. All rights reserved.