A amostra .NETCompute Node filtra, modifica e transforma as mensagens usando código que foi gravado em C#. É possível usar o nó .NETCompute em brokers do Windows para construir mensagens de saída e interagir com aplicativos Microsoft .NET Framework (.NET) ou Modelo de Objeto Componente (COM).
A amostra usa nós .NETCompute cujo código foi gravado em C# e, em seguida, construído em um conjunto (com a extensão .dll) usando o Microsoft Visual Studio 2010. O WebSphere Message Broker instala Modelos no Microsoft Visual Studio que fornecem uma estrutura básica do método Avaliar na qual um desenvolvedor de fluxo pode então incluir seu próprio código. Este é um conceito semelhante aos nós Compute, JavaCompute e PHPCompute. Os leitores dessa amostra podem não ter acesso a uma instalação do Microsoft Visual Studio, portanto, um arquivo de conjunto pré-construído é fornecido. Isso significa que mesmo sem o Microsoft Visual Studio, ainda é possível implementar e executar a amostra. O tópico Preparando a Implementação da Amostra .NETCompute Node descreve onde o arquivo do conjunto está localizado e como pode ser usado. A amostra também fornece o código de origem C#, sobre o qual é possível ler aqui.
Uma empresa de varejo possui várias lojas em diferentes locais de uma cidade. As lojas realizam transações de vendas durante todo o dia. Cada transação resulta no roteamento de uma mensagem XML para uma fila de entrada em um escritório central de TI. As lojas também estão apresentando um programa de fidelidade ao cliente. Para cada registro de cliente no programa de fidelidade, uma mensagem XML em um formato diferente (contendo os detalhes pessoais do cliente) é enviada para a mesma fila de entrada. A empresa decidiu usar o WebSphere Message Broker para processar as mensagens. O roteamento e as transformações usadas na solução demonstram os recursos do nó .NETCompute.
O fluxo de mensagens usado é:
As mensagens passam pelo fluxo de mensagens da seguinte forma:
As seções a seguir incluem exemplos dos dois diferentes tipos de mensagens XML de teste de entrada (SaleEnvelope e LoyaltyProgram). As mensagens de saída são incluídas na seção Executando a Amostra.
<SaleEnvelope> <Header> <SaleListCount>1</SaleListCount> </Header> <SaleList> <Invoice><Initial>K</Initial> <Initial>A</Initial> <Surname>Braithwaite</Surname> <Item><Code>00</Code> <Code>01</Code> <Code>02</Code> <Description>Twister</Description> <Category>Games</Category> <Price>00.30</Price> <Quantity>01</Quantity> </Item> <Item> <Code>02</Code> <Code>03</Code> <Code>01</Code> <Description>The Times Newspaper</Description> <Category>Books and Media</Category> <Price>00.20</Price> <Quantity>01</Quantity> </Item> <Balance>00.50</Balance> <Currency>Sterling</Currency> </Invoice> <Invoice> <Initial>T</Initial> <Initial>J</Initial> <Surname>Dunnwin</Surname> <Item> <Code>04</Code> <Code>05</Code> <Code>01</Code> <Description>The Origin of Species</Description> <Category>Books and Media</Category> <Price>22.34</Price> <Quantity>02</Quantity> </Item> <Item> <Code>06</Code> <Code>07</Code> <Code>01</Code> <Description>Microscope</Description> <Category>Miscellaneous</Category> <Price>36.20</Price> <Quantity>01</Quantity> </Item> <Balance>81.84</Balance> <Currency>Euros</Currency> </Invoice> </SaleList> <Trailer> <CompletionTime>12.00.00</CompletionTime> </Trailer> </SaleEnvelope>
<LoyaltyProgram xmlns:applicant="http://www.example.org/applicant" xmlns:store="http://www.example.org/store"> <applicant:ApplicantDetails> <applicant:FirstName>Ben</applicant:FirstName> <applicant:LastName>Thompson</applicant:LastName> <applicant:HouseNo>1</applicant:HouseNo> <applicant:Street>Happiness Avenue</applicant:Street> <applicant:Town>Grumpyville</applicant:Town> </applicant:ApplicantDetails> <store:StoreDetails> <store:StoreID>001</store:StoreID> </store:StoreDetails> </LoyaltyProgram>
Após ter importado e implementado a amostra, você pode executá-la seguindo as instruções na seção Executando a Amostra.