How workflows work

 
 
 
In CloudPortal™ Business Manager, the following types of business transactions initiate a workflow:
  • Tenant activation: This transaction is triggered when a new tenant is created.
  • Account type conversion: This transaction is triggered when a tenant requests conversion of his account type.
  • Subscription activation: This transaction is triggered when a new subscription is created by a tenant.
  • Payment information change transaction : This transaction is triggered when an account changes its payment information .

These transactions are triggered from CloudPortal™ Business Manager and may or may not initiate a workflow.

The rules or conditions to initiate a workflow depending on transaction details are defined in transactionWorkflowMap.xml.

Important properties in this file -
  • Type: This is an attribute to element "Match" and defines the type of business transaction on which the rule needs to be applied. Possible values are:
    • tenantStateChange Transaction
    • tenantAccountTypeConversion Transaction
    • subscriptionActivation Transaction
    • paymentInfoChange Transaction
  • Workflow: This is an attribute to element "Match" and it is the name of the workflow that will be initiated when the defined rule is matched for the transaction. All the workflows are defined in workflows.xml.
  • Rule: This is a sub-element under "Match" and defines the rule to be applied on the transaction.

If multiple rules are matched then first "Match" will be successful and workflow associated with this "Match" will be returned. If there is no matched workflow, then the transaction will be completed.

Workflow name returned from transactionWorkflowMap.xml is used to read the workflow definition from workflows.xml. This file has the complete definition for all the workflows, which include how many phases are there in a workflow, what all activities are there in each phase.

For example:
<Workflows>    <Workflow name="account-activation-retail">      <Bucket name="Phase-1" order="1">        <Activity name="account-activation-retail.verifyMasterUserEmailActivity" ref="verifyMasterUserEmailActivity" />      </Bucket>      <Bucket name="Phase-2" order="2">        <Activity name="account-activation-retail.collectCreditCardInfoActivity" ref="collectCreditCardInfoActivity" />        <Activity name="account-activation-retail.createOSSAccountActivity" ref="createOSSAccountActivity" />      </Bucket>        </Workflow>  </Workflows>  
Important properties in this file -
  • Workflow: This is an element which contains complete definition of a workflow.
  • Name : This is a reference to the workflow name referenced in transactionWorkflowMap.xml.
  • Phase : This is sub-element to "Workflow" element and contains a set of activities that need to be initiated in parallel.
  • Activity : This is sub-element to "Phase" element and has an attribute "ref" which refers to the bean, that need to be invoked for this activity. the bean reference of the activity is defined in applicationContextworkflow-customizations.xml.
Workflow definition fetched from “workflows.xml” are used to instantiate the workflow into the database. When a workflow is initiated then it is in NEW state. Different states of a workflow are given below and are defined based on the status of activities in the workflow:
  • New - Indicates that the workflow is yet to be initiated.
  • Running - Indicates that there are pending activities in this workflow.
  • Completed - Indicates that all the activities are successfully completed and the workflow was successful.
  • Failure - Indicates that the workflow is partially complete with an error message, as one or more activities in the workflow could not be completed due to business logic failure. A business logic failure could be rejection of associated task or has reached the threshold of number of retries etc.
  • Error - Indicates that the workflow is partially complete with an error message, as one or more activities in the workflow could not be completed due to some issue.
Note: If a workflow fails, you can restart the workflow. In that case, the workflow will reset the erroneous or failed activity.
Different states of an activity are given below:
  • New - Activity is yet to begin.
  • In-Progress - Activity is running.
  • Waiting - User input is required.
  • Success - Activity has been successfully completed.
  • Failure - Activity was declined or rejected.
  • Error - There has been some unexpected behavior or exception that needs to be fixed.
Workflows available in the CloudPortal Business Manager out of the box are as follows:
  • Trial account activation
    • Phase one - Identity verification
      • Verify master user email activity
    • Phase two – Accounts creation
      • OSS Accounts creation activity
  • Credit card account activation (For retail accounts)
    • Phase one - Identity verification
      • Verify Master User Email Activity
    • Phase two - Billing verification and account creation
      • Collect credit card information activity
      • OSS Accounts creation activity
  • Manual account creation
    • Phase one - Identity verification
      • Verify Master User Email Activity
    • Phase two - Approval and account creation
      • Finance admin approval activity
      • OSS Accounts creation activity
  • Account conversion to manual activation
    • Phase one
      • Finance admin approval activity
  • Account conversion to credit card payment
    • Phase one
      • Verify credit card information activity
  • Subscription activation with pre-authorization
    • Phase one
      • Pre authorize the subscription
  • Payment information change for manual activation account
    • Phase one
      • Finance admin approval activity

After the instantiation of a workflow, it is picked by workflow engine.

 
또 다른 질문이 있으십니까? 문의 등록

댓글

 
Adding comment, please wait....

Provide Feedback on Article:

Subject:
Comments:*