Um evento é uma mensagem que notifica outros componentes sobre uma mudança de estado, uma ação ou um fato ocorrido. O Event Trigger responde a um evento específico gerado por outro pipeline por meio do Event Publisher. Para ler sobre esse componente, clique aqui.

Mais informações sobre Arquitetura Orientada a Eventos podem ser encontradas aqui.

Dê uma olhada nos parâmetros de configuração do trigger:

  • Event Name: nome do evento ao qual o trigger responde.
  • Expiration: tempo de permanência do evento em fila (em milissegundos). Se o expiration for = 0 ou um valor maior que 6h, então o expiration será 1/4 do valor Maximum timeout especificado.
  • Maximum Timeout: tempo máximo de execução do pipeline iniciado pelo Event Trigger (em milissegundos).
  • Allow Redelivery of Messages: se ativada, a opção permite que mensagens sejam entregues novamente caso o Pipeline Engine falhe.

Fluxo de Mensagens

Entrada

O trigger espera uma mensagem válida em formato JSON. A mensagem recebida é exatamente aquela que foi definida no atributo body do componente Event Publisher.

{
"id": "1",
"description": "Description of the case"
}

Saída

O componente repassa a mensagem recebida do componente anterior sem nenhuma alteração. No caso do exemplo acima, a mensagem repassada seria:

{
"id": "1",
"description": "Description of the case"
}

Event Trigger em Ação

Para implementar uma Arquitetura Orientada a Eventos é necessário definir:

  • o pipeline que publicará o evento (Publicador)
  • um ou mais pipelines que irão consumir o evento (Assinantes)

Para configurar o pipeline que publicará o evento:

  • arraste o Event Publisher para o canvas do pipeline Publicador;
  • configure o nome do evento na propriedade “Evento” do Event Publisher;
  • caso deseje passar um payload junto com o evento, defina o conteúdo da propriedade “Body”.

Para configurar o pipeline que consumirá o evento:

  • altere o tipo do trigger para Event no pipeline Assinante;
  • abra as configurações do trigger e informe o nome do evento a ser consumido na propriedade “Nome do Evento”. Esse valor deve ser idêntico ao informado no Event Publisher do pipeline Publicador.
Encontrou sua resposta?