Class AbstractJavaScheduler

java.lang.Object
org.kingdoms.scheduler.AbstractJavaScheduler
All Implemented Interfaces:
org.kingdoms.scheduler.TaskScheduleProvider
Direct Known Subclasses:
BukkitSchedulerAdapter, FoliaSchedulerAdapter

public abstract class AbstractJavaScheduler extends Object implements org.kingdoms.scheduler.TaskScheduleProvider
Abstract implementation of TaskScheduleProvider using a ScheduledExecutorService.
  • Constructor Details

    • AbstractJavaScheduler

      public AbstractJavaScheduler(org.kingdoms.dependencies.classpath.BootstrapProvider bootstrap)
  • Method Details

    • shutdownHook

      public <F extends Future<T>, T> F shutdownHook(F task)
      Interrupts the given task when this scheduler shutdown.
    • initCache

      public void initCache()
      Specified by:
      initCache in interface org.kingdoms.scheduler.TaskScheduleProvider
    • async

      public org.kingdoms.scheduler.TaskScheduler async()
      Specified by:
      async in interface org.kingdoms.scheduler.TaskScheduleProvider
    • isShutdown

      public final boolean isShutdown()
      Specified by:
      isShutdown in interface org.kingdoms.scheduler.TaskScheduleProvider
    • shutdown

      @MustBeInvokedByOverriders public void shutdown()
      Specified by:
      shutdown in interface org.kingdoms.scheduler.TaskScheduleProvider