Package org.languagetool.server
Class ErrorRequestLimiter
java.lang.Object
org.languagetool.server.RequestLimiter
org.languagetool.server.ErrorRequestLimiter
Limit the maximum number of request per IP address for a given time range.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.languagetool.server.RequestLimiter
RequestLimiter.RequestEvent
-
Field Summary
Fields inherited from class org.languagetool.server.RequestLimiter
REQUEST_QUEUE_SIZE, requestEvents
-
Constructor Summary
Constructors -
Method Summary
Methods inherited from class org.languagetool.server.RequestLimiter
checkAccess, checkLimit, computeFingerprint, getRequestLimit, getRequestLimitInBytes, getRequestLimitPeriodInSeconds
-
Constructor Details
-
ErrorRequestLimiter
ErrorRequestLimiter(int requestLimit, int requestLimitPeriodInSeconds) - Parameters:
requestLimit
- the maximum number of request per requestLimitPeriodInSecondsrequestLimitPeriodInSeconds
- the time period over which requests are considered, in seconds
-
-
Method Details
-
wouldAccessBeOkay
boolean wouldAccessBeOkay(String ipAddress, Map<String, String> parameters, Map<String, List<String>> httpHeader) - Parameters:
ipAddress
- the client's IP address- Returns:
- true if access is allowed because the request limit is not reached yet
-
logAccess
- Parameters:
ipAddress
- the client's IP addressparams
- the request's query parameters
-