Histórico da Página
...
Informações | ||
---|---|---|
| ||
|
Características:
- 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.
Desenvolvendo método para envio
...
Antes de desenvolver o adapter de negócios, deve-se atentar ao tipo de integração que será desenvolvida: síncrona e/ou assíncrona. Essa informação determina a dinâmica da integração, por exemplo, em uma integração assíncrona, a resposta não será imediata e o retorno do envio será nulo, logo, cabe ao adapter de negócio ou a própria tela tratar esse tipo de integração.
Características de uma classe de envio:
- Importar classes do EAI;
- Importar classes da mensagem de negócio;
- Implementar IBusinessAdapter;
- Implementar ISenderAdapter;
- No método criado para envio, invocar método dispatchMessage do EAIEngine.
Para criação do objeto BusinessMessage para envio ao EAI através do método dispatchMessage, deve ser utilizada a classe da mensagem de negócio. Exemplo:
Informações |
---|
Depois de preenchido os atributos de negócio da mensagem, o objeto deve ser enviado ao EAI para integração:
Informações |
---|
Nesse momento, deve se atentar ao tipo de integração definido no atributo DeliveryType da mensagem de negócio: síncrono (sync) ou assíncrono (async).
No caso de uma integração síncrona, a resposta (oResponse - RespondeMessage) virá preenchida com ou sem erro na integração e deve ser tratada pelo adapter logo após a chamada do método dispatchMessage.
Em uma integração assíncrona, a resposta (oResponse – ResponseMessage) virá com o valor nulo (?). O tratamento do retorno dessa integração, deverá ser tratada no método processMessage(ResponseMessage), que será invocado automaticamente pelo EAI posteriormente.