public Instant getNextExecutionTimeAfter ( Instant now ) { OffsetTime timeOfDay = OffsetTime . from ( TIME_OF_DAY_FORMAT . parse ( getTimeOfDay ( ) ) ) ; // The time of the next run is based on the time past midnight UTC relative to the current time Instant nextExecTime = now . atOffset ( ZoneOffset . UTC ) . with ( timeOfDay ) . toInstant ( ) ; // If the first execution would have been for earlier today move to the next execution. while ( nextExecTime . isBefore ( now ) ) { nextExecTime = nextExecTime . plus ( Duration . ofDays ( 1 ) ) ; } return nextExecTime ; }
Gets the first execution time for the given scan and upload which is at or after now .