Ejemplo: Utilización de mediaciones para rastrear, supervisar y anotar mensajes
El uso más sencillo de una mediación es para realizar el rastreo, la supervisión o el registro de mensajes que pasan a través de un destino o espacio de temas. Este tipo de mediación no modifica el mensaje; sólo extrae información del éste y la guarda, o visualiza, en alguna otra parte.
Por ejemplo, el siguiente manejador de mediación visualiza los ID de correlación y mensaje de API para cada mensaje que se envía:
public boolean(MessageContext context)
{
SIMessageContext msgCtx = (SIMessageContext)context;
SIMediationSession session = msgCtx.getSession();
SIMessage msg = msgCtx.getMessage();
String msgId = msg.getApiMessageId();
String corrId = msg.getCorrelationId();
String dest = session.getDestinationName();
System.out.println(msgId+" (correlation id="+corrid) is passing through "+dest+".");
return true;
}