Dados de Entrada
O runner de Dados de Entrada (DADOS_ENTRADA) é o componente core responsável por aplicar regras de validação estrutural sobre os dados recebidos na chamada HTTP de entrada antes que o fluxo prossiga para etapas de negócio.
Ele consome os parâmetros armazenados na transação inicial ($entrada), valida campos de query params ou do corpo da requisição contra regras de obrigatoriedade e Expressões Regulares (Regex). Caso qualquer validação falhe, o runner interrompe imediatamente a execução da sessão e sinaliza o erro para o orquestrador.
Ciclo de Funcionamento
Section titled “Ciclo de Funcionamento”-
Leitura da Transação
O runner acessa os parâmetros de entrada gravados no contexto da sessão (
entrada.queryParamseentrada.body). -
Validação de Query Params
Se a validação de consulta estiver ativa, varre a lista de parâmetros configurados e compara seus valores contra as Expressões Regulares (Regex) esperadas.
-
Validação de Corpo (Body)
Se a validação do corpo estiver ativa, realiza o parse da estrutura enviada e valida a presença e o formato dos atributos contra as regras de Regex.
-
Decisão do Processamento
-
Sucesso: Atualiza o indicador de validação de entrada na sessão e devolve o controle ao orquestrador para avançar para a próxima etapa do fluxo.
-
Falha: Lança uma exceção de entrada inválida, interrompendo a sessão com status
400 Bad Request.
-
Parâmetros e Formulário de Configuração
Section titled “Parâmetros e Formulário de Configuração”Os parâmetros deste runner são configurados no formulário do Editor Visual e armazenados no documento de definição da etapa (DefinicaoDeEtapa):
| Campo no Formulário / Atributo JSON | Tipo | Obrigatório | Descrição |
|---|---|---|---|
bdot:validaQuery |
Boolean |
Não | Habilita ou desabilita a chave de validação sobre os query params da requisição. |
bdot:queryParams |
String (JSON) |
Condicional | Documento JSON que define a lista de atributos esperados na URL e suas respectivas Expressões Regulares (Regex) para validação. Obrigatório se bdot:validaQuery = true. |
bdot:validaBody |
Boolean |
Não | Habilita ou desabilita a chave de validação sobre o corpo (body) da requisição. |
bdot:body |
String (JSON) |
Condicional | Documento JSON que define os campos esperados no corpo da requisição e suas respectivas Expressões Regulares (Regex) de validação. Obrigatório se bdot:validaBody = true. |
Exemplo de Configuração JSON da Etapa
Section titled “Exemplo de Configuração JSON da Etapa”Abaixo está um exemplo da estrutura do mapa definicao gerado pelo formulário do Editor Visual para este runner:
{ "bdot:validaQuery": true, "bdot:queryParams": "{\"status\": \"^(ATIVO|INATIVO)$\", \"pagina\": \"^[0-9]+$\"}", "bdot:validaBody": true, "bdot:body": "{\"cliente\": {\"cpf\": \"^\\\\d{11}$\", \"email\": \"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\\\.[a-zA-Z]{2,}$\"}}"}