Class DefaultConstraintValidators
- java.lang.Object
-
- io.micronaut.validation.validator.constraints.DefaultConstraintValidators
-
- All Implemented Interfaces:
ConstraintValidatorRegistry
@Singleton @Introspected public class DefaultConstraintValidators extends java.lang.Object implements ConstraintValidatorRegistry
A factory bean that contains implementation for many of the default validations. This approach is preferred as it generates less classes and smaller byte code than defining a validator class for each case.- Since:
- 1.2
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected class
DefaultConstraintValidators.ValidatorKey<A extends java.lang.annotation.Annotation,T>
Key for caching validators.
-
Constructor Summary
Constructors Modifier Constructor Description DefaultConstraintValidators()
Default constructor.protected
DefaultConstraintValidators(io.micronaut.context.BeanContext beanContext)
Constructor used for DI.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <A extends java.lang.annotation.Annotation,T>
java.util.Optional<ConstraintValidator<A,T>>findConstraintValidator(java.lang.Class<A> constraintType, java.lang.Class<T> targetType)
Finds a constraint validator for the given type and target type.protected <A extends java.lang.annotation.Annotation,T>
java.util.Optional<ConstraintValidator>findLocalConstraintValidator(java.lang.Class<A> constraintType, java.lang.Class<T> targetType)
Last chance resolve for constraint validator.ConstraintValidator<javax.validation.constraints.AssertFalse,java.lang.Boolean>
getAssertFalseValidator()
TheAssertFalse
validator.ConstraintValidator<javax.validation.constraints.AssertTrue,java.lang.Boolean>
getAssertTrueValidator()
TheAssertTrue
validator.DecimalMaxValidator<java.lang.CharSequence>
getDecimalMaxValidatorCharSequence()
TheDecimalMax
validator for char sequences.DecimalMaxValidator<java.lang.Number>
getDecimalMaxValidatorNumber()
TheDecimalMax
validator for number.DecimalMinValidator<java.lang.CharSequence>
getDecimalMinValidatorCharSequence()
TheDecimalMin
validator for char sequences.DecimalMinValidator<java.lang.Number>
getDecimalMinValidatorNumber()
TheDecimalMin
validator for number.DigitsValidator<java.lang.CharSequence>
getDigitsValidatorCharSequence()
TheDigits
validator for char sequence.DigitsValidator<java.lang.Number>
getDigitsValidatorNumber()
TheDigits
validator for number.ConstraintValidator<javax.validation.constraints.Future,java.util.Date>
getFutureDateConstraintValidator()
TheFuture
validator for Date accessor.ConstraintValidator<javax.validation.constraints.FutureOrPresent,java.util.Date>
getFutureOrPresentDateConstraintValidator()
TheFutureOrPresent
validator for Date accessor.ConstraintValidator<javax.validation.constraints.FutureOrPresent,java.time.temporal.TemporalAccessor>
getFutureOrPresentTemporalAccessorConstraintValidator()
TheFutureOrPresent
validator for temporal accessor.ConstraintValidator<javax.validation.constraints.Future,java.time.temporal.TemporalAccessor>
getFutureTemporalAccessorConstraintValidator()
TheFuture
validator for temporal accessor.ConstraintValidator<javax.validation.constraints.Max,java.lang.Number>
getMaxNumberValidator()
TheMax
validator for numbers.ConstraintValidator<javax.validation.constraints.Min,java.lang.Number>
getMinNumberValidator()
TheMin
validator for numbers.ConstraintValidator<javax.validation.constraints.Negative,java.lang.Number>
getNegativeNumberValidator()
TheNegative
validator for numbers.ConstraintValidator<javax.validation.constraints.NegativeOrZero,java.lang.Number>
getNegativeOrZeroNumberValidator()
TheNegativeOrZero
validator for numbers.ConstraintValidator<javax.validation.constraints.NotBlank,java.lang.CharSequence>
getNotBlankValidator()
TheNotBlank
validator for char sequences.ConstraintValidator<javax.validation.constraints.NotEmpty,boolean[]>
getNotEmptyBooleanArrayValidator()
TheNotEmpty
validator for boolean[].ConstraintValidator<javax.validation.constraints.NotEmpty,byte[]>
getNotEmptyByteArrayValidator()
TheNotEmpty
validator for byte[].ConstraintValidator<javax.validation.constraints.NotEmpty,char[]>
getNotEmptyCharArrayValidator()
TheNotEmpty
validator for char[].ConstraintValidator<javax.validation.constraints.NotEmpty,java.lang.CharSequence>
getNotEmptyCharSequenceValidator()
TheNotEmpty
validator for char sequence.ConstraintValidator<javax.validation.constraints.NotEmpty,java.util.Collection>
getNotEmptyCollectionValidator()
TheNotEmpty
validator for collection.ConstraintValidator<javax.validation.constraints.NotEmpty,double[]>
getNotEmptyDoubleArrayValidator()
TheNotEmpty
validator for double[].ConstraintValidator<javax.validation.constraints.NotEmpty,float[]>
getNotEmptyFloatArrayValidator()
TheNotEmpty
validator for float[].ConstraintValidator<javax.validation.constraints.NotEmpty,int[]>
getNotEmptyIntArrayValidator()
TheNotEmpty
validator for int[].ConstraintValidator<javax.validation.constraints.NotEmpty,long[]>
getNotEmptyLongArrayValidator()
TheNotEmpty
validator for long[].ConstraintValidator<javax.validation.constraints.NotEmpty,java.util.Map>
getNotEmptyMapValidator()
TheNotEmpty
validator for map.ConstraintValidator<javax.validation.constraints.NotEmpty,java.lang.Object[]>
getNotEmptyObjectArrayValidator()
TheNotEmpty
validator for Object[].ConstraintValidator<javax.validation.constraints.NotEmpty,short[]>
getNotEmptyShortArrayValidator()
TheNotEmpty
validator for short[].ConstraintValidator<javax.validation.constraints.NotNull,java.lang.Object>
getNotNullValidator()
TheNotNull
validator.ConstraintValidator<javax.validation.constraints.Null,java.lang.Object>
getNullValidator()
TheNull
validator.ConstraintValidator<javax.validation.constraints.Past,java.util.Date>
getPastDateConstraintValidator()
ThePast
validator for Date accessor.ConstraintValidator<javax.validation.constraints.PastOrPresent,java.util.Date>
getPastOrPresentDateConstraintValidator()
ThePastOrPresent
validator for Date accessor.ConstraintValidator<javax.validation.constraints.PastOrPresent,java.time.temporal.TemporalAccessor>
getPastOrPresentTemporalAccessorConstraintValidator()
ThePastOrPresent
validator for temporal accessor.ConstraintValidator<javax.validation.constraints.Past,java.time.temporal.TemporalAccessor>
getPastTemporalAccessorConstraintValidator()
ThePast
validator for temporal accessor.ConstraintValidator<javax.validation.constraints.Positive,java.lang.Number>
getPositiveNumberValidator()
ThePositive
validator for numbers.ConstraintValidator<javax.validation.constraints.PositiveOrZero,java.lang.Number>
getPositiveOrZeroNumberValidator()
ThePositiveOrZero
validator for numbers.SizeValidator<boolean[]>
getSizeBooleanArrayValidator()
TheSize
validator for boolean[].SizeValidator<byte[]>
getSizeByteArrayValidator()
TheSize
validator for byte[].SizeValidator<char[]>
getSizeCharArrayValidator()
TheSize
validator for char[].SizeValidator<java.lang.CharSequence>
getSizeCharSequenceValidator()
TheSize
validator for CharSequence.SizeValidator<java.util.Collection>
getSizeCollectionValidator()
TheSize
validator for Collection.SizeValidator<double[]>
getSizeDoubleArrayValidator()
TheSize
validator for double[].SizeValidator<float[]>
getSizeFloatArrayValidator()
TheSize
validator for float[].SizeValidator<int[]>
getSizeIntArrayValidator()
TheSize
validator for int[].SizeValidator<long[]>
getSizeLongArrayValidator()
TheSize
validator for long[].SizeValidator<java.util.Map>
getSizeMapValidator()
TheSize
validator for Map.SizeValidator<java.lang.Object[]>
getSizeObjectArrayValidator()
TheSize
validator for Object[].SizeValidator<short[]>
getSizeShortArrayValidator()
TheSize
validator for short[].-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.micronaut.validation.validator.constraints.ConstraintValidatorRegistry
getConstraintValidator
-
-
-
-
Constructor Detail
-
DefaultConstraintValidators
public DefaultConstraintValidators()
Default constructor.
-
DefaultConstraintValidators
@Inject protected DefaultConstraintValidators(@Nullable io.micronaut.context.BeanContext beanContext)
Constructor used for DI.- Parameters:
beanContext
- The bean context
-
-
Method Detail
-
findConstraintValidator
@NonNull public <A extends java.lang.annotation.Annotation,T> java.util.Optional<ConstraintValidator<A,T>> findConstraintValidator(@NonNull java.lang.Class<A> constraintType, @NonNull java.lang.Class<T> targetType)
Description copied from interface:ConstraintValidatorRegistry
Finds a constraint validator for the given type and target type.- Specified by:
findConstraintValidator
in interfaceConstraintValidatorRegistry
- Type Parameters:
A
- The annotation typeT
- The target type- Parameters:
constraintType
- The annotation type of the constraint.targetType
- The type being validated.- Returns:
- The validator
-
getAssertFalseValidator
public ConstraintValidator<javax.validation.constraints.AssertFalse,java.lang.Boolean> getAssertFalseValidator()
TheAssertFalse
validator.- Returns:
- The validator
-
getAssertTrueValidator
public ConstraintValidator<javax.validation.constraints.AssertTrue,java.lang.Boolean> getAssertTrueValidator()
TheAssertTrue
validator.- Returns:
- The validator
-
getDecimalMaxValidatorCharSequence
public DecimalMaxValidator<java.lang.CharSequence> getDecimalMaxValidatorCharSequence()
TheDecimalMax
validator for char sequences.- Returns:
- The validator
-
getDecimalMaxValidatorNumber
public DecimalMaxValidator<java.lang.Number> getDecimalMaxValidatorNumber()
TheDecimalMax
validator for number.- Returns:
- The validator
-
getDecimalMinValidatorCharSequence
public DecimalMinValidator<java.lang.CharSequence> getDecimalMinValidatorCharSequence()
TheDecimalMin
validator for char sequences.- Returns:
- The validator
-
getDecimalMinValidatorNumber
public DecimalMinValidator<java.lang.Number> getDecimalMinValidatorNumber()
TheDecimalMin
validator for number.- Returns:
- The validator
-
getDigitsValidatorNumber
public DigitsValidator<java.lang.Number> getDigitsValidatorNumber()
TheDigits
validator for number.- Returns:
- The validator
-
getDigitsValidatorCharSequence
public DigitsValidator<java.lang.CharSequence> getDigitsValidatorCharSequence()
TheDigits
validator for char sequence.- Returns:
- The validator
-
getMaxNumberValidator
public ConstraintValidator<javax.validation.constraints.Max,java.lang.Number> getMaxNumberValidator()
TheMax
validator for numbers.- Returns:
- The validator
-
getMinNumberValidator
public ConstraintValidator<javax.validation.constraints.Min,java.lang.Number> getMinNumberValidator()
TheMin
validator for numbers.- Returns:
- The validator
-
getNegativeNumberValidator
public ConstraintValidator<javax.validation.constraints.Negative,java.lang.Number> getNegativeNumberValidator()
TheNegative
validator for numbers.- Returns:
- The validator
-
getNegativeOrZeroNumberValidator
public ConstraintValidator<javax.validation.constraints.NegativeOrZero,java.lang.Number> getNegativeOrZeroNumberValidator()
TheNegativeOrZero
validator for numbers.- Returns:
- The validator
-
getPositiveNumberValidator
public ConstraintValidator<javax.validation.constraints.Positive,java.lang.Number> getPositiveNumberValidator()
ThePositive
validator for numbers.- Returns:
- The validator
-
getPositiveOrZeroNumberValidator
public ConstraintValidator<javax.validation.constraints.PositiveOrZero,java.lang.Number> getPositiveOrZeroNumberValidator()
ThePositiveOrZero
validator for numbers.- Returns:
- The validator
-
getNotBlankValidator
public ConstraintValidator<javax.validation.constraints.NotBlank,java.lang.CharSequence> getNotBlankValidator()
TheNotBlank
validator for char sequences.- Returns:
- The validator
-
getNotNullValidator
public ConstraintValidator<javax.validation.constraints.NotNull,java.lang.Object> getNotNullValidator()
TheNotNull
validator.- Returns:
- The validator
-
getNullValidator
public ConstraintValidator<javax.validation.constraints.Null,java.lang.Object> getNullValidator()
TheNull
validator.- Returns:
- The validator
-
getNotEmptyByteArrayValidator
public ConstraintValidator<javax.validation.constraints.NotEmpty,byte[]> getNotEmptyByteArrayValidator()
TheNotEmpty
validator for byte[].- Returns:
- The validator
-
getNotEmptyCharArrayValidator
public ConstraintValidator<javax.validation.constraints.NotEmpty,char[]> getNotEmptyCharArrayValidator()
TheNotEmpty
validator for char[].- Returns:
- The validator
-
getNotEmptyBooleanArrayValidator
public ConstraintValidator<javax.validation.constraints.NotEmpty,boolean[]> getNotEmptyBooleanArrayValidator()
TheNotEmpty
validator for boolean[].- Returns:
- The validator
-
getNotEmptyDoubleArrayValidator
public ConstraintValidator<javax.validation.constraints.NotEmpty,double[]> getNotEmptyDoubleArrayValidator()
TheNotEmpty
validator for double[].- Returns:
- The validator
-
getNotEmptyFloatArrayValidator
public ConstraintValidator<javax.validation.constraints.NotEmpty,float[]> getNotEmptyFloatArrayValidator()
TheNotEmpty
validator for float[].- Returns:
- The validator
-
getNotEmptyIntArrayValidator
public ConstraintValidator<javax.validation.constraints.NotEmpty,int[]> getNotEmptyIntArrayValidator()
TheNotEmpty
validator for int[].- Returns:
- The validator
-
getNotEmptyLongArrayValidator
public ConstraintValidator<javax.validation.constraints.NotEmpty,long[]> getNotEmptyLongArrayValidator()
TheNotEmpty
validator for long[].- Returns:
- The validator
-
getNotEmptyObjectArrayValidator
public ConstraintValidator<javax.validation.constraints.NotEmpty,java.lang.Object[]> getNotEmptyObjectArrayValidator()
TheNotEmpty
validator for Object[].- Returns:
- The validator
-
getNotEmptyShortArrayValidator
public ConstraintValidator<javax.validation.constraints.NotEmpty,short[]> getNotEmptyShortArrayValidator()
TheNotEmpty
validator for short[].- Returns:
- The validator
-
getNotEmptyCharSequenceValidator
public ConstraintValidator<javax.validation.constraints.NotEmpty,java.lang.CharSequence> getNotEmptyCharSequenceValidator()
TheNotEmpty
validator for char sequence.- Returns:
- The validator
-
getNotEmptyCollectionValidator
public ConstraintValidator<javax.validation.constraints.NotEmpty,java.util.Collection> getNotEmptyCollectionValidator()
TheNotEmpty
validator for collection.- Returns:
- The validator
-
getNotEmptyMapValidator
public ConstraintValidator<javax.validation.constraints.NotEmpty,java.util.Map> getNotEmptyMapValidator()
TheNotEmpty
validator for map.- Returns:
- The validator
-
getSizeObjectArrayValidator
public SizeValidator<java.lang.Object[]> getSizeObjectArrayValidator()
TheSize
validator for Object[].- Returns:
- The validator
-
getSizeByteArrayValidator
public SizeValidator<byte[]> getSizeByteArrayValidator()
TheSize
validator for byte[].- Returns:
- The validator
-
getSizeCharArrayValidator
public SizeValidator<char[]> getSizeCharArrayValidator()
TheSize
validator for char[].- Returns:
- The validator
-
getSizeBooleanArrayValidator
public SizeValidator<boolean[]> getSizeBooleanArrayValidator()
TheSize
validator for boolean[].- Returns:
- The validator
-
getSizeDoubleArrayValidator
public SizeValidator<double[]> getSizeDoubleArrayValidator()
TheSize
validator for double[].- Returns:
- The validator
-
getSizeFloatArrayValidator
public SizeValidator<float[]> getSizeFloatArrayValidator()
TheSize
validator for float[].- Returns:
- The validator
-
getSizeIntArrayValidator
public SizeValidator<int[]> getSizeIntArrayValidator()
TheSize
validator for int[].- Returns:
- The validator
-
getSizeLongArrayValidator
public SizeValidator<long[]> getSizeLongArrayValidator()
TheSize
validator for long[].- Returns:
- The validator
-
getSizeShortArrayValidator
public SizeValidator<short[]> getSizeShortArrayValidator()
TheSize
validator for short[].- Returns:
- The validator
-
getSizeCharSequenceValidator
public SizeValidator<java.lang.CharSequence> getSizeCharSequenceValidator()
TheSize
validator for CharSequence.- Returns:
- The validator
-
getSizeCollectionValidator
public SizeValidator<java.util.Collection> getSizeCollectionValidator()
TheSize
validator for Collection.- Returns:
- The validator
-
getSizeMapValidator
public SizeValidator<java.util.Map> getSizeMapValidator()
TheSize
validator for Map.- Returns:
- The validator
-
getPastTemporalAccessorConstraintValidator
public ConstraintValidator<javax.validation.constraints.Past,java.time.temporal.TemporalAccessor> getPastTemporalAccessorConstraintValidator()
ThePast
validator for temporal accessor.- Returns:
- The validator
-
getPastDateConstraintValidator
public ConstraintValidator<javax.validation.constraints.Past,java.util.Date> getPastDateConstraintValidator()
ThePast
validator for Date accessor.- Returns:
- The validator
-
getPastOrPresentTemporalAccessorConstraintValidator
public ConstraintValidator<javax.validation.constraints.PastOrPresent,java.time.temporal.TemporalAccessor> getPastOrPresentTemporalAccessorConstraintValidator()
ThePastOrPresent
validator for temporal accessor.- Returns:
- The validator
-
getPastOrPresentDateConstraintValidator
public ConstraintValidator<javax.validation.constraints.PastOrPresent,java.util.Date> getPastOrPresentDateConstraintValidator()
ThePastOrPresent
validator for Date accessor.- Returns:
- The validator
-
getFutureTemporalAccessorConstraintValidator
public ConstraintValidator<javax.validation.constraints.Future,java.time.temporal.TemporalAccessor> getFutureTemporalAccessorConstraintValidator()
TheFuture
validator for temporal accessor.- Returns:
- The validator
-
getFutureDateConstraintValidator
public ConstraintValidator<javax.validation.constraints.Future,java.util.Date> getFutureDateConstraintValidator()
TheFuture
validator for Date accessor.- Returns:
- The validator
-
getFutureOrPresentTemporalAccessorConstraintValidator
public ConstraintValidator<javax.validation.constraints.FutureOrPresent,java.time.temporal.TemporalAccessor> getFutureOrPresentTemporalAccessorConstraintValidator()
TheFutureOrPresent
validator for temporal accessor.- Returns:
- The validator
-
getFutureOrPresentDateConstraintValidator
public ConstraintValidator<javax.validation.constraints.FutureOrPresent,java.util.Date> getFutureOrPresentDateConstraintValidator()
TheFutureOrPresent
validator for Date accessor.- Returns:
- The validator
-
findLocalConstraintValidator
protected <A extends java.lang.annotation.Annotation,T> java.util.Optional<ConstraintValidator> findLocalConstraintValidator(@NonNull java.lang.Class<A> constraintType, @NonNull java.lang.Class<T> targetType)
Last chance resolve for constraint validator.- Type Parameters:
A
- The annotation typeT
- The target type- Parameters:
constraintType
- The constraint typetargetType
- The target type- Returns:
- The validator if present
-
-