IBM BPM, V8.0.1, All platforms > Authoring services in Integration Designer > Services and service-related functions > Building mediation flows
Mediation primitives and nodes
Mediation primitives accept and process messages to let you change their format, content or the target service provider. Mediation primitives have properties that determine how a message will be processed. When you wire a flow in the Mediation Flow editor, you can modify the properties of nodes and mediation primitives.
Tip: Wire the input and output terminals of a mediation primitive before you set its properties. This will make your input and output message types known to the editor, and will save you time when setting the properties.These topics describe the properties of mediation primitives and nodes. These topics do not discuss marking properties for promotion. For information on promoted properties, see Changing the value of mediation flow properties at run time.
Mediation primitives and nodes Icon Primitive or node Description
Input Propagates the message to the primitive or node to which it is wired. The properties to be stored in the message context are specified in the details page of the input node's properties view. These properties can be accessed by mediation primitives later in the flow.
Input Response The input response node is an end point in the request and response flows. It returns the processed message as a response to the source operation. In a request flow, you can use the input response in certain conditional situations. For example if an input error detected, the message can return immediately to the source without invoking the callout.
Callout Receives the message and invokes the requested service and operation. There is a callout node for each connected target operation in the mediation flow.
Callout response A starting point for the response flow. It forwards the message received from the target operation into the response flow.
Input Fault The input response node is an end point in the request and response flows. It returns a fault message as a response to the source operation. In a request flow, you can use the fault response in certain conditional situations. For example if an input error is detected, a fault message can be returned immediately to the source without invoking the callout. A fault response node has an input terminal for each fault defined on the operation.
Callout Fault The callout fault node is an end point in the response flow. When a WSDL fault occurs in the invoked operation, the callout fault propagates the fault message to the primitive or node to which it is wired. The callout fault has an output terminal for each fault message type defined in the target operation. Transformation
Custom Mediation primitive Allows you to implement your own mediation logic using Java™ code.
Database Lookup mediation primitive Searches values from a database and stores them in the message.
Message Element Setter mediation primitive Sets, copies or deletes the value of message elements as the message passes through a mediation flow.
Business Object Map mediation primitive Allows you to map data between differently structured business objects. This allows services that use different business objects to communicate and exchange data.
Set Message Type mediation primitive Allows you to overlay weakly-typed message fields with more complex structures and manipulate them easier. It can also be used to overlay strong-typed fields with a derived type.
MQ Header Setter mediation primitive Creates, sets, copies or deletes MQ message headers.
SOAP Header Setter Mediation Primitive Creates, sets, copies or deletes SOAP message headers.
HTTP Header Setter mediation primitive Creates, sets, copies or deletes HTTP message headers.
JMS Header setter primitive Creates, sets, copies or deletes JMS message headers.
Data Handler mediation primitive Transforms a part of a message. It is used to convert an element of a message from a physical format to a logical structure or a logical structure to a physical format. For example, from a comma delimited string to a business object.
Mapping mediation primitive Transforms messages, or changes message content according to an XSL style sheet that maps between the source and target message types. Routing
Message Filter mediation primitive Conditionally routes messages based on the results of pattern evaluation. A pattern is evaluated against the message, and if the result is true, the message is propagated to a terminal associated with the pattern.
Endpoint Lookup mediation primitive Queries the WebSphere Service Registry Repository and retrieves service endpoints. The endpoints retrieved are based on user defined search criteria, and the retrieved endpoints are placed in the primitiveContext element in the message context. The retrieved endpoints can then be used to dynamically invoke a service, depending on the match policy specified.
Fan Out mediation primitive Performs broadcasting and to aggregate service responses in conjunction with the Fan In mediation primtiive
Fan In mediation primitive Combines multiple messages for aggregation. Fan In must be used in conjunction with the Fan Out mediation primitive.
Service Invoke mediation primitive Call an intermediary service inline within a mediation flow. It can retry a failed call, as well as route it to another service or different endpoints of the service.
Type Filter mediation primitive Allows you to direct messages down different paths of a mediation flow, based on the message type.
Policy Resolution mediation primitive Allows the runtime administrator to dynamically configure the mediation flow by modifying a policy . Tracing
Message Logger mediation primitive Logs a copy of the message to a database for future retrieval or audit.
Event Emitter mediation primitive Emits custom base events at a significant point in the message flow. Error Handling
Fail mediation primitive Throws an exception and stops the flow when there is a failure in a mediation primitive.
Stop mediation primitive Silently stops the flow; this is an expected termination and is not caused by an exception. Mediation Subflow
Subflow A mediation subflow is a preconfigured set of mediation primitives, run in the context of a parent flow, that are wired together to realize a common pattern or use case. Mediation subflows can be shared among mediation flows.
- Input
The Input node is the entry point to the request flow. Input propagates the message to the primitive or node to which it is wired. The properties to be stored in the message context are specified in the details page of the input node's properties view. These context properties can be accessed by mediation primitives later in the flow.- Callout
The callout receives the message and invokes the requested service and operation. There is a callout node for each connected target operation in the mediation flow.- Input Response
The input response node is an end point in the request and response flows. It returns the processed message as a response to the source operation. In a request flow, you can use the input response in certain conditional situations.For example if an input error is detected, the message can return immediately to the source without invoking the callout.
- Callout response
The callout response node is a starting point for the response flow. It forwards the message received from the target operation into the response flow.
- Callout Fault
The callout fault node is an end point in the response flow. When a WSDL fault occurs in the invoked operation, the callout fault propagates the fault message to the primitive or node to which it is wired. The callout fault has an output terminal for each fault message type defined in the target operation.- Input Fault
The input fault node is an end point in the request and response flows. It returns a fault message as a response to the source operation. In a request flow, you can use the fault response in certain conditional situations.For example if an input error is detected, a fault message can be returned immediately to the source without invoking the callout. A fault response node has an input terminal for each fault defined on the operation.
- Example: Database Lookup mediation primitive
The Database Lookup primitive searches values from a database and stores them in the message. This example shows you how to use the Database Lookup primitive in the Mediation Flow editor.