Other Methods of Creating & Running Maps and Transformations: Message Component Framework (MCF)
Overview of Message Component Framework
The Message Component Framework is a design feature of the Process
Designer for creating components to be included as "plug-ins" in
processes. MCF components can only be run in a process. The MCF acts as
a "container"service within the Integration Engine.
The components are developed in Java. Each different component lists
variable parameters that provide further definition of what the
component performs in a process. Frequently these parameters contain
source and target connection information.
Components are built using the MCF creation tool, which is based on
Eclipse. It provides a set of wizards and editors that automate the
development process. Documentation for MCF components is in the Help
menu for the Process Designer. Additional documentation
is listed at the end of this article.
Adding MCF components to a process is fully supported in the Process Designer interface. Pervasive provides a library
of existing components that are available in the Process Designer to be
included in processes created there. Many other user-created components
may be added as they are developed.
Benefits of MCF for developers
- Reusable components
- Extensive flexibility in component types
- Single step functionality for "multi-step" tasks
- Run in memory with message objects for efficiency
- Can be used to extend RIFL functions
- Eclipse-based development tool to create components
MCF Components for Mapping and Transformation
There two ready-to-use MCF components for mapping and transformation tasks.
- Automated Mapping Transformer
A Transformer component typically performs a custom transformation
from a source data format into a target data format. The Source and
Target connection parameters are provided to the Transformer as message
objects. The use of message objects opens the Transformer component to
dynamic acquisition of parameters at runtime. A subsequent Execute
action in the Transformer performs the transformation.
The Automated Mapping Transformer leverages functionality already
built into the Integration Engine for automatic one-to-one mapping and
transformation between source and target without a pre-existing map
(map.xml, tf.xml). The mapping is based on exactly "matched" metadata,
either where the field names are the same for source and target (map by
name) or where the fields are in the same relative position for source
and target (map by position). The source and target connection
parameters may be passed in message objects. Essentially this
transformer enables on-the-fly mapping for a very narrow definition of
source and target metadata, and without complex data manipulation from
source to target.
Typically transformations are run in processes by executing
transformation maps as steps, but sometimes the only method to
accomplish a specific sort of transformation is to create custom
objects like the Automated Mapping Transformer to create maps and
transformations on the fly.
- Dynamic Map -Invoker
An Invoker typically provides the ability to utilize a service
available from a third party API or remote application and returns a
result to a process in a single step. The Invoker places any output
from the service into a target message object. Typical applications for
an Invoker component would include using a Web or SOAP service.
The Dynamic Map -Invoker component enables dynamic calls to run an
existing transformation (map.xml, tf.xml) in a single step. The Invoker
component uses parameters to call the map or transformation. The map
can then be loaded into a message object, and the message URI may be
used as the source. Parameters are set up for source and target
connections through the Invoker properties window in the Process
Designer (the connection strings support authentication). Message
objects may also be used to hold source and target data at runtime.
Mapping expression overrides at runtime may also be applied to the
transformation when using this Invoker.