in src/main/java/org/apache/sling/event/impl/support/ScheduleInfoImpl.java [264:311]
public void check(final List<String> errors) {
switch ( this.scheduleType ) {
case DAILY : if ( hourOfDay < 0 || hourOfDay > 23 || minuteOfHour < 0 || minuteOfHour > 59 ) {
errors.add("Wrong time information : " + minuteOfHour + ":" + minuteOfHour);
}
break;
case DATE : if ( at == null || at.getTime() <= System.currentTimeMillis() + 2000 ) {
errors.add("Date must be in the future : " + at);
}
break;
case HOURLY : if ( minuteOfHour < 0 || minuteOfHour > 59 ) {
errors.add("Minute must be between 0 and 59 : " + minuteOfHour);
}
break;
case WEEKLY : if ( hourOfDay < 0 || hourOfDay > 23 || minuteOfHour < 0 || minuteOfHour > 59 ) {
errors.add("Wrong time information : " + minuteOfHour + ":" + minuteOfHour);
}
if ( dayOfWeek < 1 || dayOfWeek > 7 ) {
errors.add("Day must be between 1 and 7 : " + dayOfWeek);
}
break;
case MONTHLY : if ( hourOfDay < 0 || hourOfDay > 23 || minuteOfHour < 0 || minuteOfHour > 59 ) {
errors.add("Wrong time information : " + minuteOfHour + ":" + minuteOfHour);
}
if ( dayOfWeek < 1 || dayOfWeek > 28 ) {
errors.add("Day must be between 1 and 28 : " + dayOfWeek);
}
break;
case YEARLY : if ( hourOfDay < 0 || hourOfDay > 23 || minuteOfHour < 0 || minuteOfHour > 59 ) {
errors.add("Wrong time information : " + minuteOfHour + ":" + minuteOfHour);
}
if ( dayOfWeek < 1 || dayOfWeek > 28 ) {
errors.add("Day must be between 1 and 28 : " + dayOfWeek);
}
if ( monthOfYear < 1 || monthOfYear > 12 ) {
errors.add("Month must be between 1 and 12 : " + dayOfWeek);
}
break;
case CRON : if ( expression == null ) {
errors.add("Expression must be specified.");
}
try {
new CronExpression(this.expression);
} catch (final ParseException e) {
errors.add("Expression must be valid: " + this.expression);
}
}
}