Class ShiftByMultipleOf

All Implemented Interfaces:
Delay

public class ShiftByMultipleOf extends MultipleOf
Provides delay seconds which is a multiple of the delay shifted from previous attempt's accrual until AbstractDelay.timeout has been reached. After which it will return Duration.ZERO
  • Method Details

    • shiftedOf

      public static ShiftByMultipleOf.Builder shiftedOf()
    • nextDelay

      public Duration nextDelay(int attempt)
      Description copied from interface: Delay
      Returns the new delay amount to stabilize as defined by Duration time. This returns -1 to indicate that we are done with delays from this instance Different implementations can return different values
      Specified by:
      nextDelay in interface Delay
      Overrides:
      nextDelay in class MultipleOf
      Parameters:
      attempt - , starts with 1
      Returns:
      the next amount to wait for or Duration.ZERO to indicate delay is complete