package fr.keemto.scheduling;
import fr.keemto.core.Task;
import java.util.concurrent.ScheduledFuture;
public class ScheduledTask implements Task {
private static final boolean INTERRUPT_IF_RUNNING = true;
private final ScheduledFuture<?> future;
private final Task task;
ScheduledTask(Task task, ScheduledFuture<?> future) {
this.task = task;
this.future = future;
}
@Override
public long getDelay() {
return task.getDelay();
}
@Override
public void run() {
}
void cancel() {
future.cancel(INTERRUPT_IF_RUNNING);
}
@Override
public String getTaskId() {
return task.getTaskId();
}
@Override
public String toString() {
return "ScheduledTask{" +
"id=" + getTaskId() +
"task=" + task +
'}';
}
}