Flow

From GreenVulcano Wiki
Jump to: navigation, search

Definition

A Flow is a sequence of nodes performing operations on one or more participating systems, selected from those defined in the Systems section.

VulCon / GV Console Configuration

Flow element

For each couple Service-Operation a flow will be instantiated. This element defines a 'flow' to implement a GreenVulcano® ESB primitive communication with a workflow actually executable.

Using the sub-element Conditions can be (re)defined the conditions for possible use in the workflow routing.

It has the following attributes: The following table shows the Subflow element attributes:

Attribute Type Description
first-node required Indicates the initial node of the workflow.

From this node begins running when an instance of the workflow is invoked.

point-x optional X position of the start node in the VulCon workflows editor.

Immutable, used by VulCon®.

point-y optional Y position of the start node in the VulCon workflows editor.

Immutable, used by VulCon®.


Flow element might contain the following sub-elements:

How to

Flow attributes

The Flow element appears automatically when an Operation is created. For setting the attribute first-node it you must add your first node. It can be made from the Core view by right clicking the Flow element, Insert after (or Insert before), and selecting one of the available nodes.

It can be also done using the VulCon editor, by dragging the node into, and associating it to the Start node using the Default connection. Once the editor will be saved, Flow attributes will filled automatically.


The respective part of the configuration file GVCore.xml become:

<Service group-name="DEFAULT_GRP" id-service="TOUPPER#GVESB" service-activation="on" statistics="off">
    <Operation name="RequestReply" operation-activation="on" out-check-type="sys-svc-id" type="operation"
               class="it.greenvulcano.gvesb.core.flow.GVFlowWF">
        <Participant id-channel="TEST_CHANNEL" id-system="GVESB"/>
        <Flow first-node="test" point-x="20" point-y="150">
             <GVOperationNode class="it.greenvulcano.gvesb.core.flow.GVOperationNode"
                  id="test" id-system="GVESB" input="input" next-node-id="end" op-type="call"
                  operation-name="toupper_call" output="output" point-x="186" point-y="152" type="flow-node"/>
             <GVEndNode class="it.greenvulcano.gvesb.core.flow.GVEndNode" 
                  end-business-process="yes" id="end" op-type="end"
                  output="output" point-x="386" point-y="150" type="flow-node"/>
        </Flow>
    </Operation>
</Service>