Class Task

java.lang.Object
ch.njol.skript.util.Task
All Implemented Interfaces:
Closeable, Runnable

public abstract class Task extends Object implements Runnable, Closeable
  • Constructor Details

    • Task

      public Task(Plugin plugin, long delay, long period)
    • Task

      public Task(Plugin plugin, long delay, long period, boolean async)
    • Task

      public Task(Plugin plugin, long delay)
    • Task

      public Task(Plugin plugin, long delay, boolean async)
  • Method Details

    • isAlive

      public final boolean isAlive()
      Returns:
      Whether this task is still running, i.e. whether it will run later or is currently running.
    • cancel

      public final void cancel()
      Cancels this task.
    • close

      public void close()
      Description copied from interface: Closeable
      Closes this object. This method may be called multiple times and may or may not have an effect on subsequent calls (e.g. a task might be stopped, but resumed later and stopped again).
      Specified by:
      close in interface Closeable
    • setNextExecution

      public void setNextExecution(long delay)
      Re-schedules the task to run next after the given delay. If this task was repeating it will continue so using the same period as before.
      Parameters:
      delay -
    • setPeriod

      public void setPeriod(long period)
      Sets the period of this task. This will re-schedule the task to be run next after the given period if the task is still running.
      Parameters:
      period - Period in ticks or -1 to cancel the task and make it non-repeating
    • callSync

      @Nullable public static <T> T callSync(Callable<T> c)
    • callSync

      @Nullable public static <T> T callSync(Callable<T> c, Plugin p)
      Calls a method on Bukkit's main thread.

      Hint: Use a Callable<Void> to make a task which blocks your current thread until it is completed.

      Parameters:
      c - The method
      p - The plugin that owns the task. Must be enabled.
      Returns:
      What the method returned or null if it threw an error or was stopped (usually due to the server shutting down)