Package org.codelibs.fess.filter
Class LoadControlFilter
java.lang.Object
org.codelibs.fess.filter.LoadControlFilter
- All Implemented Interfaces:
jakarta.servlet.Filter
Filter for CPU load-based request control.
Returns HTTP 429 (Too Many Requests) when CPU usage exceeds configurable thresholds.
Web and API requests have independent threshold settings.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoiddoFilter(jakarta.servlet.ServletRequest request, jakarta.servlet.ServletResponse response, jakarta.servlet.FilterChain chain) protected booleanisExcludedPath(String path) Checks if the given path should be excluded from load control.protected voidsendApiResponse(jakarta.servlet.http.HttpServletResponse response) Sends a 429 JSON response for API requests.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface jakarta.servlet.Filter
destroy, init
-
Constructor Details
-
LoadControlFilter
public LoadControlFilter()Creates a new instance of LoadControlFilter.
-
-
Method Details
-
doFilter
public void doFilter(jakarta.servlet.ServletRequest request, jakarta.servlet.ServletResponse response, jakarta.servlet.FilterChain chain) throws IOException, jakarta.servlet.ServletException - Specified by:
doFilterin interfacejakarta.servlet.Filter- Throws:
IOExceptionjakarta.servlet.ServletException
-
isExcludedPath
Checks if the given path should be excluded from load control.- Parameters:
path- the request path- Returns:
- true if the path should be excluded
-
sendApiResponse
protected void sendApiResponse(jakarta.servlet.http.HttpServletResponse response) throws IOException Sends a 429 JSON response for API requests.- Parameters:
response- the HTTP response- Throws:
IOException- if an I/O error occurs
-