@Documented @Constraint(validatedBy={BeforeValidator.ForDate.class,BeforeValidator.ForCalendar.class,BeforeValidator.ForInstant.class,BeforeValidator.ForLocalDate.class,BeforeValidator.ForLocalDateTime.class,BeforeValidator.ForLocalTime.class,BeforeValidator.ForMonthDay.class,BeforeValidator.ForOffsetDateTime.class,BeforeValidator.ForOffsetTime.class,BeforeValidator.ForYear.class,BeforeValidator.ForYearMonth.class,BeforeValidator.ForZonedDateTime.class}) @Target(value={METHOD,FIELD,ANNOTATION_TYPE,CONSTRUCTOR,PARAMETER,TYPE_USE}) @Retention(value=RUNTIME) @Repeatable(value=Before.List.class) public @interface Before
object
, validates that object < moment
.
Supported types are:
Date
Calendar
Instant
LocalDate
LocalDateTime
LocalTime
MonthDay
OffsetDateTime
OffsetTime
Year
YearMonth
ZonedDateTime
null
elements are considered valid.
Note that @Before("now")
is equivalent to @
Past
.
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.