Class SingleExecutionTime

java.lang.Object
io.github.projectunified.cronutils.model.time.SingleExecutionTime
All Implemented Interfaces:
ExecutionTime

public class SingleExecutionTime extends Object implements ExecutionTime
Calculates execution time given a cron pattern.
  • Method Details

    • nextExecution

      public Optional<ZonedDateTime> nextExecution(ZonedDateTime date)
      Provide nearest date for next execution.
      Specified by:
      nextExecution in interface ExecutionTime
      Parameters:
      date - - ZonedDateTime instance. If null, a NullPointerException will be raised.
      Returns:
      Optional ZonedDateTime instance, never null. Contains next execution time or empty.
    • timeToNextExecution

      public Optional<Duration> timeToNextExecution(ZonedDateTime date)
      Provide nearest time for next execution.
      Specified by:
      timeToNextExecution in interface ExecutionTime
      Parameters:
      date - - ZonedDateTime instance. If null, a NullPointerException will be raised.
      Returns:
      Duration instance, never null. Time to next execution.
    • lastExecution

      public Optional<ZonedDateTime> lastExecution(ZonedDateTime date)
      Provide nearest date for last execution.
      Specified by:
      lastExecution in interface ExecutionTime
      Parameters:
      date - - ZonedDateTime instance. If null, a NullPointerException will be raised.
      Returns:
      Optional ZonedDateTime instance, never null. Last execution time or empty.
    • timeFromLastExecution

      public Optional<Duration> timeFromLastExecution(ZonedDateTime date)
      Provide nearest time from last execution.
      Specified by:
      timeFromLastExecution in interface ExecutionTime
      Parameters:
      date - - ZonedDateTime instance. If null, a NullPointerException will be raised.
      Returns:
      Duration instance, never null. Time from last execution.
    • isMatch

      public boolean isMatch(ZonedDateTime date)
      Provide feedback if a given date matches the cron expression.
      Specified by:
      isMatch in interface ExecutionTime
      Parameters:
      date - - ZonedDateTime instance. If null, a NullPointerException will be raised.
      Returns:
      true if date matches cron expression requirements, false otherwise.