Class ValidatorTemporalAfter<V>
- java.lang.Object
-
- io.github.mmm.validation.AbstractValidator<V>
-
- io.github.mmm.validation.AbstractValueValidator<V>
-
- io.github.mmm.validation.temporal.ValidatorTemporalAfter<V>
-
- Type Parameters:
V- is the generic type of the value tovalidate.
- All Implemented Interfaces:
Composable<Validator<?>>,Validator<V>,Iterable<Validator<?>>
- Direct Known Subclasses:
ValidatorInstantAfter,ValidatorLocalDateAfter,ValidatorLocalDateTimeAfter,ValidatorLocalTimeAfter,ValidatorOffsetDateTimeAfter,ValidatorOffsetTimeAfter,ValidatorZonedDateTimeAfter
public abstract class ValidatorTemporalAfter<V> extends AbstractValueValidator<V>
- Since:
- 1.0.0
-
-
Field Summary
Fields Modifier and Type Field Description static StringID-
Fields inherited from interface io.github.mmm.validation.Validator
ID_MANDATORY
-
-
Constructor Summary
Constructors Constructor Description ValidatorTemporalAfter(Supplier<V> valueSource)The constructor.ValidatorTemporalAfter(V value)The constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description booleanequals(Object obj)StringgetId()AbstractValidatoronly provides a default implementation of this method.
ATTENTION:
This default implementation returns thesimple class nameof the actualValidatorimplementation.ObjectgetMin()inthashCode()protected abstract booleanisAfter(V value, V limit)booleanisDynamic()This method determines if thisValidatoris dynamic.protected NlsMessagevalidateNotNull(V value)This method performs the validation in casevalueis NOTnull.-
Methods inherited from class io.github.mmm.validation.AbstractValueValidator
validate, validateNull
-
Methods inherited from class io.github.mmm.validation.AbstractValidator
source2string, toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface io.github.mmm.base.lang.Composable
getChild, getChildCount, iterator
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Methods inherited from interface io.github.mmm.validation.Validator
append, append, containsId, getMax, isMandatory, validate
-
-
-
-
Field Detail
-
ID
public static final String ID
- See Also:
getId(), Constant Field Values
-
-
Constructor Detail
-
ValidatorTemporalAfter
public ValidatorTemporalAfter(Supplier<V> valueSource)
The constructor.- Parameters:
valueSource- theSupplierof the value to compare to.
-
ValidatorTemporalAfter
public ValidatorTemporalAfter(V value)
The constructor.- Parameters:
value- the value to compare to.
-
-
Method Detail
-
isDynamic
public boolean isDynamic()
Description copied from class:AbstractValidatorThis method determines if thisValidatoris dynamic. Here dynamic means that the validation of the same input may not always return the same validation result (e.g. it holds references to instances that have dynamic impact on the validation).- Overrides:
isDynamicin classAbstractValidator<V>- Returns:
trueif thisValidatoris dynamic,falseotherwise.
-
getId
public String getId()
Description copied from class:AbstractValidatorAbstractValidatoronly provides a default implementation of this method.
ATTENTION:
This default implementation returns thesimple class nameof the actualValidatorimplementation. This strategy is chosen for simplicity when implementing a newValidator. To ensure stable IDs override this method and return a string constant. This shall at least be done when the name of the class is changed to provide backwards compatibility.- Specified by:
getIdin interfaceValidator<V>- Overrides:
getIdin classAbstractValidator<V>- Returns:
- the identifier of this
Validator. - See Also:
ValidationResult.getCode()
-
validateNotNull
protected NlsMessage validateNotNull(V value)
Description copied from class:AbstractValueValidatorThis method performs the validation in casevalueis NOTnull. This method contains the actual custom logic for the validation. It is therefore designed in a way that makes it most simple to implement custom validators.- Specified by:
validateNotNullin classAbstractValueValidator<V>- Parameters:
value- the value to validate.- Returns:
- the
failure messageornullif the the givenvalueis valid.
-
isAfter
protected abstract boolean isAfter(V value, V limit)
- Parameters:
value- the date to check.limit- the upper bound to compare to.- Returns:
trueifvalueis afterlimit,falseotherwise.
-
getMin
public Object getMin()
- Returns:
- the minimum allowed value. Typically of type <V> but this can not be guaranteed.
-
hashCode
public int hashCode()
- Overrides:
hashCodein classAbstractValidator<V>
-
equals
public boolean equals(Object obj)
- Overrides:
equalsin classAbstractValidator<V>
-
-