Tempo aproximado para leitura: 00 min

01. Apresentação

Este documento tem por objetivo apresentar as responsabilidades dos adapters de envio, juntamente com os requisitos de software e boas práticas necessárias para o correto desenvolvimento.

02. Responsabilidades

O adapter de envio de mensagens é responsável por preparar os dados a serem enviados e processar o retorno, utilizando para isso os corretos padrões de desenvolvimento. Abaixo temos melhor descritos os padrões mais utilizados e o fluxo de execução padrão da maioria dos adapters.

Padrões de integração (EAI Patterns)

Os padrões de desenvolvimento de integração listados abaixo são os principais para este contexto. É aconselhável o estudo dos demais padrões, sendo melhor descritos no site Enterprise Integration Patterns, SOA Patterns e outras referências bibliográficas.

  • Message Translator
    • Transformação de modelos de dados, mesmo que sem alteração de conteúdo.
    • Ex.: Converter os campos do DataSet para os nomes da Mensagem Padronizada, como a tag "NomeFantasia" para "Name", mantendo o valor original.
  • Content Enricher
    • Enriquecimento dos dados originais.
    • Ex.: A mensagem padronizada trafega somente o InternalId da ForeignKey, sendo necessário obter a coligada e código referentes a este registro.
    • Ex 2.: Caso no dado original não tenham relacionamentos necessários, como o responsável financeiro de um aluno, o adapter deve ser responsável enriquecer o dado com esta informação.
  • Content Filter
    • Padrão que descreve a situação contrária ao Content Enricher, sendo responsável por reduzir a quantidade de informações.
    • Ex.: O DataSet original de Movimentos possui inúmeras tabelas e colunas, mas para a mensagem de deleção de Pedidos de Compra somente a chave do registro deve ser trafegado.

Principais funções do adapter de envio


  1. Realizar a transformação dos dados no formato original para o formato da Mensagem Padronizada.
    1. O adapter é responsável por implementar os padrões apresentados anteriormente, transformando o formato do dado, enriquecendo ou empobrecendo o mesmo, além de realizar as validações necessárias.
    2. Após o adapter encaminhar ao EAI o dado de negócio (BusinessContent), todo o fluxo de envelopamento, salvamento na fila de mensagens e envio ao destinatário é de responsabilidade do EAI.
  2. Transformar e/ou processar as informações de resposta.
    1. Em integrações para consulta de dados a mensagem de resposta deve ser transformada do formato da Mensagem Padronizada TOTVS para o modelo de retorno, esperado pelo módulo que originou a mensagem.
      1. Ex.: Mensagens de consulta de informações devem transformar o dado recebido antes de encaminhar para o módulo de consulta.
    2. Caso a mensagem trafegada demande algum processamento de responsabilidade da camada de integração, este deve ser implementado no método correspondente do adapter.
      1. Ex.: Mensagens de cadastro devem ter o De-Para armazenado na base de dados.
      2. Ex2.: Mensagens assíncronas que devam desbloquear o registro no momento do retorno de sucesso.


06. Assuntos Relacionados