View Javadoc

1   package com.atlassian.scheduler.core.tests;
2   
3   import org.joda.time.DateTimeZone;
4   
5   import javax.annotation.Nullable;
6   import java.util.Date;
7   
8   /**
9    * Generate cron expression facades for a test.
10   *
11   * @since v1.5
12   */
13  public interface CronFactory {
14      void parseAndDiscard(String cronExpression);
15  
16      CronExpressionAdapter parse(String cronExpression);
17  
18      CronExpressionAdapter parse(String cronExpression, DateTimeZone zone);
19  
20      interface CronExpressionAdapter {
21          boolean isSatisfiedBy(final Date date);
22  
23          @Nullable
24          Date nextRunTime(final Date dateTime);
25      }
26  }