Class SchedulerProvider

java.lang.Object
com.barden.library.scheduler.SchedulerProvider

public final class SchedulerProvider extends Object
Barden scheduler class. (Library)
  • Constructor Details

    • SchedulerProvider

      public SchedulerProvider()
  • Method Details

    • getLogger

      @Nonnull public static org.slf4j.Logger getLogger()
      Gets logger.
      Returns:
      Logger.
    • create

      @Nonnull public static Scheduler create()
      Creates new scheduler.
      Returns:
      Scheduler.
    • schedule

      @Nonnull public static Task schedule(@Nonnull Consumer<Task> task)
      Schedules a task.
      Parameters:
      task - Task.
      Returns:
      Task.
    • getService

      @Nonnull public ExecutorService getService()
      Gets executor service.
      Returns:
      Executor service.
    • getTimerService

      @Nonnull public ScheduledExecutorService getTimerService()
      Gets executor timer service.
      Returns:
      Executor timer service.
    • getTasks

      @Nonnull public Set<Task> getTasks()
      Gets barden schedulers.
      Returns:
      Barden schedulers.
    • findTask

      @Nonnull public Optional<Task> findTask(@Nonnull UUID id)
      Finds task by its id.
      Parameters:
      id - Task id.
      Returns:
      Optional task.
    • getTask

      public Task getTask(@Nonnull UUID id)
      Gets task by its id.
      Parameters:
      id - Task id.
      Returns:
      Task.
    • addTask

      public void addTask(@Nonnull Task task)
      Adds task.
      Parameters:
      task - Task.
    • removeTask

      public void removeTask(@Nonnull Task task)
      Removes task.
      Parameters:
      task - Task.
    • shutdown

      public boolean shutdown() throws InterruptedException
      Shutdowns schedulers.
      Returns:
      true if all tasks finished, false otherwise.
      Throws:
      InterruptedException - If the current thread was interrupted.