Annotation Interface RateLimiter


@Retention(RUNTIME) @Target({METHOD,TYPE}) @Around @Documented @Executable public @interface RateLimiter
This annotation can be applied to a class or a specific method. Applying it on a class is equivalent to applying it on all its public methods. The annotation enables throttling for all methods where it is applied. Throttling monitoring is performed via a rate limiter. See RateLimiter for details.
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    Name of the rate limiter
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    fallbackMethod method name.
  • Element Details

    • name

      String name
      Name of the rate limiter
      Returns:
      the name of the limiter
    • fallbackMethod

      String fallbackMethod
      fallbackMethod method name.
      Returns:
      fallbackMethod method name.
      Default:
      ""