Control Flow

This page deals shows how to control the order in which activities are processed by a service.

Request Components

A request component is either an activity, a flow or a sequence.

Flow components contain one or more subcomponents that are processed in parallel. A subcomponent is usually an activity (or more precisely, a string of connected activities) but it can also be another flow or sequence component, i.e. flows can be nested.

Sequence components contain one or more subcomponents that are processed in sequence. A subcomponent can either be a string of connected activities or another flow or sequence component.

Flow control

A flow contains a number of request components which are processed in parallel by the server.

Sequence control

A sequence contains a number of request components which are processed sequentially by the server.

Say you'd like to do the following: Create a new table in a data resource, bulk load some data into the table and then query the data. Obviously, the bulk load cannot start before the table has been created. Likewise, the query should not commence before the data has been loaded into the new table.

You could solve the problem by creating three requests - the first request creates a table, the second one performs a bulk load and so on. But this means that there are three interactions with the service, three requests going over the network - it is much easier to wrap everything into one request and send it off only once. This is where the sequence component comes in.