| Platform SDK: Exchange Server |
The routing engine is programmed by creating a data structure called a process map, or map for short. This map can be thought of as a low-level description of the logic in a given process or route. This logic can be expressed as a series of activities; for example:
To request approval by a manager
You can encode logic at this level more or less directly into the routing map, as shown in the following table. This table, in which a manager's approval of an item is requested, is a simplified (pseudocode) view of a map for the preceding steps:
| Activity ID | Action | Argument |
|---|---|---|
| 10 | Send | Manager's e-mail address |
| 20 | Wait | 24 hours |
| 30 | ORSplit | IsTimeout |
| 40 | Goto | Time-out handler |
| 50 | Receive | |
| 60 | ORSplit | IsApprove |
| 70 | Goto | Approved handler |
| 80 | Goto | Rejected handler |
Maps are created and manipulated using the COM interfaces known as the Microsoft Exchange routing objects. Each row of a map consists of an Activity ID, an Action, and one or more parameters (arguments) for each action.