import java.text.ParseException; import java.util.Calendar; import java.util.Date; import org.quartz.*; public class Quartz601 { public static void main(String[] args) throws Exception { runTest("0 15 10 * * ? 2005"); runTest("0 0/5 21-3 ? * MON-FRI"); runTest("0 58-4 21 ? * MON-FRI"); runTest("58-4 5 21 ? * MON-FRI"); runTest("58 5 21 ? * 6-2"); runTest("58 5 21 ? * FRI-TUE"); runTest("58 5 21 28-5 1 ?"); runTest("58 5 21 ? 11-2 FRI"); } public static void runTest(String expression) { TestCronExpression cronExpression = null; try { cronExpression = new TestCronExpression(expression); } catch (ParseException e) { e.printStackTrace(); return; } System.err.println("\n*****************"); System.err.println(cronExpression); cronExpression.debug(); } } class TestCronExpression extends CronExpression { public TestCronExpression(String cronExpression) throws ParseException { super(cronExpression); } public void debug() { System.err.println("SECONDS: " + super.getSet(SECOND)); System.err.println("MINUTES: " + super.getSet(MINUTE)); System.err.println("HOURS: " + super.getSet(HOUR)); System.err.println("DAY_OF_WEEK: " + super.getSet(DAY_OF_WEEK)); System.err.println("DAY_OF_MONTH: " + super.getSet(DAY_OF_MONTH)); System.err.println("MONTH: " + super.getSet(MONTH)); System.err.println("YEAR: " + super.getSet(YEAR)); } }