|
@ -0,0 +1,25 @@ |
|
|
|
|
|
package com.my.graphiteDigesterBg.step; |
|
|
|
|
|
import com.my.graphiteDigesterBg.diframe.DiTask; |
|
|
|
|
|
import com.my.graphiteDigesterBg.diframe.DiTaskStepBase; |
|
|
|
|
|
import com.my.graphiteDigesterBg.diframe.TaskStep; |
|
|
|
|
|
import java.util.Timer; |
|
|
|
|
|
import java.util.TimerTask; |
|
|
|
|
|
@TaskStep(name="Delay") |
|
|
|
|
|
public class StepDelay extends DiTaskStepBase { |
|
|
|
|
|
// duration in minutes |
|
|
|
|
|
public Integer duration; |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void run() { |
|
|
|
|
|
var task = this.getTask(); |
|
|
|
|
|
task.setStatus(DiTask.TaskStatus.WAITING); |
|
|
|
|
|
var timerTask = new TimerTask() { |
|
|
|
|
|
@Override |
|
|
|
|
|
public void run() { |
|
|
|
|
|
task.setStatus(DiTask.TaskStatus.READY); |
|
|
|
|
|
} |
|
|
|
|
|
}; |
|
|
|
|
|
var timer = new Timer(); |
|
|
|
|
|
timer.schedule(timerTask, this.duration * 60 * 1000); |
|
|
|
|
|
} |
|
|
|
|
|
} |