Puede utilizar el subárbol de destino para configurar los destinos utilizados por los nodos de salida, el nodo HTTPRequest y el nodo RouteToLabel. Los ejemplos siguientes muestran cómo puede crear y utilizar un procedimiento ESQL para realizar la tarea de configurar valores para cada uno de estos usos.
Puede copiar y utilizar estos procedimientos tal como se muestran o puede modificarlos y ampliarlos para realizar tareas similares.
CREATE PROCEDURE addToMQDestinationList(IN LocalEnvironment REFERENCE, IN newQueue char) BEGIN /******************************************************************************* * Procedimiento que añadirá un nombre de cola a la lista de destinos MQ * en el entorno local. * Esta lista la utiliza un nodo MQOuput que tiene la modalidad establecida en lista de destinos. * * IN LocalEnvironment: LocalEnvironment que se debe modificar. * Establecer esto en OutputLocalEnvironment al llamar a este procedimiento * IN queue: cola que se debe añadir a la lista * *******************************************************************************/ if LocalEnvironment.Destination.MQDestinationList.DestinationData is null then set LocalEnvironment.Destination.MQDestinationList.DestinationData.queueName =newQueue; else create LASTCHILD OF LocalEnvironment.Destination.MQDestinationList.DestinationData NAME 'queueName' VALUE newQueue; end if; END;
CREATE PROCEDURE addToHTTPRequestList(IN LocalEnvironment REFERENCE, IN newUrl char) BEGIN /******************************************************************************* * Procedimiento que añadirá un URL a la lista de solicitudes HTTP en el entorno local. * Esta lista la utiliza un nodo HTTPRequest que tiene la modalidad establecida en lista de destinos. * * IN LocalEnvironment: LocalEnvironment que se debe modificar. * Establecer esto en OutputLocalEnvironment al llamar a este procedimiento * IN queue: URL que se debe añadir a la lista * *******************************************************************************/ set LocalEnvironment.Destination.HTTP.RequestURL = newUrl; END;
CREATE PROCEDURE addToRouteToLabelList(IN LocalEnvironment REFERENCE, IN newLabel char) BEGIN /******************************************************************************* * Procedimiento que añadirá un nombre de etiqueta a la lista RouteToLabel * en el entorno local. * Esta lista la utiliza un nodo RoteToLabel. * * IN LocalEnvironment: LocalEnvironment que se debe modificar. * Establecer esto en OutputLocalEnvironment al llamar a este procedimiento * IN label: etiqueta que se debe añadir a la lista * *******************************************************************************/ if LocalEnvironment.Destination.RouterList.DestinationData is null then set LocalEnvironment.Destination.RouterList.DestinationData."label" = newLabel; else create LASTCHILD OF LocalEnvironment.Destination.RouterList.DestinationData NAME 'label' VALUE newLabel; end if; END;