1.7 Concept: iWay Flow Controls

iWay flow controls allow you to direct and act upon the input (for example, messages and documents) through a process flow. Flow control objects are located in the iWay Integration Tools (iIT) Palette, under the Flow Control group, as shown in the following image.

Flow Control Group

Through a process flow, you control the sequence in which tasks are performed and the destination of the output from each task in the process flow. Each process flow is a single unit of work made up of multiple objects, such as adapters, protocol interactions, system access objects, and message routing definitions. These objects are graphically represented by icons and connected by lines that establish a relationship between the objects.


  • Catch Object

    The Catch object catches errors in a process flow. This object implements com.ibi.agents.XDCatchAgent, which triggers the process flow to handle onFailException or onRetryException events.

  • Choice Object

    The Choice object evaluates the contents of a document or a variable, and routes the document accordingly, similar to the switch/case construct of other programming languages. The main difference is that the document can match multiple cases simultaneously.

  • Conditional Object

    The Conditional object evaluates the contents of a document and routes it to the next object(s) based on the values in the document.

  • End Object

    The End object terminates the process flow. All processes must terminate with at least one End object. There can be multiple End objects in a single process flow.

  • Iterator Object

    The Iterator object allows you to repeat certain portions of a complete process flow or in specified sections of an input document.

  • Join Object

    The Join object combines two or more documents into a single document. The single document then proceeds to the next object in the process flow.

  • Junction Object

    The Junction object joins two or more paths of execution into a single path.

  • Move Object

    The Move object moves the message in the process flow.

  • Set Object

    The Set object initiates one or more process events that corresponding Synch objects are waiting on. Set and Synch objects are used to suspend and resume the execution paths of a process flow.

  • Synch Object

    The Synch object waits for a condition to be met, such as the expiration of a time limit or the evaluation of an expression as true. The conditions are based on the events created through the Set object.