Difference between revisions of "GVEndNode"

From GreenVulcano Wiki
Jump to: navigation, search
({{GVESB}} Configuration)
Line 4: Line 4:
  
 
=={{GVESB}} Configuration==
 
=={{GVESB}} Configuration==
 +
 +
GVEndNode is a [[Flow]] element that extends [[FlowNode]],
  
 
This element allows to finish a flow and before returning to the caller can also make changes to the data buffer, using the sub-element [[ChangeGVBuffer]].
 
This element allows to finish a flow and before returning to the caller can also make changes to the data buffer, using the sub-element [[ChangeGVBuffer]].
Line 27: Line 29:
 
{|class="gvtable"
 
{|class="gvtable"
 
! Attribute !! Type !! Description
 
! Attribute !! Type !! Description
|-
 
| type || fixed || This attribute must assume the value '''flow-node'''.
 
 
|-
 
|-
 
| op-type || fixed || This attribute must assume the value '''end'''.
 
| op-type || fixed || This attribute must assume the value '''end'''.
 
|-
 
|-
 
| class || fixed || This attribute must assume the value '''it.greenvulcano.gvesb.core.flow.GVEndNode'''.
 
| class || fixed || This attribute must assume the value '''it.greenvulcano.gvesb.core.flow.GVEndNode'''.
|-
 
| id || required || ID of the node. Unique within the 'Flow'.
 
 
|-
 
|-
 
| output || required || Specifies the name of the object contained in the execution environment, to return to the client.
 
| output || required || Specifies the name of the object contained in the execution environment, to return to the client.
Line 47: Line 45:
 
* The client calls GetReply to get the response
 
* The client calls GetReply to get the response
 
In the previous scenario are invoked three {{GVESB}} workflows, but the business flow only ends with the end of the third invocation. Only on the third workflow GVEndNode must be setted 'end-business-process' equal to 'yes'.
 
In the previous scenario are invoked three {{GVESB}} workflows, but the business flow only ends with the end of the third invocation. Only on the third workflow GVEndNode must be setted 'end-business-process' equal to 'yes'.
|-
 
| point-x || optional || X position of the node in the {{L_VULCON}} workflows editor.
 
Immutable, used by VulCon.
 
|-
 
| point-y || optional || Y position of the node in the {{L_VULCON}} workflows editor.
 
Immutable, used by VulCon.
 
|-
 
| dump-in-out || optional || If true enable the dump of the input/output [[GVBuffer]].
 
Default false.
 
|-
 
| dump-env-in-out || optional || If true enable the dump of the input/output Execution Environment.
 
Default false.
 
 
|-
 
|-
 
| keep-savepoint || optional || If true and the service have a [[GVSavePointNode]] then the state informations are keep on DB, otherwise the state informations are cancelled from DB.
 
| keep-savepoint || optional || If true and the service have a [[GVSavePointNode]] then the state informations are keep on DB, otherwise the state informations are cancelled from DB.
Line 65: Line 51:
  
 
Might have the followings sub-elements:
 
Might have the followings sub-elements:
* Description
 
 
* [[ChangeGVBuffer]] or [[GVThrowException]]
 
* [[ChangeGVBuffer]] or [[GVThrowException]]

Revision as of 14:39, 4 March 2013

Description

GVEndNode element ends the workflow execution returning a result to the caller.

GreenVulcano® ESB Configuration

GVEndNode is a Flow element that extends FlowNode,

This element allows to finish a flow and before returning to the caller can also make changes to the data buffer, using the sub-element ChangeGVBuffer.

You can also force the workflow exit with exception using the sub-element GVThrowException.

Depending on the outcome of operations performed by GreenVulcano® ESB, may be present in the execution environment GVBuffer objects or exceptions.

GVEndNode behavior will be different depending on the type of data that are available:

  • GVBuffer
    • If GVEndNode has a sub-element ChangeGVBuffer, the buffer will be changed before returning.
    • If GVEndNode has a sub-element GVThrowException, the configured exception will be raised from independently the buffer.
    • If GVEndNode has no sub-elements ChangeGVBuffer nor GVThrowException, the data buffer will be returned as is.
  • Exception
    • If GVEndNode has a sub-element GVThrowException, will raise the configured exception. At this exception will be attached that present in the environment.
    • If GVEndNode not have a sub-element GVThrowException, the exception present in the environment will be raised.

Note that the type of data (GVBuffer or exception) from the environment is unpredictable, depends on the outcome of operations undertaken by GreenVulcano® ESB.

The GVEndNode Element is used by Flow.

The following table shows the GVEndNode element's attributes:

Attribute Type Description
op-type fixed This attribute must assume the value end.
class fixed This attribute must assume the value it.greenvulcano.gvesb.core.flow.GVEndNode.
output required Specifies the name of the object contained in the execution environment, to return to the client.

The actual result sent to the client depends on the output (GVBuffer or exception) and the presence of sub-elements ChangeGVBuffer and GVThrowException.

end-business-process optional This parameter lets you specify whether the GVEndNode ending a business process.

Is particularly significant for the statistics. Some business flow are fulfilled by more invocations of GreenVulcano® ESB. For example, consider the following scenario:

  • A client invokes Request for the request
  • The server invokes SendReply to send the reply
  • The client calls GetReply to get the response

In the previous scenario are invoked three GreenVulcano® ESB workflows, but the business flow only ends with the end of the third invocation. Only on the third workflow GVEndNode must be setted 'end-business-process' equal to 'yes'.

keep-savepoint optional If true and the service have a GVSavePointNode then the state informations are keep on DB, otherwise the state informations are cancelled from DB.

Default false.

Might have the followings sub-elements: