Cómo trabajar con propiedades de mensaje
Puede trabajar con las propiedades de mensaje para alterar los procesos posteriores.
Antes de empezar
Acerca de esta tarea
Hay dos tipos diferentes de propiedades de mensajes:
- Propiedades del sistema (incluidas las cabeceras JMSX, las propiedades JMSX y las propiedades JMS_IBM_properties)
- Propiedades del usuario.
Puede trabajar con las propiedades de los mensajes para modificar qué mensajes debe procesar una mediación posterior o para modificar el proceso realizado por una mediación o aplicación situada en sentido descendente. El conjunto de reglas del campo de selector durante la configuración de la mediación comprueba los valores de las propiedades de los mensajes.
Puede acceder, modificar y borrar las propiedades utilizando la interfaz SIMessage (consulte SIMessage. Hay tres conjuntos de métodos diferentes:
- Estas propiedades funcionan en las propiedades del sistema, más las propiedades de usuario si el nombre está calificado con un prefijo user.:
- getMessageProperty
- setMessageProperty
- deleteMessageProperty
- clearMessageProperties
- Estas propiedades sólo operan en propiedades de usuario sin que sea necesario el prefijo user.:
- getUserProperty
- setUserProperty
- deletUserProperty
- clearUserProperties
- getUserPropertyNames devuelve una lista de los nombres de las propiedades de usuario del mensaje.
Procedimiento
Ejemplo
El código de función de mediación para trabajar con las propiedades del mensaje puede ser similar al fragmento de código de este ejemplo:
String task = (String)msg1.getUserProperty("task");
if (task != null) {
if (task.equals("addColor")) {
msg1.setMessageProperty(SIProperties.JMS_IBM_Format, "colorful");
msg1.setUserProperty("background","green");
msg1.setUserProperty("foreground","purple");
msg1.setUserProperty("depth",new Integer(3));
msg1.deleteUserProperty("task");
}
else {
msg1.clearUserProperties();
}
}