Exemple : Utilisation de médiations pour le suivi, la surveillance et la consignation des messages
Une médiation sert essentiellement à effectuer le suivi, la surveillance ou la consignation des messages qui transitent par une destination ou des espaces de sujets. Ce type de médiation ne modifie pas le message, mais en extrait simplement les informations et les sauvegarde ou les affiche dans un autre endroit.
Par exemple, le gestionnaire de médiations affiche les ID de message d'API et de corrélation pour
chaque message qu'il envoie :
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;
}