This site contains the documentation that is relevant to older WSO2 product versions and offerings.
For the latest WSO2 documentation, visit https://wso2.com/documentation/.

Mediators

A mediator is a full-powered processing unit in the ESB. In run-time, it has access to all the parts of the ESB along with the current message. Usually a mediator is configured using XML. Different mediators have their own XML configurations.

At run-time, a message is injected into the mediator with the ESB's run-time information. Then this mediator can do virtually anything with the message.

Mediators in a sequence can be one of the following types:

  • Node mediators - Contains child mediators.
  • Leaf mediators - Does not hold any other child mediators.

Also mediators are considered as one of the main mechanisms for extending an ESB. A user can write a mediator and put it into the ESB. This custom mediator and any other built in mediator will be exactly the same as the API and the privileges (see Writing a WSO2 ESB Mediator).

The standard mediators in WSO2 ESB are listed in the table below. Click a link for details on that mediator. There are also many samples that demonstrate how to use mediators. For details, see Samples.

The Mediator Catalog

Category

Name

Description

Core

Send

Sends a message out

 

Log

Logs a message

 

Property

Sets or remove properties associated with the message

 

Sequence

Refers a sequence

 

Event

Sends event notifications to an event source, publishes messages to predefined topics

 

Drop

Drops a message

 

Enrich

Enriches a message

Filter

Filter

Filters a message using XPath, if-else kind of logic

 

Out

Inbuilt filter for choosing messages in ESB out path

 

In

Inbuilt filter for choosing messages in ESB in path

 

Switch

Filters messages using XPath, switch logic

 

Router

Routes messages based on XPath filtering

 

Conditional Router

Implements complex routing rules (Header based routing, content based routing and other rules)

Transform

XSLT

Performs XSLT transformations on the XML payload

 FastXSLTPerforms XSLT transformations on the message stream

 

URLRewrite

Modifies and rewrites URLs or URL fragments

 

 XQuery

XQuery

 PayloadFactoryTransforms the message payload

 

Header

Sets or removes SOAP headers

 

Fault (also called Makefault)

Create SOAP Faults

Advanced

Cache

Evaluate messages based on whether the same message came to the ESB

 

Clone

Clones a message

 

Store

Stores messages in a predefined message store

 

Iterate

Splits a message

 

Aggregate

Combines a message

 

Callout

Blocks web services calls

 

Transaction

Executes a set of mediators transactionally

 

Throttle

Limits the number of messages

 

RMSequence

Reliable messaging

 

DBReport

Writes data to database

 

DBLookup

Retrieves information from database

 

Rule

Executives rules

 

Entitlement

Fines grain authorization

 

OAuth

2-legged OAuth support

Extension

Class

Creates and executes a custom mediator

 

POJOCommand

Executes a custom command

 

Script

Executes a mediator written in Scripting language

 

Spring

Creates a mediator managed by Spring

 

Smooks

Used to apply lightweight transformations on messages in an efficient manner