diff options
Diffstat (limited to 'src/main/java/net/libertacasa/pubsh/web/SchedulerBean.java')
-rw-r--r-- | src/main/java/net/libertacasa/pubsh/web/SchedulerBean.java | 34 |
1 files changed, 23 insertions, 11 deletions
diff --git a/src/main/java/net/libertacasa/pubsh/web/SchedulerBean.java b/src/main/java/net/libertacasa/pubsh/web/SchedulerBean.java index e0bfd24..b68a14a 100644 --- a/src/main/java/net/libertacasa/pubsh/web/SchedulerBean.java +++ b/src/main/java/net/libertacasa/pubsh/web/SchedulerBean.java @@ -1,6 +1,5 @@ package net.libertacasa.pubsh.web; -import java.time.Duration; import java.time.Instant; import org.springframework.boot.CommandLineRunner; @@ -10,20 +9,32 @@ import org.springframework.context.annotation.Configuration; import com.github.kagkarlsson.scheduler.Scheduler; import com.github.kagkarlsson.scheduler.task.Task; import com.github.kagkarlsson.scheduler.task.helper.Tasks; -import static com.github.kagkarlsson.scheduler.task.schedule.Schedules.fixedDelay; +//import static com.github.kagkarlsson.scheduler.task.schedule.Schedules.fixedDelay; @Configuration public class SchedulerBean { - @Bean - Task<Void> recurringSampleTask(CounterService counter) { - return Tasks - .recurring("recurring-sample-task", fixedDelay(Duration.ofMinutes(1))) - .execute((instance, ctx) -> { - System.out.printf("Recurring testing task. Instance: %s, ctx: %s\n", instance, ctx); - CounterService.increase(); - }); - } +// @Bean +// Task<Void> recurringSampleTask(CounterService counter) { +// return Tasks +// .recurring("recurring-sample-task", fixedDelay(Duration.ofMinutes(1))) +// .execute((instance, ctx) -> { +// System.out.printf("Recurring testing task. Instance: %s, ctx: %s\n", instance, ctx); +// CounterService.increase(); +// }); +// } + + @Bean + public static Task<Void> shellRemovalTask() { + + return Tasks.oneTime("shell-removal") + .execute((instance, ctx) -> { + System.out.printf("Running container removal task - Instance: %s, ctx: %s\n", instance, ctx); + String username = instance.getId().split("&")[0]; + String containerid = instance.getId().split("&")[1]; + Docker.deleteShell(username, containerid); + }); + } @Bean Task<Void> sampleOneTimeTask() { @@ -33,6 +44,7 @@ public class SchedulerBean { }); } + // keeping this as a quick way to check if the scheduler booted up after an application restart @Bean CommandLineRunner executeOnStartup(Scheduler scheduler, Task<Void> sampleOneTimeTask) { System.out.println("Scheduling one-shot testing task to execute now."); |