Start by creating a new AssemblyLine that you call 'Scheduler'. Then add a 'Timer Connector' to the Feed section and configure it to run every minute by entering the wildcard character (*) in the Minutes parameter.
Configure the Timer Connector
The Timer Connector offers a 'Timestamp' Attribute for Input Mapping, although it is not necessary in this exercise.
Now add a new component to the Data Flow section, this time selecting the 'AssemblyLine Function Component'1 (AL FC). The AssemblyLine Function Component lets you invoke another AssemblyLine as though it were a service call, optionally passing in Attributes via the Output Map of the FC, and mapping in whatever happens to be in the Work Entry when the called AssemblyLine completes. We will not need to do any mapping in this example2.
Now configure the AssemblyLine FC to start your 'CSV2XML_LookupMode' AssemblyLine by using the Query button. In the Advanced section, enable the checkbox for shared log settings between the calling and called AssemblyLines, and leave the Execution Mode set to 'Run and wait for result'. This means that your 'Scheduler' AssemblyLine will pause until the called AssemblyLine completes.
Configure the AssemblyLine Function Component
Your Scheduler AssemblyLine is ready to test. Press the Run button and wait for the internal clock of the machine to reach the next whole minute.
Log output from both AssemblyLines
If all goes well then your log output should look like the screenshot above.
The Timer Connector is useful for scheduling AssemblyLine operation in order to keep two or more systems synchronized. This is particularly handy in cases where source data systems do not provide any change notification service that Tivoli Directory Integrator can hook into3.
Of course, if you are working with an LDAP directory that provides a changelog, like Tivoli Directory Server, or with Active Directory, DB2 or some other major RDBMS, or with Lotus Domino , then Tivoli Directory Integrator has specialized Iterator mode Connectors designed to detect changes in these systems. Only these changes are driven into our AssemblyLine, along with information about what has changed and how, facilitating fast and efficient data synchronization.
Another important feature is the Delta Engine that allows any Connector in Iterator mode to automatically compute change information for any kind of input source, including text files. All these components and features are detailed in the IBM Tivoli Directory Integrator V7.1 Reference Guide.
Parent topic: Event-driven integration
1 A Function component (or 'FC' for short) is similar to a Connector, but has no Mode setting and always provides both Input and Output Maps. FC's are used to make service requests, using their Output Map to pass parameters to the called service and providing an Input Map for retrieving any response Attributes.
2 Note that if you map out Attributes to a called AssemblyLine then this will disable any Feed section Iterator Connectors for the first AssemblyLine cycle. After the first cycle, however, the Iterator Connector will function as usual.
3 Note that this technique is often used for Lotus Connections in order to make these deployments
consistent, regardless of the type of system that Profiles data is
synchronized from.