Interface RateLimiter

  • All Known Implementing Classes:
    FastRateLimiter

    public interface RateLimiter
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void destroy()
      Cleanup no longer needed resources.
      int getDuration()  
      int getRequests()  
      int increment​(java.lang.String ipAddress)
      Increments the number of requests by the given ipAddress in the current time window.
      void setDuration​(int duration)
      Sets the configured duration value in seconds.
      void setFilterConfig​(FilterConfig filterConfig)
      Pass the FilterConfig to configure the filter.
      void setRequests​(int requests)
      Sets the configured number of requests allowed per time window.
    • Method Detail

      • getDuration

        int getDuration()
        Returns:
        the actual duration of a time window in seconds
      • setDuration

        void setDuration​(int duration)
        Sets the configured duration value in seconds.
        Parameters:
        duration - The duration of the time window in seconds
      • getRequests

        int getRequests()
        Returns:
        the maximum number of requests allowed per time window
      • setRequests

        void setRequests​(int requests)
        Sets the configured number of requests allowed per time window.
        Parameters:
        requests - The number of requests per time window
      • increment

        int increment​(java.lang.String ipAddress)
        Increments the number of requests by the given ipAddress in the current time window.
        Parameters:
        ipAddress - the ip address
        Returns:
        the new value after incrementing
      • destroy

        void destroy()
        Cleanup no longer needed resources.
      • setFilterConfig

        void setFilterConfig​(FilterConfig filterConfig)
        Pass the FilterConfig to configure the filter.
        Parameters:
        filterConfig - The FilterConfig used to configure the associated filter