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 response 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:

  • 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 that is 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.
  • 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 that is added to the message Environment by the AggregateRequest must be preserved, otherwise the aggregation fails.
  • 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 to 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. To display its properties, either double-click the node, or right-click the node and click Properties.

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

Configure the AggregateRequest node as follows:

  1. Optional: On the Description tab, enter a short description, a long description, or both. You can also change the name of the node on this tab.
  2. On the Basic tab, 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, but the value does not need to be unique.

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 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 Description properties are described in the following table.

Property M C Default Description
Node name No No The node type The name of the node
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.

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.