Padrões de Integração Empresarial (EIPs)

EIPs são padrões de design usados para integrar diferentes sistemas através de várias técnicas de mensagens e roteamento. O Apache Camel implementa uma ampla gama de EIPs para facilitar o desenvolvimento de rotas de integração complexas.

Aqui estão os EIPs que você pode usar no Sensedia Integrations:

EIP Descrição

Aggregate

Combina múltiplas mensagens em uma única mensagem.

Choice

Roteia mensagens com base em condições, similar a uma estrutura if-else.

Circuit Breaker

Impede que um sistema execute operações que provavelmente falharão.

Claim Check

Armazena e recupera mensagens de um armazenamento externo.

Convert Body To

Altera o corpo da mensagem para um formato diferente.

Delay

Introduz um atraso antes de passar a mensagem para o próximo passo.

Do Catch

Trata exceções durante o processamento da mensagem.

Do Try

Tenta executar um bloco de código, tratando exceções se ocorrerem.

Do Finally

Executa um bloco de código após um bloco try-catch, independentemente do resultado.

Dynamic Router

Direciona mensagens para diferentes destinos com base em condições dinâmicas.

Enrich

Adiciona dados adicionais a uma mensagem.

Filter

Remove mensagens que não atendem a certos critérios.

From

Especifica a fonte de onde as mensagens são recebidas.

Idempotent Consumer

Garante que as mensagens sejam processadas apenas uma vez.

Intercept

Intercepção e processamento de mensagens em pontos específicos da rota.

Intercept From

Intercepção de mensagens de uma fonte específica.

Intercept Send To Endpoint

Intercepção de mensagens enviadas a um endpoint específico.

Log

Registra mensagens para monitoramento e depuração.

Loop

Repete o processamento de mensagem um número especificado de vezes.

Marshal

Converte uma mensagem para um formato de dados específico.

Multicast

Envia uma mensagem para múltiplos destinos.

On Exception

Trata exceções para condições de erro específicas.

Otherwise

Especifica a ação padrão quando nenhuma outra condição é atendida.

Pipeline

Processa mensagens através de uma série de etapas.

Policy

Aplica regras ou políticas específicas ao processamento de mensagens.

Poll Enrich

Recupera dados adicionais de uma fonte e os adiciona a uma mensagem.

Process

Adiciona lógica personalizada dentro de um fluxo de integração, como anexar ou remover arquivos ao enviar e-mails ou fazer upload de arquivos para uma URL usando multipart/form-data.

Exemplos:

  • Adicionando anexos

    - setHeader:
          name: "SensediaAttachmentName"
          expression:
            constant: "notafiscal.pdf"
      - process:
          ref: "#class:com.sensedia.ipaas.camel.processor.AddAttachmentProcessor"
  • Removendo anexos

            - setHeader:
                name: "SensediaAttachmentName"
                expression:
                  constant: "*"
            - process:
                ref: "#class:com.sensedia.ipaas.camel.processor.RemoveAttachmentProcessor"

No campo constant do step setHeader, você pode informar o nome do arquivo a ser removido ou usar * para remover todos os arquivos anexados.

Recipient List

Envia uma mensagem para uma lista de destinatários.

Remove Header

Remove um cabeçalho específico de uma mensagem.

Remove Headers

Remove múltiplos cabeçalhos de uma mensagem.

Remove Property

Remove uma propriedade específica de uma mensagem.

Remove Properties

Remove múltiplas propriedades de uma mensagem.

Resequence

Reordena mensagens com base em critérios específicos.

REST DSL

Define serviços RESTful usando uma linguagem específica de domínio.

Rollback

Reverte alterações se ocorrer um erro durante o processamento.

Routing Slip

Roteia mensagens através de uma sequência de destinos.

Saga

Gerencia transações de longa duração com compensação.

Sample

Seleciona um subconjunto de mensagens com base em critérios de amostragem.

Script

Executa scripts para o processamento de mensagens.

Service Call

Invoca serviços externos.

Set Body

Define ou modifica o corpo da mensagem.

Set Exchange Pattern

Altera o padrão de troca de mensagens (por exemplo, de InOnly para InOut).

Set Header

Define ou modifica um cabeçalho da mensagem.

Set Property

Define ou modifica uma propriedade da mensagem.

Sort

Ordena mensagens com base em critérios específicos.

Split

Divide uma mensagem em múltiplas mensagens menores.

Step

Marca um passo na rota para monitoramento e rastreamento.

Stop

Interrompe o processamento de mensagens.

Throttle

Limita a taxa na qual as mensagens são processadas.

To

Envia uma mensagem para um endpoint específico.

To Dynamic

Determina dinamicamente o endpoint para o qual uma mensagem é enviada.

Transacted

Garante que o processamento de mensagens seja transacional.

Transform

Altera o conteúdo ou formato da mensagem.

Unmarshal

Converte uma mensagem de um formato de dados específico.

Validate

Verifica se uma mensagem atende a certos critérios.

When

Especifica condições para o roteamento de mensagens.

When Skip Send To Endpoint

Pula o envio de uma mensagem a um endpoint com base em condições.

Wire Tap

Envia uma cópia de uma mensagem para uma rota separada para monitoramento ou auditoria.

Para mais informações sobre EIPs, acesse a documentação oficial do Apache Camel.

Editando EIPs no modo diagrama

Após criar o script de um fluxo de integração no modo Source, você pode editar os EIPs da integração no modo diagrama.

Para isso, siga os passos abaixo:

  1. Acesse a aba de exibição do modo diagrama.

  2. Selecione o EIP que deseja editar.

  3. Clique no ícone de três pontinhos three dots icon.

    1. Depois clique em Edit para abrir o formulário de edição do EIP.

    2. Se o EIP selecionado possuir um subfluxo (access subflow icon), a opção de acessar o subfluxo também será exibida.

  4. Preencha os campos solicitados para o EIP. Com exceção dos campos booleanos, é permitido preencher os demais campos com variáveis (flow variables).

  5. Ao finalizar a configuração do formulário, clique em CONFIRM. As alterações realizadas serão automaticamente refletidas no script do fluxo de integração no modo Source.

    É possível clicar em CONFIRM mesmo que existam campos obrigatórios incompletos. Nesse caso, um ícone de alerta será exibido no step correspondente.
  6. Para salvar as informações inseridas no formulário, clique em SAVE no canto superior direito da tela.

Apenas os parâmetros simples podem ser editados. O parâmetro URI, presente nos EIPs To, ToD e Wiretap, é um parâmetro simples, mas não pode ser editado diretamente no formulário. Isso ocorre porque ele está relacionado ao componente utilizado. Para alterá-lo, acesse a aba Source Code e faça a modificação diretamente no script.

A animação abaixo mostra a edição do formulário de um EIP e as alterações refletidas no script no modo Source:

eip editing form example

Thanks for your feedback!
EDIT

Share your suggestions with us!
Click here and then [+ Submit idea]