Arborescence d'environnement

L'arborescence d'environnement est une partie de l'arborescence logique (assemblage de messages) dans laquelle vous pouvez stocker des informations pendant que le message passe par le flux de messages.

La racine de l'arborescence d'environnement est appelée environnement. Cet arbre figure toujours dans le message d'entrée ; une arborescence d'environnement vide est créée quand un message est reçu et analysé par le noeud d'entrée Vous pouvez l'utiliser selon vos souhaits et créer son contenu et sa structure.

L'arborescence d'environnement diffère de l'arborescence de l'environnement local en ceci qu'une instance de celle-ci est gérée tout au long du flux de messages. Si vous incluez un noeud Compute , un noeud Mapping ou un noeud JavaCompute dans votre flux de messages, vous n'avez pas à indiquer si vous souhaitez que l'arborescence d'environnement soit incluse dans le message de sortie. L'arborescence d'environnement est incluse automatiquement et l'intégralité du contenu de l'arborescence d'environnement d'entrée est conservée dans l'arborescence d'environnement de sortie, soumis à toute modification apportée au noeud. Les modifications que vous apportez sont disponibles sur les noeuds suivants du flux de messages et sur les noeuds précédents si le flux de messages est renvoyé (par exemple, sur un noeud FlowOrder ou TryCatch ).

Si vous voulez créer vos propres informations, faites-le dans l'arborescence d'environnement, dans un sous-arbre appelé Variables.

Voici un exemple d'arborescence d'environnement :

Une arborescence d'environnement, avec une sous-arborescence Variables qui contient cinq enfants. Le cinquième enfant contient également des enfants.

Vous pouvez aussi utiliser les instructions ESQL suivantes pour créer le contenu ci-dessus.

SET Environment.Variables = 
      ROW('granary' AS bread, 'riesling' AS wine, 'stilton' AS cheese);
SET Environment.Variables.Colors[] = 
      LIST{'yellow', 'green', 'blue', 'red', 'black'};
SET Environment.Variables.Country[] = LIST{ROW('UK' AS name, 'pound' AS currency),
   	 ROW('USA' AS name, 'dollar' AS currency)};

Lorsque le traitement du flux de messages est terminé, l'arborescence d'environnement est supprimée.