/attribute-validator-api

This repository contains the code for a DSL to validate API attributes in Spring Boot.

Primary LanguageJava

Projeto Validador de Textos

github

Equipe

Projeto

Esse projeto tem como objetivo criar uma DSL para validar textos em java. Para criar essa ferramenta é utilizado o compilador para java Javacc.

Contexto

Uma DSL que valida texto pode ser utilizada em diversos cenários. Exemplos:

  1. Para validar o email do usuário antes de fazer login.
  2. Em um aplicativo de gerenciamento de contatos, pode ser utilizada para validar nome ou email no formulário de cadastro.
  3. Em um sistema de envio de emails, a DSL pode ser usada para garantir que os endereços de email fornecidos sejam válidos antes do envio dos emails.

Gramática

Gramática no JAVACC

BNF

<start> ::= (<name> | <email>)*

<name> ::= <NAME>

<email> ::= <EMAIL>

<NAME> ::= (["a"-"z","A"-"Z"])+

<EMAIL> ::= (["a"-"z","A"-"Z","0"-"9","+","-","_",".","@"])+

Configurações para execução:

  1. Baixe e instale o JavaCC: http://javacc.org/;
  2. Compile o arquivo .jj;
javacc ValidationDSL.jj
  1. Compile o arquivo Java gerado;
javac ValidationDSL.java
  1. Execute o arquivo Java
java ValidationDSL