Class TimeIntervalAction


  • public class TimeIntervalAction
    extends java.lang.Object
    • Constructor Detail

      • TimeIntervalAction

        public TimeIntervalAction​(long delayMs,
                                  @NotNull
                                  java.lang.Runnable defaultAction)
      • TimeIntervalAction

        public TimeIntervalAction​(@NotNull
                                  java.util.function.LongSupplier delaySupplier,
                                  @NotNull
                                  java.lang.Runnable defaultAction)
      • TimeIntervalAction

        public TimeIntervalAction​(@NotNull
                                  java.util.function.LongSupplier delaySupplier)
      • TimeIntervalAction

        public TimeIntervalAction​(long delayMs)
    • Method Detail

      • execute

        public boolean execute()
        Executes default action if time passed and does nothing otherwise
        Returns:
        true if action was executed
      • executeCustomAction

        public boolean executeCustomAction​(@NotNull
                                           java.lang.Runnable action)
        Executes the specified action if time passed and does nothing otherwise
        Returns:
        true if action was executed
      • resetLastActionTime

        public void resetLastActionTime()
      • getLastActionTime

        public long getLastActionTime()
        Returns timestamp of the last action execution.
        Returns:
      • getExecutionsCount

        public long getExecutionsCount()
      • getTotalActionElapsedTimeMillis

        public long getTotalActionElapsedTimeMillis()
        Returns:
        returns total time spent on action execution.