Mudanças entre as edições de "PreProcess"

De Wiki do Leitão
Ir para: navegação, pesquisa
Linha 1: Linha 1:
'''PreProcess''' é uma classe estática do framework utilizada para concentrar os métodos de pré-processamento de informações. Esta classe permite processar os dados antes de valida-los. Por exemplo, processar uma String removendo seus espaços iniciais e finais, e se sobrar uma string vazia, retornar nulo.
'''PreProcess''' é uma classe estática do framework utilizada para concentrar os métodos de pré-processamento e validação de dados. Por exemplo, processar uma String removendo seus espaços iniciais e finais, e se sobrar uma string vazia, retornar nulo.


Com esses métodos simplificamos o código de tratamento das informações fornecidas pelo usuário (ou obtidas de outras fontes sem padrão).
Com esses métodos simplificamos o código de tratamento das informações fornecidas pelo usuário (ou obtidas de outras fontes sem padrão).
== Alguns Métodos de Pré-Processamento ==
Veja alguns métodos disponibilizados na classe:
* '''processStringToNull(String)''' - Processa a string passada, removendo espaços (do começo, do final e espaços duplos entre as palavras) e convertendo para null quando a string for vazia.
* '''processLongToNullIfZeroOrNegative(Long)''' - Processa qualquer número Long para nulo, caso seja menor ou igual a zero.
* '''processCurrency(Float)''' - Processa qualquer número float para conter apenas duas casas decimais. Arredonda para o lado mais justo.
Veja na descrição da classe os demais métodos.
== Alguns Métodos de Validação ==
Os métodos de validação verificam o dado passado e em caso de falha, já emitem uma exception com uma mensagem padrão do sistema, ou mensagem personalizada passada como argumento do método. Veja alguns:
* '''requiredNonNull(Object, String)''' - Valida se o objeto passado não é nulo. Caso seja lança RFWValidationException com mensagem personalizada.
* '''requiredNonNullNorEmptyCritical(Collection<T>, String)''' - Valida se a coleção não é nula nem vazia. Caso a validação falhe uma @link RFWCriticalException é lançada.
Geralmente os métodos se multiplicam recebendo ou não o argumento para a mensagem de exception personalizada (que pode ser tanto a mensagem direta quando o código de erro para ser procurado no Bundle, conforme regras explicadas na página de exceptions), e os métodos com o sufixo '''...Critical()''' que ao invés de emitir uma exception RFWValidationException, emitem uma RFWCriticalException.





Edição das 16h44min de 20 de julho de 2023

PreProcess é uma classe estática do framework utilizada para concentrar os métodos de pré-processamento e validação de dados. Por exemplo, processar uma String removendo seus espaços iniciais e finais, e se sobrar uma string vazia, retornar nulo.

Com esses métodos simplificamos o código de tratamento das informações fornecidas pelo usuário (ou obtidas de outras fontes sem padrão).


Alguns Métodos de Pré-Processamento

Veja alguns métodos disponibilizados na classe:

  • processStringToNull(String) - Processa a string passada, removendo espaços (do começo, do final e espaços duplos entre as palavras) e convertendo para null quando a string for vazia.
  • processLongToNullIfZeroOrNegative(Long) - Processa qualquer número Long para nulo, caso seja menor ou igual a zero.
  • processCurrency(Float) - Processa qualquer número float para conter apenas duas casas decimais. Arredonda para o lado mais justo.


Veja na descrição da classe os demais métodos.


Alguns Métodos de Validação

Os métodos de validação verificam o dado passado e em caso de falha, já emitem uma exception com uma mensagem padrão do sistema, ou mensagem personalizada passada como argumento do método. Veja alguns:

  • requiredNonNull(Object, String) - Valida se o objeto passado não é nulo. Caso seja lança RFWValidationException com mensagem personalizada.
  • requiredNonNullNorEmptyCritical(Collection<T>, String) - Valida se a coleção não é nula nem vazia. Caso a validação falhe uma @link RFWCriticalException é lançada.


Geralmente os métodos se multiplicam recebendo ou não o argumento para a mensagem de exception personalizada (que pode ser tanto a mensagem direta quando o código de erro para ser procurado no Bundle, conforme regras explicadas na página de exceptions), e os métodos com o sufixo ...Critical() que ao invés de emitir uma exception RFWValidationException, emitem uma RFWCriticalException.



PreProcess RFWVO

Esta classe também é capaz de processar as informações dentro de um VO que faça parte da estrutura do RFWVO. Analisando cada um dos seus atributos recursivamente e validando conforme as instruções das RFWMetaAnnotations