Class ReactorRateLimiterAspectExt

  • All Implemented Interfaces:
    RateLimiterAspectExt

    public class ReactorRateLimiterAspectExt
    extends java.lang.Object
    implements RateLimiterAspectExt
    the Reactor RateLimiter logic support for the spring AOP Conditional on Reactor class existence on spring class loader
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean canHandleReturnType​(java.lang.Class returnType)  
      java.lang.Object handle​(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint, io.github.resilience4j.ratelimiter.RateLimiter rateLimiter, java.lang.String methodName)
      handle the Spring web flux (Flux /Mono) return types AOP based into reactor rate limiter See RateLimiter for details.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ReactorRateLimiterAspectExt

        public ReactorRateLimiterAspectExt()
    • Method Detail

      • canHandleReturnType

        public boolean canHandleReturnType​(java.lang.Class returnType)
        Specified by:
        canHandleReturnType in interface RateLimiterAspectExt
        Parameters:
        returnType - the AOP method return type class
        Returns:
        boolean if the method has Reactor return type
      • handle

        public java.lang.Object handle​(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint,
                                       io.github.resilience4j.ratelimiter.RateLimiter rateLimiter,
                                       java.lang.String methodName)
                                throws java.lang.Throwable
        handle the Spring web flux (Flux /Mono) return types AOP based into reactor rate limiter See RateLimiter for details.
        Specified by:
        handle in interface RateLimiterAspectExt
        Parameters:
        proceedingJoinPoint - Spring AOP proceedingJoinPoint
        rateLimiter - the configured rateLimiter
        methodName - the method name
        Returns:
        the result object
        Throws:
        java.lang.Throwable - exception in case of faulty flow