This topic describes the AggregateReply node.
This topic contains the following sections:
Use the AggregateReply node to mark the end of an aggregation fan-in. This node collects replies and combines them into a single 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:
The AggregateReply node is contained in the Routing drawer of the palette, and is represented in the workbench by the following icon:
When incoming messages are stored by the AggregateReply node before all responses for the aggregation are received, the persistence of the message determines whether the message survives a restart.
If, during an aggregation, one or more of the response messages are not received by the AggregateReply node, the normal timeout or unknown message processing deals with the responses that have been received already.
The MQMD.Expiry value of each AggregateReply message is set to -1 in the compound output message. this value is set because the MQMD.Expiry value has no meaning once the reply message is no longer on the WebSphere MQ Transport and has been stored by the broker during the aggregation process.
When you have put an instance of the AggregateReply node into a message flow, you can configure it; see Configuring a message flow node. The properties of the node are displayed in the Properties view.
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 AggregateReply node as follows:
If you enter zero, or do not enter a value, the timeout is disabled and unknown messages are propagated to the unknown terminal upon receipt.
The AggregateReply node terminals are described in the following table.
Terminal | Description |
---|---|
Control | The input terminal that accepts control messages that
are sent by a corresponding AggregateControl node. The Control terminal is deprecated in Version 6.0; to use connections to the Control terminal, see Using control messages in aggregation flows. |
In | The input terminal that accepts a message for processing by the node. |
Failure | The output terminal to which the message is routed if a failure is detected during processing. |
Unknown | The output terminal to which messages are routed when they cannot be identified as valid reply messages. |
Out | The output terminal to which the compound message is routed when processing completes successfully. |
Timeout | The output terminal to which the incomplete compound message is routed when the timeout interval that is specified in the corresponding AggregateControl node has expired. |
Catch | The output terminal to which the message is routed if an exception is thrown downstream and then caught by this node. |
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 Description properties of the AggregateReply node 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 AggregateReply node Basic properties are described in the following table.
Property | M | C | Default | Description |
---|---|---|---|---|
Aggregate Name | Yes | Yes | A name that is used to associate the fan-in message flow with the fan-out message flow. This property is mandatory. | |
Unknown Message Timeout | No | No | 0 | The amount of time for which messages that cannot be
identified as replies are held before being propagated to the unknown terminal.
|
Transaction Mode | Yes | No | Selected | If the check box is selected, messages that are propagated by this node are put transactionally. |