TimeoutControl node

This topic contains the following sections:

Purpose

The TimeoutControl node receives an input message that contains a timeout request. See Timeout request message for a description of the timeout request message. The node validates the request, stores the message, and propagates the message (unchanged) to the next node in the message flow.

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

Timeout Control node icon

Using this node in a message flow

Use a TimeoutControl node and a TimeoutNotification node together in a message flow for an application that requires events to occur at particular times, or at regular intervals.

The following are examples of when you might want to use the timeout nodes in a message flow:
  1. You need to run a batch job every day at midnight.
  2. You want information about currency exchange rates to be sent to banks at hourly intervals.
  3. You want to confirm that important transactions are processed within a certain time period and perform some other specified actions to warn when a transaction has not been processed in that time period.

More than one TimeoutControl node can be paired with a TimeoutNotification node. Timeout requests that are processed by those TimeoutControl nodes are all processed by the same TimeoutNotification node. This happens if the same Unique Identifier is used for the TimeoutNotification node and each of the TimeoutControl nodes.

Look at Timeout Processing sample for more details about how to use the timeout processing nodes.

Configuring the TimeoutControl node

When you have put an instance of the TimeoutControl 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.

Unique Identifier is the only mandatory property. It does not have a default value.

Configure the Basic properties of the node by doing the following:

  • Specify in Unique Identifier an identifier that is unique within the broker. This identifier should be identical to the same property in the TimeoutNotification node with which it is paired. The maximum length of this identifier is 12 characters.
  • Specify, in Request Location, the location of the timeout request information in the incoming message. This location can be anywhere in the input message tree. If you do not specify a value for this property, InputLocalEnvironment.TimeoutRequest is assumed. See Timeout request message for a description of the timeout request message.
  • Specify a value for Request Persistence. This property determines whether incoming timeout requests survive a restart of either the broker or the message flow that contains the TimeoutNotification node that is paired with this TimeoutControl node. Specify Yes if you want the incoming request to persist; specify No if you do not. If you specify Automatic, the Persistence setting in the Properties folder of the incoming message is used. Automatic is the default value of this property.

Now configure the Message properties of the node:

  • Specify, in Stored Message Location, the location of the part of the request message that you want to store for propagation by the TimeoutNotification node with which it is paired. If you do not specify a value, the entire message is stored. You can specify any valid location in the message tree. If you choose to store the entire message, you do not need to specify any values in Message Domain, Message Set, Message Type, or Message Format.
  • In Message Domain, select the name of the parser that you are using from the drop-down list. This value, and the three corresponding values in Message Set, Message Type, and Message Format, are used by the TimeoutNotification node with which it is paired when it rebuilds the stored message for propagation. If you have stored the entire request message (by leaving Stored Message Location blank), do not specify any values here. If you choose to store part of the request message, you must specify values here that reflect the stored request message fragment as if it was the entire message, which is the case when it is processed by the TimeoutNotification node. You can choose from the following names:
    • MRM
    • XML
    • XMLNS
    • XMLNSC
    • JMSMap
    • JMSStream
    • MIME
    • BLOB
    • IDOC
  • If you are using the MRM or IDOC parser, select the correct message set from the drop-down list in Message Set.

    Leave Message Set blank for XML, XMLNS, XMLNSC, JMS, MIME, and BLOB parsers.

  • If you are using the MRM parser, select the correct message from the drop-down list in Message Type. This list is populated with messages that are defined in the message set that you have selected.

    Leave Message Type blank for XML, XMLNS, XMLNSC, JMS, IDOC, MIME, and BLOB parsers.

  • If you are using the MRM or IDOC parser, select the format of the message from the drop-down list in Message Format. This list includes all the physical formats that you have defined for this message set.

    Leave Message Format blank for XML, XMLNS, XMLNSC, JMS, MIME, and BLOB parsers.

When you have completed your configuration, click Apply. This makes the changes to the TimeoutControl 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 TimeoutControl node terminals are described in the following table.

Terminal Description
In The input terminal that accepts a message tree for processing (which includes validating the timeout request specified in the message tree at Request Location). and adds it to the control queue.
Failure The output terminal to which the input message is propagated if a failure is detected during processing in this node. If this terminal is not connected to another node, error information is passed back to the previous node in the message flow.
Out The output terminal to which incoming messages are propagated, unchanged, after successful timeout request processing. If this terminal is not connected to another node, no propagation occurs. If propagation of the message fails, the message is propagated to the Failure terminal.

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

Property M C Default Description
Unique Identifier Yes Yes  None This is the only mandatory property for the node. Its value must be unique within the broker. The equivalent property of the TimeoutNotification node with which it is paired must have the same value. The maximum length of this identifier is 12 characters.
Request Location No No None This property describes where to find the timeout request information. This must be a valid location in the message tree. This is validated at runtime. If no request location is specified, LocalEnvironment.TimeoutRequest is assumed. See Timeout request message for a description of the timeout request message.
Request Persistence No No Automatic This property determines whether an incoming timeout request survives a broker or message flow restart. The value of this property can be Automatic, Yes, or No. If the value is Automatic, the Persistence setting in the Properties folder of the incoming message is used.

The Message properties of the TimeoutControl node are described in the following table.

Property M C Default Description
Stored Message Location No No None The location of the part of the request message that you want to store for propagation by the TimeoutNotification node with which this node is paired.
Message Domain No No None The domain that will be used to parse the stored timeout request message by the TimeoutNotification node.
Message Set No No None The name or identifier of the message set in which the stored timeout request message is defined.
Message Type No No None The name of the stored timeout request message.
Message Format No No None The name of the physical format of the stored timeout request message.

The Description properties of the TimeoutControl node 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.
Related concepts
Message flows overview