A árvore Environment é uma parte da árvore de mensagem lógica na qual você pode armazenar as informações enquanto a mensagem atravessa o fluxo de mensagens.
As raiz da árvore Environment é chamada Environment. Essa árvore está sempre presente na mensagem de entrada; uma árvore Environment vazia é criada quando uma mensagem é recebida e analisada pelo nó input. Você pode utilizar essa árvore como quiser e criar seu conteúdo e estrutura.
Há uma situação na qual o WebSphere Message Broker faz referência (mas nunca cria) um campo nessa árvore. Se você solicitou a coleta de dados para a contabilidade e estatísticas do fluxo de mensagens e indicou que o suporte básico de origem da contabilidade é obrigatório, o intermediário verificará a existência do campo Environment.Broker.AccountingOrigin. Se existir, o intermediário utilizará seu valor para definir a origem da contabilidade para o registro de dados atual. Para obter informações adicionais sobre o uso deste campo, consulteDefinindo a Origem da Contabilidade de Fluxo de Mensagens e da Contabilidade de Estatísticas. (Compare com o Estrutura em Árvore LocalEnvironment, utilizado pelo intermediário em várias situações.)
A árvore Environment difere da árvore LocalEnvironment porque uma única instância dela é mantida em todo o fluxo de mensagens. Se você incluir um nó Compute em seu fluxo de mensagens, não precisará especificar se deseja que a árvore Ambiente seja incluída na mensagem de saída. Isso ocorre automaticamente e todo o conteúdo da árvore Ambiente de entrada é mantido na árvore Ambiente de saída, sujeito a modificações feitas utilizando ESQL no nó. Todas as alterações feitas estão disponíveis para nós subseqüentes no fluxo de mensagens e a nós anteriores, se os fluxos de mensagens retornarem (por exemplo, a um nó FlowOrder ou TryCatch).
É recomendável criar informações na árvore Environment em uma subárvore chamada Variables (embora isso não seja obrigatório).
Um exemplo de uma árvore Ambiente é mostrado abaixo.
Você pode utilizar as seguintes instruções ESQL para criar o conteúdo mostrado acima.
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)};
Quando o processamento do fluxo de mensagens estiver concluído, a árvore Ambiente será descartada.