/** * Validates the format of the maintenance window cron expression * * @param cronSchedule * is a cron expression with 6 mandatory fields and 1 last * optional field: "second minute hour dayofmonth month weekday * year". * * @throws InvalidMaintenanceScheduleException * if the cron expression doesn't have a valid quartz format. */ public static void validateCronSchedule(final String cronSchedule) { try { if (StringUtils.hasText(cronSchedule)) { getCronFromExpression(cronSchedule); } } catch (final IllegalArgumentException e) { throw new InvalidMaintenanceScheduleException(e.getMessage(), e); } } }
@SuppressWarnings("squid:S1166") private String translateCron(final String cronExpression) { try { return cronDescriptor.describe(MaintenanceScheduleHelper.getCronFromExpression(cronExpression)); } catch (final IllegalArgumentException ex) { return i18n.getMessage(CRON_VALIDATION_ERROR); } }
@SuppressWarnings("squid:S1166") private String translateCron(final String cronExpression) { try { return cronDescriptor.describe(MaintenanceScheduleHelper.getCronFromExpression(cronExpression)); } catch (final IllegalArgumentException ex) { return i18n.getMessage(CRON_VALIDATION_ERROR); } }
final String timezone) { try { final ExecutionTime scheduleExecutor = ExecutionTime.forCron(getCronFromExpression(cronSchedule)); final ZonedDateTime now = ZonedDateTime.now(ZoneOffset.of(timezone)); final ZonedDateTime after = now.minus(convertToISODuration(duration));