Tivoli Directory Integrator

Download Report

Transcript Tivoli Directory Integrator

IBM Tivoli Directory Integrator
®
Tivoli Directory Integrator
Exercise 3 – Branches and Attribute Map Components
Eddie Hartman
[email protected]
2005.04.22
IBM Tivoli Directory Integrator
Kernel/Component architecture
Kernel provides a RID framework with:
- automated behavior
- arbitrary depth of customization
- housekeeping:
> log-files, tracing
> error handling
> startup parameters
> management interface/API
...
Components create level playing field by
abstracting away the details of:
- transports
- APIs
- protocols
- data/file formats
2
IBM Tivoli Directory Integrator
TDI Components
Connector
Parser
Script
Attribute Map
Function
supports a specific system, service or transport
allowing you to use these sources and/or targets
for a data flow (AssemblyLine).
used to interpret the structure of a byte stream,
embed structure into a byte stream, or both.
JavaScript code block that can be dropped into
AssemblyLines to provide custom data handling
and behavior.
defines the data relationships and
transformations.
AL wrapper for a specific function callout.
Examples include invoking a web service,
running a remote AssemblyLine, and passing
data through a free-standing Parser (as opposed
to a Parser that is attached to a Connector).
3
IBM Tivoli Directory Integrator
Connector
Data access to a specific system/service
Clicks into an AssemblyLine
Mode: Feeds: Iterator, Server
Flow: Lookup, Update, Delete, Delta, Call/Reply
Byte stream types requires a Parser
Interchangeable Connector Interface
e.g. JDBC, LDAP, JMS, Notes, HTTP...
Can be scripted (Script Connector)
Supports inheritance (e.g. "Connectors" Library)
4
IBM Tivoli Directory Integrator
Parser
Interprets or creates byte stream structure
Clicks into an AssemblyLine via a Function
Attaches to some Connectors (e.g. FileSystem)
Interchangeable Parser Interface
e.g. XML/HTML/DSML, LDIF, CSV, ...
Can be scripted (Script Parser)
Supports inheritance (e.g. "Parsers" Library)
5
IBM Tivoli Directory Integrator
Function
RPC call-out to:
Another AssemblyLine (local or remote Server)
A component (e.g. Parser, MemQ, ...)
A service or API (web services, application, ...)
Clicks into an AssemblyLine
Interchangeable Function Interface
ParserFC, AssemblyLineFC, z/OS, WS, ...
Can be scripted (Script Function)
Supports inheritance (e.g. "Functions" Library)
6
IBM Tivoli Directory Integrator
Script
Snippet/block of JavaScript code
Powerful debugging tool
Clicks into an AssemblyLine
Supports inheritance (e.g. "Scripts" Library)
7
IBM Tivoli Directory Integrator
Attribute Map
Data transformation "in-flight"
maps from work Attributes to work Attributes
in contrast to Connector Input/Output Maps
which map between work and conn
Simple or Advanced mapping
Clicks into an AssemblyLine
Simple or Advanced (scripted) Mapping
no conn or current available; just work
Supports inheritance (e.g. "AttributeMaps" Library)
8
IBM Tivoli Directory Integrator
TDI AL Constructs
Branch
Loop
Condition-based
Connector-based (Iterator/Lookup mode)
- one cycle per entry founded
Attribute value-based
- once cycle per attribute value
9
IBM Tivoli Directory Integrator
Branches
Conditional branching of AL flow
Simple Condition: Attribute compared to literal value
Scripted Condition: ret.value = true or false
Clicks into an AssemblyLine
Can be nested with other Branches/Loops
No inheritance
10
IBM Tivoli Directory Integrator
Loop
Loop through set of components/contructs
for each Entry returned by Connector
- Specified in Loop Config as Iterator or Lookup Mode
or, for each value of a multi-valued Attribute
or, as long as Condition(s) evaluate to true
Clicks into an AssemblyLine
Can be nested with other Branches/Loops
No inheritance
11
IBM Tivoli Directory Integrator
Exercise 01 & 02: CSV to XML
XML
Document
FileSystem
Connector
FileSystem
Connector
w/ CSV Parser
w/ XML Parser
CSV
File
12
IBM Tivoli Directory Integrator
Exercise 01 & 02: CSV to XML
XML
Document
FileSystem
Connector
w/ CSV Parser
Attribute
Map
FileSystem
Connector
w/ XML Parser
CSV
File
13
IBM Tivoli Directory Integrator
Exercise 03 Correct dn
Employees need to go into one tree:
<rdn>,ou=Employees,<base suffix>
Contractors must have a different dn:
<rdn>,ou=Contractors,<base suffix>
14