Class RateLimiterTransformer<T>

java.lang.Object
io.github.resilience4j.ratpack.internal.AbstractTransformer<T>
io.github.resilience4j.ratpack.ratelimiter.RateLimiterTransformer<T>
All Implemented Interfaces:
ratpack.func.Function<ratpack.exec.Upstream<? extends T>,​ratpack.exec.Upstream<T>>

public class RateLimiterTransformer<T>
extends AbstractTransformer<T>
  • Nested Class Summary

    Nested classes/interfaces inherited from interface ratpack.func.Function

    ratpack.func.Function.ConditionalSpec<I extends java.lang.Object,​O extends java.lang.Object>
  • Field Summary

    Fields inherited from class io.github.resilience4j.ratpack.internal.AbstractTransformer

    recoverer
  • Method Summary

    Modifier and Type Method Description
    ratpack.exec.Upstream<T> apply​(ratpack.exec.Upstream<? extends T> upstream)  
    static <T> RateLimiterTransformer<T> of​(io.github.resilience4j.ratelimiter.RateLimiter rateLimiter)
    Create a new transformer that can be applied to the Promise.transform(Function) method.
    RateLimiterTransformer<T> recover​(ratpack.func.Function<java.lang.Throwable,​? extends T> recoverer)
    Set a recovery function that will execute when the rateLimiter limit is exceeded.

    Methods inherited from class io.github.resilience4j.ratpack.internal.AbstractTransformer

    handleRecovery

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface ratpack.func.Function

    andThen, compose, toFunction, toGuavaFunction
  • Method Details

    • of

      public static <T> RateLimiterTransformer<T> of​(io.github.resilience4j.ratelimiter.RateLimiter rateLimiter)
      Create a new transformer that can be applied to the Promise.transform(Function) method. The Promised value will pass through the rateLimiter, potentially causing it to rateLimiter on error.
      Type Parameters:
      T - the type of object
      Parameters:
      rateLimiter - the rateLimiter to use
      Returns:
      the transformer
    • recover

      public RateLimiterTransformer<T> recover​(ratpack.func.Function<java.lang.Throwable,​? extends T> recoverer)
      Set a recovery function that will execute when the rateLimiter limit is exceeded.
      Parameters:
      recoverer - the recovery function
      Returns:
      the transformer
    • apply

      public ratpack.exec.Upstream<T> apply​(ratpack.exec.Upstream<? extends T> upstream) throws java.lang.Exception
      Throws:
      java.lang.Exception