Package org.forgerock.openig.filter.throttling
This package contains the components used to implement a throttling rate support.
-
Interface Summary Interface Description ThrottlingPolicy This interface defines the contract to lookup aThrottlingRate
that will be applied to the givenRequest
.ThrottlingStrategy This interface defines the contract for any throttling strategy. -
Class Summary Class Description DefaultRateThrottlingPolicy ADefaultRateThrottlingPolicy
is a delegatingThrottlingPolicy
that ensures the returnedThrottlingRate
is never null.DefaultRateThrottlingPolicyHeaplet Creates and initializes aDefaultRateThrottlingPolicy
in a heap environment.FixedRateThrottlingPolicy An implementation of theThrottlingPolicy
that always returns the same throtlling rate.MappedThrottlingPolicy Implementation ofThrottlingPolicy
backed by aMap
.MappedThrottlingPolicyHeaplet Creates and initializes aMappedThrottlingPolicy
in a heap environment.ScriptableThrottlingPolicy A scriptable throttling datasource.ScriptableThrottlingPolicy.Heaplet Creates and initializes a scriptable object in a heap environment.ThrottlingFilter This filter applies a rate limitation to incoming requests : over the limit requests will be rejected with a 429 (Too Many Requests) response, others will pass through.ThrottlingFilterHeaplet Creates and initializes a throttling filter in a heap environment.ThrottlingRate A value object to represent a throttling rate.TokenBucketThrottlingStrategy The rate limiting is implemented as a token bucket strategy that gives us the ability to handle rate limits through a sliding window.