Skip to content

Adaptadores de Entrada e Saída

Os Adaptadores são componentes de configuração anexados às versões dos fluxos que definem como a plataforma deve tratar os dados de requisição de entrada e como deve formatar a resposta devolvida ao cliente na saída.

Eles funcionam como um contrato configurável que transforma, extrai ou oculta parâmetros HTTP sem a necessidade de desenhar etapas manuais de parsing dentro do diagrama visual.


Os adaptadores são divididos rigorosamente por seu tipo de atuação (ENTRADA ou SAIDA) e organizados em Grupos de Comportamento. Cada grupo aceita um conjunto específico de opções que alteram a interpretação dos payloads e cabeçalhos.

Tipos de adaptadores
┌─────────────────────────┐
│ Adaptadores de Versão │
└────────────┬────────────┘
┌───────────────┴───────────────┐
▼ ▼
┌───────────────────┐ ┌──────────────────┐
│ ENTRADA │ │ SAÍDA │
├───────────────────┤ ├──────────────────┤
│ - QUERY_PARAMS │ │ - ID_SESSAO │
│ - CORPO_REQUISICAO│ │ - SESSAO │
│ - AUTH │ │ - CORPO_RESPOSTA │
│ - ASYNC │ │ - ERRO │
└───────────────────┘ │ - STATUS_SUCESSO │
└──────────────────┘

ENTRADA

Define como a Engine processa, extrai e disponibiliza os parâmetros recebidos na chamada HTTP antes do fluxo iniciar sua execução.

SAIDA

Define como a resposta final da chamada síncrona é construída e devolvida ao cliente HTTP quando a sessão do fluxo é concluída.


1. Grupo QUERY_PARAMS (Parâmetros de URL)

Section titled “1. Grupo QUERY_PARAMS (Parâmetros de URL)”

Controla a extração dos parâmetros passados via URI na requisição.

  • QUERY_PARAMS_OFF: Não extrai os query params da requisição.
  • QUERY_PARAMS_ON: Extrai os query params da requisição e os disponibiliza no contexto da transação.

2. Grupo CORPO_REQUISICAO (Payload de Entrada)

Section titled “2. Grupo CORPO_REQUISICAO (Payload de Entrada)”

Define o parsing e a interpretação do corpo da requisição HTTP recebida.

  • BODY_JSON: Realiza o parse do corpo da requisição para JSON (requer que o cabeçalho Content-Type seja application/json).

  • BODY_TEXT: Realiza o parse do corpo da requisição para texto simples (requer que o cabeçalho Content-Type seja text/plain).

  • BODY_SUPPRESS: O conteúdo do corpo da requisição é completamente ignorado.

3. Grupo AUTH (Cabeçalho de Autenticação)

Section titled “3. Grupo AUTH (Cabeçalho de Autenticação)”

Regula a validação de autorização recebida nos cabeçalhos HTTP.

  • AUTH_OFF: Não valida autorização na entrada da requisição.
  • AUTH_JWT_BEARER_ON: Valida se existe um token JWT válido enviado no parâmetro Authorization do cabeçalho da requisição.

Controla o suporte do fluxo a chamadas assíncronas (fire-and-forget).

  • ASYNC_OFF: O fluxo é restrito a execuções puramente síncronas.
  • ASYNC_ON: Permite que o fluxo seja executado de forma assíncrona, retornando imediatamente o identificador da sessão.

Define a forma de retorno do identificador único da sessão de execução.

  • ID_HEADER: O ID da sessão é retornado no cabeçalho HTTP de resposta, sob o atributo bdot-id.
  • ID_BODY: O ID da sessão é retornado dentro do corpo da resposta, no atributo id.
  • ID_SUPPRESS: O ID da sessão não é retornado na resposta final.

Define a exposição do estado interno da sessão no retorno da chamada.

  • SESSAO_FULL: Retorna o objeto completo de sessão no corpo da resposta, encapsulado no atributo sessao.
  • SESSAO_CALLBACK: Retorna um endpoint para consulta posterior do objeto de sessão, disponibilizado no atributo sessao.
  • SESSAO_SUPPRESS: Não retorna o objeto de sessão e nem endpoint para consulta.

3. Grupo CORPO_RESPOSTA (Payload de Retorno)

Section titled “3. Grupo CORPO_RESPOSTA (Payload de Retorno)”

Controla a formatação dos dados acumulados durante a execução do fluxo na resposta HTTP.

  • DATA_JSON: Retorna os dados gerados pelo fluxo, realizando o parse JSON e alocando-os dentro do atributo dados.
  • DATA_JSON_FLAT: Retorna os dados gerados pelo fluxo, fazendo o parse JSON e devolvendo o objeto diretamente na raiz do corpo da resposta.
  • DATA_SUPPRESS: Não retorna no corpo da resposta os dados gerados pelo fluxo.

Define como as falhas e exceções de execução são formatadas no retorno ao cliente.

  • ERRO_BOLEANO: Retorna um indicador booleano sinalizando se a execução ocorreu com erro.
  • ERRO_FULL: Retorna um objeto detalhado contendo as informações e especificações do erro ocorrido.
  • ERRO_SUPPRESS: Não retorna se a execução ocorreu com erro.

5. Grupo STATUS_SUCESSO (Código de Status HTTP)

Section titled “5. Grupo STATUS_SUCESSO (Código de Status HTTP)”

Define a sobrescrita do código de status HTTP retornado na resposta em cenários de sucesso.

  • STATUS_SUCESSO_200: Define o status da resposta HTTP para 200 OK.
  • STATUS_SUCESSO_201: Defines o status da resposta HTTP para 201 Created.

  • Mapeamento por Versão: As configurações dos adaptadores são associadas à versão do fluxo e persistidas no banco de dados do Console (EntidadeVersaoAdaptador).

  • Consumo no Runtime: Ao publicar uma versão, o mapa de adaptadores ativados é enviado para o cache de gestão do ambiente. A Engine consome esse conjunto para aplicar as validações e parsing na chegada da requisição e para montar a estrutura do payload de retorno na saída.