Class ValidationUtils
ValidationUtils é um utilitário que fornece métodos para validar dados de entrada.
Contém todos os métodos estáticos e não pode ser instanciada.- Since:
- 1.0.0
- Author:
- diegoneves
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic <T> List<T>ensureListIsNotNull(List<T> inputList) Método utilitário genérico para garantir que uma lista não seja nula.static <T> voidensureListIsNotNullOrEmpty(List<T> inputList, Integer term, Class<? extends RuntimeException> customException) Garante que a lista fornecida como parâmetro não seja nula nem vazia.static <T> voidensureListIsNotNullOrEmpty(List<T> inputList, Integer term, String errorMessage, Class<? extends RuntimeException> customException) Valida se a lista fornecida está vazia ou énull.static <T> voidensureListIsNotNullOrEmpty(List<T> inputList, String errorMessage, Class<? extends RuntimeException> customException) Garante que a lista de entrada não é nula e não está vazia.private static voidthrowException(Integer term, Class<? extends RuntimeException> runtimeExceptionClass) private static voidthrowException(Integer term, String message, Class<? extends RuntimeException> runtimeExceptionClass) Método que cria e lança exceções do tipoRuntimeExceptionou suas subclasses de acordo com os parâmetros fornecidos.private static voidthrowException(String message, Class<? extends RuntimeException> runtimeExceptionClass) Lança uma exceção customizada com a mensagem de erro fornecida.private static voidvalidateCustomException(Class<? extends RuntimeException> customException) Valida se umacustomExceptionespecificada não é nula.static <T> voidvalidateNotNullOrEmpty(T input, Integer term, Class<? extends RuntimeException> customException) static <T> voidvalidateNotNullOrEmpty(T input, Integer term, String errorMessage, Class<? extends RuntimeException> customException) Este método genérico garante que o objeto de entrada (um parâmetro genérico) não seja nulo ou vazio.static <T> voidvalidateNotNullOrEmpty(T input, String errorMessage, Class<? extends RuntimeException> customException) Valida a entrada com base nas condições para nulo e vazio (no caso de String).
-
Field Details
-
CUSTOM_EXCEPTION_ERROR
- See Also:
-
-
Constructor Details
-
ValidationUtils
private ValidationUtils()
-
-
Method Details
-
validateNotNullOrEmpty
public static <T> void validateNotNullOrEmpty(T input, Integer term, Class<? extends RuntimeException> customException) -
validateNotNullOrEmpty
public static <T> void validateNotNullOrEmpty(T input, String errorMessage, Class<? extends RuntimeException> customException) Valida a entrada com base nas condições para nulo e vazio (no caso de String). Lança uma exceção com a mensagem de erro fornecida, se uma destas condições for verdadeira. Este método pode ser utilizado para a validação de entradas onde dados são obrigatórios.- Type Parameters:
T- o tipo de objeto a ser verificado- Parameters:
input- o objeto a ser validadoerrorMessage- a mensagem de erro a ser anexada à exceção em caso de falhas na validaçãocustomException- a classe da exceção RuntimeException a ser lançada- Throws:
RuntimeException- se o objeto fornecido for nulo ou se fora uma instância de String e estiver vazia
-
validateNotNullOrEmpty
public static <T> void validateNotNullOrEmpty(T input, Integer term, String errorMessage, Class<? extends RuntimeException> customException) Este método genérico garante que o objeto de entrada (um parâmetro genérico) não seja nulo ou vazio. Se o objeto for uma instância de String, ele verifica se a string, depois de ser aparada, ainda é vazia. Se o objeto for nulo ou uma instância de String que é vazia após o trim, ele lança uma exceção.- Parameters:
input- - O objeto genérico que será verificado quanto à nulidade ou vazio. Isso pode ser qualquer tipo de objeto.term- - É um termo numérico que será usado na função de manipulação de exceção. Sua aplicação específica será determinada pela função que vai lidar com a exceção.errorMessage- - Esta é uma mensagem de erro personalizada que será passada para a função de manipulação de exceção. Isso permite que os usuários determinem a mensagem específica que será exibida quando a exceção for acionada.customException- - A classe da exceção personalizada que será lançada se o objeto de entrada (input) for nulo ou se for uma instância da String que é vazia após ser cortada. Isso permite que o tipo exato de exceção que será lançada possa ser determinado em tempo de execução.- Throws:
RuntimeException- - Se o objeto 'input' verificado é nulo ou uma instância de uma String que é vazia quando cortada, este método irá lançar uma instância da subclasse de RuntimeException especificada pelo parâmetro 'customException'.NullPointerException- - Se o parâmetro 'customException' for nulo, a implementação desta função provavelmente lançará um NullPointerException.
-
ensureListIsNotNullOrEmpty
public static <T> void ensureListIsNotNullOrEmpty(List<T> inputList, Integer term, Class<? extends RuntimeException> customException) Garante que a lista fornecida como parâmetro não seja nula nem vazia.Este método verifica se a lista inputList fornecida é nula ou vazia. Se a lista for nula ou vazia, ele lança uma exceção personalizada do tipo fornecido. Além disso, valida se a exceção personalizada fornecida é instanciável e lança uma IllegalArgumentException se não for.
- Parameters:
inputList- A lista que deve ser verificada para nulidade e vazio.term- Um termo ou parâmetro arbitrário que será usado durante a criação e lançamento de exceções.customException- A classe da exceção personalizada a ser lançada se a lista estiver nula ou vazia.- Throws:
IllegalArgumentException- Se a classe customException não for uma RuntimeException instanciável.
-
ensureListIsNotNullOrEmpty
public static <T> void ensureListIsNotNullOrEmpty(List<T> inputList, String errorMessage, Class<? extends RuntimeException> customException) Garante que a lista de entrada não é nula e não está vazia. Se a lista de entrada é nula ou vazia, uma exceçãoRuntimeExceptioncustomizada é lançada com a mensagem de erro fornecida.Este método pode ser usado quando se deseja garantir que um objeto Lista seja não nulo e não vazio, evitando a detecção tardiamente de valores nulos ou listas vazias.
- Parameters:
inputList- a Lista de objetos para verificar.errorMessage- a mensagem de erro para incluir na exceção se a lista de entrada for nula ou vazia.customException- a classe de exceção RuntimeException a ser lançada.- Throws:
RuntimeException- se a lista de entrada for nula ou vazia.
-
ensureListIsNotNullOrEmpty
public static <T> void ensureListIsNotNullOrEmpty(List<T> inputList, Integer term, String errorMessage, Class<? extends RuntimeException> customException) Valida se a lista fornecida está vazia ou énull. Se a lista é nula ou vazia, lança uma exceção definida pelo usuário com uma mensagem de erro e termo especificado.- Type Parameters:
T- O tipo genérico da lista.- Parameters:
inputList- A lista a ser verificada. Pode ser de qualquer tipo<T>.term- Um número inteiro que pode ser usado para representar um termo de erro ou código de erro específico.errorMessage- A mensagem de erro que deve ser incluída na exceção lançada caso a lista seja nula ou vazia.customException- A classe de exceção definida pelo usuário a ser lançada caso a lista seja nula ou vazia. Deve estenderRuntimeException.- Throws:
ValidationUtilsException- O método primeiro valida a instânciacustomExceptionpara garantir que seja válida e instanciável. Em seguida, verifica se ainputListé nula ou vazia. Se for uma dessas, a exceçãocustomExceptioné lançada com oterme aerrorMessagefornecidos
-
validateCustomException
Valida se umacustomExceptionespecificada não é nula.O método
validateCustomExceptioné um método estático e privado que recebe como parâmetro um objeto do tipo Class que é um subtipo deRuntimeException. O método então verifica se o parâmetrocustomExceptioné nulo e, em caso afirmativo, lança umaValidationUtilsExceptioncom uma mensagem de erro personalizada.- Parameters:
customException- objeto da subclasse deRuntimeExceptionpara ser validado- Throws:
ValidationUtilsException- se ocustomExceptionfor nulo
-
ensureListIsNotNull
Método utilitário genérico para garantir que uma lista não seja nula. Esse método recebe uma lista e retorna uma lista vazia se a lista de entrada for nula. Se a lista de entrada não for nula, a lista de entrada será retornada sem modificação.- Parameters:
inputList- a lista de entrada para verificar se é nula- Returns:
- a lista de entrada se não for nula, ou uma nova lista vazia se a lista de entrada for nula
-
throwException
private static void throwException(Integer term, Class<? extends RuntimeException> runtimeExceptionClass) -
throwException
private static void throwException(String message, Class<? extends RuntimeException> runtimeExceptionClass) Lança uma exceção customizada com a mensagem de erro fornecida.- Parameters:
message- a mensagem de erro a ser anexada à exceçãoruntimeExceptionClass- a classe da exceção RuntimeException a ser lançada- Throws:
ValidationUtilsException- se houve um erro ao tentar lançar a exceção
-
throwException
private static void throwException(Integer term, String message, Class<? extends RuntimeException> runtimeExceptionClass) Método que cria e lança exceções do tipoRuntimeExceptionou suas subclasses de acordo com os parâmetros fornecidos. Além disso, essa função gerencia a possibilidade de umaReflectiveOperationExceptiondecorrente da tentativa de instanciar a exceção solicitada. Nesse caso, a função criará e lançará uma instância deValidationUtilsExceptioncom a mensagem daReflectiveOperationExceptionoriginal.- Parameters:
term- um Integer que é usado como parâmetro para a função de construtor daRuntimeExceptiondesejada.message- uma mensagem de String que é passada para a função de construtor daRuntimeExceptiondesejada e usada para geração de logs de erro.runtimeExceptionClass- a classe de exceção Class<? extends RuntimeException> que é desejada para ser lançada.Uso:
throwException(100, "Valor inválido", IllegalArgumentException.class);- Throws:
ValidationUtilsException- é lançado quando ocorre umReflectiveOperationExceptionna tentativa de construir a exceção desejada. AValidationUtilsExceptionrecebe o nome simples da classe de exceção desejada e aReflectiveOperationExceptionoriginal.
-