Record Class RepeatingTaskMethod

java.lang.Object
java.lang.Record
com.thewinterframework.service.meta.scheduler.RepeatingTaskMethod
Record Components:
service - The service class
method - The method to execute
delay - The delay before the task starts
every - The delay between each execution
unit - The time unit of the delay
async - Whether the task should be executed
All Implemented Interfaces:
SchedulerMethod

public record RepeatingTaskMethod(Class<?> service, AnnotatedMethodHandle<?> method, String delay, String every, String unit, String async) extends Record implements SchedulerMethod
Represents a repeating task method
  • Constructor Details

    • RepeatingTaskMethod

      public RepeatingTaskMethod(Class<?> service, AnnotatedMethodHandle<?> method, String delay, String every, String unit, String async)
      Creates an instance of a RepeatingTaskMethod record class.
      Parameters:
      service - the value for the service record component
      method - the value for the method record component
      delay - the value for the delay record component
      every - the value for the every record component
      unit - the value for the unit record component
      async - the value for the async record component
  • Method Details

    • schedule

      public int schedule(WinterPlugin plugin)
      Description copied from interface: SchedulerMethod
      Schedules this method to be executed by the plugin.
      Specified by:
      schedule in interface SchedulerMethod
      Parameters:
      plugin - Plugin to schedule this method for
      Returns:
      The created schedule
    • toString

      public final String toString()
      Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
      Specified by:
      toString in class Record
      Returns:
      a string representation of this object
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared with Objects::equals(Object,Object).
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • service

      public Class<?> service()
      Returns the value of the service record component.
      Returns:
      the value of the service record component
    • method

      public AnnotatedMethodHandle<?> method()
      Returns the value of the method record component.
      Returns:
      the value of the method record component
    • delay

      public String delay()
      Returns the value of the delay record component.
      Returns:
      the value of the delay record component
    • every

      public String every()
      Returns the value of the every record component.
      Returns:
      the value of the every record component
    • unit

      public String unit()
      Returns the value of the unit record component.
      Returns:
      the value of the unit record component
    • async

      public String async()
      Returns the value of the async record component.
      Returns:
      the value of the async record component