WebSphere Message Broker, Versão 8.0.0.5 Sistemas operacionais: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte as informações sobre a versão mais recente do produto em IBM Integration Bus, Versão 9.0

Incluindo e Conectando Nós Definidos pelo Usuário

Use o API Java™ do Message Broker para modificar uma instância padrão para incluir nós definidos pelo usuário e para conectar nós definidos pelo usuário a outros nós.

O código obrigatório para incluir e conectar nó definido pelo usuário é diferente do código obrigatório para nós integrados e nós de subfluxo.

Ao escrever código Java para nós definidos pelo usuário, você deve estar ciente das seguintes informações:
  • Nós definidos pelo usuário são suportados pelas instâncias da classe GenericNode. Para incluir nós definidos pelo usuário em fluxos de mensagens, crie instâncias de GenericNode e inclua-as na instância de fluxo de mensagens.
  • Para recuperar instâncias existentes de um no definido pelo usuário, chame getNodeByName() e envie o objeto retornado para um objeto GenericNode.
  • Os terminais definidos nos nós definidos pelo usuário não estão disponíveis automaticamente na API do API Java do Message Broker . Se você criar uma instância de uma classe GenericNode, ela não terá terminais de entrada ou saída listados. Os métodos getInputTerminals() e getOutputTerminals() retornam listas vazias.
  • Para obter um terminal de entrada em um GenericNode, chame getInputTerminal() e passe o nome do terminal que existe no nó genérico. Esse método retorna o terminal de entrada e o torna disponível no objeto de fluxo de mensagens que contém o seu nó genérico. Depois de ter usado getInputTerminal() com um nome de terminal conhecido, esse terminal de entrada será retornado se getInputTerminals() for usado.
  • Para obter um terminal de saída para um GenericNode, chame getOutputTerminal() e passe o nome do terminal que existe no nó genérico. Esse método retorna o terminal de saída e o torna disponível no objeto do fluxo de mensagens que contém o seu nó genérico. Depois de ter usado getOutputTerminal() com um nome de terminal conhecido, esse terminal de saída será retornado se getOutputTerminals() for usado.
O seguinte exemplo mostra como é possível incluir um nó definido pelo usuário em um fluxo de mensagens e conectá-lo a um nó integrado:
  1. Um nó MQInput é criado e incluído no fluxo de mensagens.
  2. Um nó definido pelo usuário é criado usando a classe GenericNode e é incluído no objeto do fluxo de mensagens.
  3. O terminal de saída estático do MQInput é designado à variável outputTerminal.
  4. O terminal de entrada do nó definido pelo usuário é designado à variável inputTerminal usando o método getInputTerminal() com o nome de terminal conhecido In.
  5. Os nós são conectados usando o método connect().
  6. A seção final do código mostra que o nó de entrada agora está disponível para uso no fluxo de mensagens, usando o método getInputTerminals() da instância do nó definido pelo usuário.
MessageFlow mf1 = patternInstanceManager.getMessageFlow("MyFlowProject", "main.msgflow");

MQInputNode mqinNode = new MQInputNode();
mqinNode.setNodeName("My Input Node");
mqinNode.setQueueName("IN");
mf1.addNode(mqinNode);

GenericNode myNode = new GenericNode("MyUserDefinedNode");
myNode.setNodeName("MyNode");
mf1.addNode(myNode);

OutputTerminal outputTerminal = mqinNode.OUTPUT_TERMINAL_OUT;
InputTerminal inputTerminal = myNode.getInputTerminal("In");
mf1.connect(outputTerminal, inputTerminal);

InputTerminal[] inputTerminals = myNode.getInputTerminals();
System.out.println("Input terminals on my node:");
for (int i = 0; i < inputTerminals.length; i++) {
   InputTerminal inputTerminal = inputTerminals[i];
   System.out.println(inputTerminal.getName());
} 
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Última atualização:
        
        Última atualização: 2015-02-28 18:30:57


Tópico de TarefaTópico de Tarefa | Versão 8.0.0.5 | bc31145_