Compilazione di Destination nella struttura ad albero LocalEnvironment

E' possibile utilizzare la struttura ad albero secondaria Destination per impostare le destinazioni di arrivo utilizzate dai nodi di output, il nodo HTTPRequest e il nodo RouteToLabel. Gli esempi seguenti mostrano come creare e utilizzare una procedura ESQL per svolgere l'attività di impostazione dei valori per ciascuno di questi utilizzi.

E' possibile copiare e utilizzare queste procedure come indicato o modificarle o estenderle per svolgere attività simili.

Aggiunta di un nome coda per il nodo MQOutput.
CREATE PROCEDURE addToMQDestinationList(IN LocalEnvironment REFERENCE, IN newQueue char) BEGIN
  /*******************************************************************************
  * Una procedura che aggiungerà un nome coda all'elenco di destinazioni MQ
  * nell'ambiente locale.
  * Questo elenco è utilizzato da un nodo MQOuput che ha la propria modalità impostata su Elenco di destinazioni.
  *
  * IN LocalEnvironment: LocalEnvironment da modificare. 
  * Impostare su OutputLocalEnvironment quando si richiama questa procedura
  * IN queue:    coda da aggiungere all'elenco
  *
  *******************************************************************************/
  DECLARE I INTEGER CARDINALITY(LocalEnvironment.Destination.MQDestinationList.DestinationData[]);
		IF I = 0 THEN
			SET LocalEnvironment.Destination.MQDestinationList.DestinationData[1].queueName = newQueue;
		ELSE
			SET LocalEnvironment.Destination.MQDestinationList.DestinationData[I+1].queueName = newQueue;
END IF;
	END;
Modifica dell'URL predefinito per una richiesta del nodo HTTPRequest
CREATE PROCEDURE overrideDefaultHTTPRequestURL(IN LocalEnvironment REFERENCE, IN newUrl char) BEGIN
  /*******************************************************************************
  * Una procedura che modificherà l'URL a cui il nodo HTTPRequest invierà la richiesta.
  * 
  * IN LocalEnvironment: LocalEnvironment da modificare. 
  * Impostare su OutputLocalEnvironment quando si richiama questa procedura
  * IN queue:    URL a cui inviare la richiesta.
  *
  *******************************************************************************/
  set LocalEnvironment.Destination.HTTP.RequestURL  = newUrl;
END;
Aggiunta di un'etichetta per il nodo RouteToLabel.
CREATE PROCEDURE addToRouteToLabelList(IN LocalEnvironment REFERENCE, IN newLabel char) BEGIN
  /*******************************************************************************
  * Una procedura che aggiungerà un nome etichetta all'elenco RouteToLabel
  * nell'ambiente locale.
  * Questo elenco è utilizzato da un nodo RouteToLabel.
  *
  * IN LocalEnvironment: LocalEnvironment da modificare. 
  * Impostare su OutputLocalEnvironment quando si richiama questa procedura
  * IN label:    etichetta da aggiungere all'elenco
  *
  *******************************************************************************/
	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;
Concetti correlati
Panoramica dei flussi di messaggi
Struttura ad albero LocalEnvironment
Riferimenti correlati
Nodo Compute
Tipi di dati per elementi nell'albero secondario DestinationData
Istruzione CREATE PROCEDURE
Istruzione SET
Informazioni particolari | Marchi | Download | Libreria | Supporto | Commenti
Copyright IBM Corporation 1999, 2006 Ultimo aggiornamento: ago 17, 2006
ac16862_