AggregateControl node

This topic contains the following sections:

Purpose

Use the AggregateControl node to mark the beginning of a fan-out of requests that are part of an aggregation.

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 AggregateControl node is represented in the workbench by the following icon:

AggregateControl node icon

Using this node in a message flow

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

Configuring the AggregateControl node

When you have put an instance of the AggregateControl 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 AggregateControl node as follows:

  1. Enter a value for the Aggregate Name. This name is used to associate the fan-out message flow with the fan-in message flow. This value must be contextually unique within a broker. This property is mandatory; you must enter a value.
  2. Enter a Timeout. This value is specified in seconds. You must enter a value (or accept the initial value shown, 0) because this property is mandatory. If you accept the value, the timeout is disabled for fan-outs from this node (that is, replies are waited for indefinitely). If not all responses are received, the message flow continues to wait, and does not complete. Therefore, you are recommended to set a value greater than 0. Refer to the AggregateReply node for further information about timeouts.
  3. Select Description in the properties dialog navigator to enter a short description, a long description, or both.
  4. Click Apply to make the changes to the AggregateControl 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 AggregateControl node terminals are described in the following table.

Terminal Description
In The input terminal that accepts a message for processing by the node.
Out The output terminal to which the original message is routed when processing completes successfully.
Control The output terminal to which a control message is routed. The control message is sent to a corresponding AggregateReply node.
Note: The Control terminal is deprecated in Version 6.0, to use connections from the Control terminal see, Using control messages in aggregation flows.

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

Property M C Default Description
Aggregate Name Yes Yes   A name that can be used to associate the fan-out message flow with the fan-in message flow.
Timeout (secs) Yes No 0 The amount of time, in seconds, for which replies are waited to arrive at the fan-in.
Note: On z/OS if the Timeout property is not set to zero, set the queue manager parameter EXPRYINT to 5.

The AggregateControl 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.