22
33import hudson .Extension ;
44import hudson .model .AbstractProject ;
5- import hudson .model .PeriodicWork ;
5+ import hudson .model .AperiodicWork ;
66import hudson .triggers .Trigger ;
77import jenkins .model .Jenkins ;
88import org .jenkinsci .plugins .workflow .job .WorkflowJob ;
99
1010import java .util .Calendar ;
1111import java .util .Collection ;
1212import java .util .GregorianCalendar ;
13- import java .util .concurrent .TimeUnit ;
1413import java .util .logging .Level ;
1514import java .util .logging .Logger ;
1615
1716@ Extension
18- public class Cron extends PeriodicWork {
17+ public class Cron extends AperiodicWork {
1918 private static final Logger LOGGER = Logger .getLogger (Cron .class .getName ());
2019
20+ // time constants
21+ protected static final long MIN = 1000 * 60 ;
22+
23+ @ Override
24+ public AperiodicWork getNewInstance () {
25+ return new Cron ();
26+ }
27+
2128 @ Override
2229 public long getRecurrencePeriod () {
23- return TimeUnit . MINUTES . toMillis ( 1 );
30+ return getInitialDelay ( );
2431 }
2532
2633 @ Override
@@ -29,7 +36,7 @@ public long getInitialDelay() {
2936 }
3037
3138 @ Override
32- protected void doRun () {
39+ protected void doAperiodicRun () {
3340 Jenkins instance = Jenkins .get ();
3441
3542 for (AbstractProject <?, ?> project : instance .allItems (AbstractProject .class )) {
0 commit comments