Class QuotaPolicy
- java.lang.Object
-
- io.apiman.gateway.engine.policies.AbstractMappedPolicy<RateLimitingConfig>
-
- io.apiman.gateway.engine.policies.RateLimitingPolicy
-
- io.apiman.gateway.engine.policies.QuotaPolicy
-
- All Implemented Interfaces:
IPolicy,IPolicyProbe<RateLimitingConfig,RateLimitingProbeConfig>
public class QuotaPolicy extends RateLimitingPolicy implements IPolicyProbe<RateLimitingConfig,RateLimitingProbeConfig>
Similar to the rate limiting policy, but less granular. Useful primarily so that both a quota and a rate limit can be active at the same time.- Author:
- eric.wittmann@redhat.com
-
-
Field Summary
-
Fields inherited from interface io.apiman.gateway.engine.policy.IPolicyProbe
mapper
-
-
Constructor Summary
Constructors Constructor Description QuotaPolicy()Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected StringbucketId(RateLimitingConfig config, BucketFactory.BucketIdBuilderContext context)protected StringdefaultLimitHeader()protected StringdefaultRemainingHeader()protected StringdefaultResetHeader()protected PolicyFailurelimitExceededFailure(IPolicyFailureFactoryComponent failureFactory)Generate a rate limit exceeded policy failure.-
Methods inherited from class io.apiman.gateway.engine.policies.RateLimitingPolicy
bucketId, doApply, doApply, getConfigurationClass, getProbeRequestClass, probe, responseHeaders
-
Methods inherited from class io.apiman.gateway.engine.policies.AbstractMappedPolicy
apply, apply, doProcessFailure, parseConfiguration, processFailure
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.apiman.gateway.engine.policy.IPolicy
apply, apply, parseConfiguration, processFailure
-
Methods inherited from interface io.apiman.gateway.engine.policy.IPolicyProbe
getConfigurationClass, getProbeRequestClass, probe, probe
-
-
-
-
Method Detail
-
limitExceededFailure
protected PolicyFailure limitExceededFailure(IPolicyFailureFactoryComponent failureFactory)
Description copied from class:RateLimitingPolicyGenerate a rate limit exceeded policy failure.- Overrides:
limitExceededFailurein classRateLimitingPolicy- Parameters:
failureFactory- failure factory- Returns:
- a limit exceeded policy failure
- See Also:
RateLimitingPolicy.limitExceededFailure(io.apiman.gateway.engine.components.IPolicyFailureFactoryComponent)
-
defaultLimitHeader
protected String defaultLimitHeader()
- Overrides:
defaultLimitHeaderin classRateLimitingPolicy- Returns:
- the default limit header
- See Also:
RateLimitingPolicy.defaultLimitHeader()
-
defaultRemainingHeader
protected String defaultRemainingHeader()
- Overrides:
defaultRemainingHeaderin classRateLimitingPolicy- Returns:
- the default remaining header
- See Also:
RateLimitingPolicy.defaultRemainingHeader()
-
defaultResetHeader
protected String defaultResetHeader()
- Overrides:
defaultResetHeaderin classRateLimitingPolicy- Returns:
- the default reset header
- See Also:
RateLimitingPolicy.defaultResetHeader()
-
bucketId
protected String bucketId(RateLimitingConfig config, BucketFactory.BucketIdBuilderContext context)
- Overrides:
bucketIdin classRateLimitingPolicy
-
-