Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

  • Cabeçalho importa duas bibliotecas:
    • Engine do EAI;
    • Classe de mensagem de negócio.
  • Classe implementa as interfaces de envio e recebimento, além da interface de adapter de negócio;
  • Propriedade da classe:
    • TransactionName: Nome da transação. No exemplo a transação é a "whois";
    • TransactionVersion: Versão da transação. É recomendável que esse campo utilize a mesma versão da classe da mensagem de negócio, como está no exemplo;
  • Métodos da classe:
    • processMessage(BusinessMessage): Este método é responsável por receber uma mensagem de integração de um sistema externo. O retorno desse método será um ResponseMessage com ou sem erros;
    • processMessage(ResponseMessage): Em uma integração de envio assíncrono, a resposta do processamento do sistema externo será recebido neste método. Seu retorno será apenas lógico, informando erro ou não;
    • sendMessage(CHARACTER): Na verdade, esse método pode ser definido com nome, parâmetro e retorno de acordo com o programador. Para enviar a mensagem para o sistema externo, deve-se invocar o método dispatchMessage do EAIEngine, passando a mensagem (BusinessMessage) por parâmetro. No caso de uma integração assíncrona, seu retorno será nulo (?), no caso de uma integração síncrona, o retorno será um ResponseMessage com ou sem erros.

Tipos de Entrega (Delivery Type)

...

Delivery Type é a denominação pela qual é referenciado o tipo de comunicação entre os aplicativos. Em determinados modelos de dados, o programa necessita de uma resposta imediata do aplicativo externo. Já em outras vezes, o modelo não necessita de uma resposta ou não naquele determinado momento, economizando o tempo que o programa aguarda durante troca de mensagens.

Com isso, foram criados dois tipos de entrega:

  • Sync: O processamento da mensagem do tipo síncrono acontece no momento da execução, ou seja, o aplicativo interno aguarda a resposta do aplicativo externo para continuar a execução. Normalmente, mas não necessariamente, utiliza-se essa funcionalidade quando são necessárias mais informações no retorno, como dados complementares aos enviados;
  • Async: Quando enviada uma mensagem do tipo assíncrono, o aplicativo interno não aguarda uma resposta do aplicativo externo para continuar a execução. O destino recebe a mensagem e coloca em uma fila junto com outras mensagens assíncronas. Posteriormente, o processamento delas é efetuado na ordem em que chegaram. Ou seja, caso a origem necessite de retorno, será feito em um momento futuro e não durante a execução do programa. É comum o uso dessas mensagens para replicação de cadastros simples, onde não envolve processamento complexo.