SpAggregateCreate node


The SpAggregateCreate node icon

This page contains information on:

The SpAggregateCreate and SpAggregateReply nodes are co-operating nodes that together are responsible for the processing of ‘fan-out’ requests and the aggregation of the replies from such requests. A valid aggregation message flow must consist of at least one SpAggregateCreate node and at most one SpAggregateReply node. SpAggregateCreate and SpAggregateReply nodes are deemed to be related to the same aggregate if they contain the same value in their AggregateName property.

The SpAggregateCreate node is responsible for creating an aggregate and adding messages to it. If the aggregate does not yet exist (i.e. if this is the first message of the aggregate to be processed) the SpAggregateCreate node creates the internal structures required to store information about the aggregate.  The message is then added to the aggregate and the time out timer is reset to the value specified by the ReplyTimeoutSeconds property of the associated SpAggregateReply node.

The SpAggregateCreate node has one input terminal called in and two output terminals, out and failure.  When a message is received in the input terminal, the node extracts the aggregate identifier (from the MQMD.CorrelId field) and locates the aggregate structure identified by this value. If no aggregate structure is located, this message is assumed to be the first request message of a new aggregate and a new aggregate structure is created with this identifier. The request message is copied and propagated to the out terminal with its ReplyToQ set to the value specified by the ReplyToQueue property of the corresponding SpAggregateReply node. If an error is encountered, the incoming message is sent without change through the fail terminal and a message logged to the MQSI V2 message log.

Node terminals

The SpAggregateCreate node provides the following terminals:
 
 
in The input terminal that accepts a message for processing by the node.
out The output terminal to which the message is propagated if a message is added to the flow.
failure The output terminal to which the message is propagated if an error is encountered while attempting to propagate the new message.

Configuring the SpAggregateCreate node

When you have put an instance of the SpAggregateCreate node into a message flow you can configure it. Right click on the node in the Message Flow Definition pane and select Properties. Click on the Basic tab and enter the name that you wish to give the Aggregate. Each of the SpAggregateCreate nodes together with the SpAggregateReply node contained within this aggregate must have the same name. You can also (optionally) enter a value for the SequenceNumber property. This value controls the relative ordering of the replies in the aggregated reply message.

SpAggregateCreate node properties

Property Default Description
AggregateName   Identifier of the deployed aggregate. There must be one SpAggregateReply node within the same message flow with this identifier.
SequenceNumber  0 For BLOB type reply messages, this value indicates the order in which reply messages should be assembled into the aggregated reply message. Thus, a request message with SequenceNumber set to 25 will be appear before one with its SequenceNumber set to 30. 

For XML type reply messages, this value is used to build the XML tag name to contain the reply.  In this case, each SequenceNumber value must be unique to ensure that a valid XML message is generated by the SpAggregateReply node.


(C) IBM Corporation 2001. All Rights Reserved