AggregateRequest node

This topic contains the following sections:

Purpose

Use the AggregateRequest node to record the fact that request messages have been sent. This node also collects information that helps the AggregateReply node to construct the compound message.

Aggregation is an extension of the request/reply application model. It combines the generation and fan-out of a number of related requests with the fan-in of the corresponding replies, and compiles those replies into a single aggregated reply message.

The aggregation function is provided by the following three nodes:

  1. The AggregateControl node marks the beginning of a fan-out of requests that are part of an aggregation. It sends a control message that is used by the AggregateReply node to match the different requests that have been made. The information propagated from the control terminal includes the broker identifier, the aggregate name property, and the timeout property. The aggregation information that is added to the message Environment by the AggregateControl node must not be changed.
  2. The AggregateRequest node records the fact that the request messages have been sent. It also collects information that helps the AggregateReply node to construct the aggregated reply message. The information added to the message Environment by the AggregateRequest must be preserved otherwise the aggregation will fail.
  3. The AggregateReply node marks the end of an aggregation fan-in. It collects replies and combines them into a single aggregated reply message.

The AggregateRequest node is represented in the workbench by the following icon:

AggregateRequest node icon

Using this node in a message flow

Look at the following samples to see how you can use this node:

Configuring the Aggregate Request node

When you have put an instance of the AggregateRequest node into a message flow, you can configure it. Right-click the node in the editor view and click Properties. The node's basic properties are displayed.

All mandatory properties for which you must enter a value (those that do not have a default value defined) are marked with an asterisk on the properties dialog.

Configure the AggregateRequest node as follows:

  1. Enter a value for the Folder Name. This name is used as a folder in the AggregateReply node's compound message to store the reply to this request. This property is mandatory; you must enter a value. The value does not have to be unique.
  2. Select Description in the properties dialog navigator to enter a short description, a long description, or both.
  3. Click Apply to make the changes to the AggregateRequest node without closing the properties dialog. Click OK to apply the changes and close the properties dialog.

    Click Cancel to close the dialog and discard all the changes that you have made to the properties.

Terminals and properties

The AggregateRequest node terminals are described in the following table.

Terminal Description
In The input terminal that accepts messages sent as part of an aggregate request.
Out The output terminal to which the input message is routed when processing completes successfully.

The following tables describe the node properties; the column headed M indicates whether the property is mandatory (marked with an asterisk on the properties dialog if you must enter a value when no default is defined), the column headed C indicates whether the property is configurable (you can change the value when you add the message flow to the bar file to deploy it).

The AggregateRequest node Basic property is described in the following table.

Property M C Default Description
Folder Name Yes No   The name that is used as a folder in the AggregateReply node's compound message. This property is mandatory.

The AggregateRequest node Description properties are described in the following table.

Property M C Default Description
Short Description No No   A brief description of the node.
Long Description No No   Text that describes the purpose of the node in the message flow.