Class DelayStrategy$

java.lang.Object
org.apache.pekko.stream.javadsl.DelayStrategy$

public class DelayStrategy$ extends Object
  • Field Details

    • MODULE$

      public static final DelayStrategy$ MODULE$
      Static reference to the singleton instance of this Scala object.
  • Constructor Details

    • DelayStrategy$

      public DelayStrategy$()
  • Method Details

    • fixedDelay

      public <T> DelayStrategy<T> fixedDelay(Duration delay)
      Fixed delay strategy, always returns constant delay for any element.
      Parameters:
      delay - value of the delay
    • linearIncreasingDelay

      public <T> DelayStrategy<T> linearIncreasingDelay(Duration increaseStep, scala.Function1<T,Object> needsIncrease)
      Strategy with linear increasing delay. It starts with zero delay for each element, increases by increaseStep every time when needsIncrease returns true, when needsIncrease returns false it resets to initialDelay.
      Parameters:
      increaseStep - step by which delay is increased
      needsIncrease - if true delay increases, if false delay resets to initialDelay
    • linearIncreasingDelay

      public <T> DelayStrategy<T> linearIncreasingDelay(Duration increaseStep, scala.Function1<T,Object> needsIncrease, Duration initialDelay)
      Strategy with linear increasing delay. It starts with initialDelay for each element, increases by increaseStep every time when needsIncrease returns true. when needsIncrease returns false it resets to initialDelay.
      Parameters:
      increaseStep - step by which delay is increased
      needsIncrease - if true delay increases, if false delay resets to initialDelay
      initialDelay - initial delay for each of elements
    • linearIncreasingDelay

      public <T> DelayStrategy<T> linearIncreasingDelay(Duration increaseStep, scala.Function1<T,Object> needsIncrease, Duration initialDelay, Duration maxDelay)
      Strategy with linear increasing delay. It starts with initialDelay for each element, increases by increaseStep every time when needsIncrease returns true up to maxDelay, when needsIncrease returns false it resets to initialDelay.
      Parameters:
      increaseStep - step by which delay is increased
      needsIncrease - if true delay increases, if false delay resets to initialDelay
      initialDelay - initial delay for each of elements
      maxDelay - limits maximum delay