@Documented @Constraint(validatedBy={MinBeforeValidator.ForDate.class,MinBeforeValidator.ForCalendar.class,MinBeforeValidator.ForInstant.class,MinBeforeValidator.ForLocalDate.class,MinBeforeValidator.ForLocalDateTime.class,MinBeforeValidator.ForLocalTime.class,MinBeforeValidator.ForOffsetDateTime.class,MinBeforeValidator.ForOffsetTime.class,MinBeforeValidator.ForYear.class,MinBeforeValidator.ForYearMonth.class,MinBeforeValidator.ForZonedDateTime.class}) @Target(value={METHOD,FIELD,ANNOTATION_TYPE,CONSTRUCTOR,PARAMETER,TYPE_USE}) @Retention(value=RUNTIME) @Repeatable(value=MinBefore.List.class) public @interface MinBefore
object
, validates that object <= moment - duration
.
Supported types are:
Date
Calendar
Instant
LocalDate
LocalDateTime
LocalTime
OffsetDateTime
OffsetTime
Year
YearMonth
ZonedDateTime
MonthDay
is explicitly not supported for the same reason that it implements TemporalAccessor
and not
Temporal
.
null
elements are considered valid.
public abstract String duration
moment()
.
The value to validate may impose limitations on the duration. For instance, LocalDate
does not allow a time part, and LocalTime
does not allow a date part.
public abstract String moment
now
to use the current moment in time as defined
by the ClockProvider
attached to the Validator
or ValidatorFactory
. The default ClockProvider
defines the
current time according to the virtual machine, applying the current default time zone if needed.
For Date
, this value will be parsed using DateTimeFormatter.ISO_INSTANT
; for Calendar
, using
DateTimeFormatter.ISO_ZONED_DATE_TIME
.
public abstract String message
public abstract Class<?>[] groups
Copyright © 2021–2022. All rights reserved.