public class RateLimitingPolicy extends AbstractMappedPolicy<RateLimitingConfig>
| Modifier and Type | Field and Description |
|---|---|
protected static String |
NO_APPLICATION_AVAILABLE |
protected static String |
NO_USER_AVAILABLE |
| Constructor and Description |
|---|
RateLimitingPolicy()
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
protected static String |
bucketId(io.apiman.gateway.engine.beans.ServiceRequest request,
RateLimitingConfig config)
Creates the ID of the rate bucket to use.
|
protected String |
createBucketId(io.apiman.gateway.engine.beans.ServiceRequest request,
RateLimitingConfig config) |
protected String |
defaultLimitHeader() |
protected String |
defaultRemainingHeader() |
protected String |
defaultResetHeader() |
protected void |
doApply(io.apiman.gateway.engine.beans.ServiceRequest request,
io.apiman.gateway.engine.policy.IPolicyContext context,
RateLimitingConfig config,
io.apiman.gateway.engine.policy.IPolicyChain<io.apiman.gateway.engine.beans.ServiceRequest> chain) |
protected void |
doApply(io.apiman.gateway.engine.beans.ServiceResponse response,
io.apiman.gateway.engine.policy.IPolicyContext context,
RateLimitingConfig config,
io.apiman.gateway.engine.policy.IPolicyChain<io.apiman.gateway.engine.beans.ServiceResponse> chain)
Apply the policy to the response.
|
protected Class<RateLimitingConfig> |
getConfigurationClass() |
protected static io.apiman.gateway.engine.rates.RateBucketPeriod |
getPeriod(RateLimitingConfig config)
Gets the appropriate bucket period from the config.
|
protected io.apiman.gateway.engine.beans.PolicyFailure |
limitExceededFailure(io.apiman.gateway.engine.components.IPolicyFailureFactoryComponent failureFactory) |
protected static Map<String,String> |
responseHeaders(RateLimitingConfig config,
io.apiman.gateway.engine.components.rate.RateLimitResponse rtr,
String defaultLimitHeader,
String defaultRemainingHeader,
String defaultResetHeader) |
apply, apply, parseConfigurationprotected static final String NO_USER_AVAILABLE
protected static final String NO_APPLICATION_AVAILABLE
protected Class<RateLimitingConfig> getConfigurationClass()
getConfigurationClass in class AbstractMappedPolicy<RateLimitingConfig>io.apiman.gateway.engine.policy.AbstractPolicy#getConfigurationClass()protected void doApply(io.apiman.gateway.engine.beans.ServiceRequest request,
io.apiman.gateway.engine.policy.IPolicyContext context,
RateLimitingConfig config,
io.apiman.gateway.engine.policy.IPolicyChain<io.apiman.gateway.engine.beans.ServiceRequest> chain)
protected String createBucketId(io.apiman.gateway.engine.beans.ServiceRequest request, RateLimitingConfig config)
request - config - protected void doApply(io.apiman.gateway.engine.beans.ServiceResponse response,
io.apiman.gateway.engine.policy.IPolicyContext context,
RateLimitingConfig config,
io.apiman.gateway.engine.policy.IPolicyChain<io.apiman.gateway.engine.beans.ServiceResponse> chain)
AbstractMappedPolicyprotected static String bucketId(io.apiman.gateway.engine.beans.ServiceRequest request, RateLimitingConfig config)
request - config - protected static io.apiman.gateway.engine.rates.RateBucketPeriod getPeriod(RateLimitingConfig config)
config - protected static Map<String,String> responseHeaders(RateLimitingConfig config, io.apiman.gateway.engine.components.rate.RateLimitResponse rtr, String defaultLimitHeader, String defaultRemainingHeader, String defaultResetHeader)
config - rtr - defaultLimitHeader - defaultRemainingHeader - defaultResetHeader - protected io.apiman.gateway.engine.beans.PolicyFailure limitExceededFailure(io.apiman.gateway.engine.components.IPolicyFailureFactoryComponent failureFactory)
responseHeaders - failureFactory - protected String defaultResetHeader()
protected String defaultRemainingHeader()
protected String defaultLimitHeader()
Copyright © 2015 JBoss, a division of Red Hat. All rights reserved.