Class GzipHttpServletResponse
java.lang.Object
jakarta.servlet.ServletResponseWrapper
jakarta.servlet.http.HttpServletResponseWrapper
org.openremote.container.web.file.HttpServletResponseOutputWrapper
org.openremote.container.web.file.GzipHttpServletResponse
- All Implemented Interfaces:
jakarta.servlet.http.HttpServletResponse
,jakarta.servlet.ServletResponse
This HTTP servlet response wrapper will GZIP the response when the given threshold has exceeded and the response
content type matches one of the given mimetypes.
- Since:
- 1.1
-
Field Summary
Fields inherited from interface jakarta.servlet.http.HttpServletResponse
SC_ACCEPTED, SC_BAD_GATEWAY, SC_BAD_REQUEST, SC_CONFLICT, SC_CONTINUE, SC_CREATED, SC_EXPECTATION_FAILED, SC_FORBIDDEN, SC_FOUND, SC_GATEWAY_TIMEOUT, SC_GONE, SC_HTTP_VERSION_NOT_SUPPORTED, SC_INTERNAL_SERVER_ERROR, SC_LENGTH_REQUIRED, SC_METHOD_NOT_ALLOWED, SC_MOVED_PERMANENTLY, SC_MOVED_TEMPORARILY, SC_MULTIPLE_CHOICES, SC_NO_CONTENT, SC_NON_AUTHORITATIVE_INFORMATION, SC_NOT_ACCEPTABLE, SC_NOT_FOUND, SC_NOT_IMPLEMENTED, SC_NOT_MODIFIED, SC_OK, SC_PARTIAL_CONTENT, SC_PAYMENT_REQUIRED, SC_PRECONDITION_FAILED, SC_PROXY_AUTHENTICATION_REQUIRED, SC_REQUEST_ENTITY_TOO_LARGE, SC_REQUEST_TIMEOUT, SC_REQUEST_URI_TOO_LONG, SC_REQUESTED_RANGE_NOT_SATISFIABLE, SC_RESET_CONTENT, SC_SEE_OTHER, SC_SERVICE_UNAVAILABLE, SC_SWITCHING_PROTOCOLS, SC_TEMPORARY_REDIRECT, SC_UNAUTHORIZED, SC_UNSUPPORTED_MEDIA_TYPE, SC_USE_PROXY
-
Constructor Summary
ConstructorsConstructorDescriptionGzipHttpServletResponse
(jakarta.servlet.http.HttpServletResponse wrapped, int threshold, Set<String> mimetypes) Construct a new GZIP HTTP servlet response based on the given wrapped response, threshold and mimetypes. -
Method Summary
Modifier and TypeMethodDescriptionvoid
void
close()
Close the response body.protected OutputStream
Returns the custom implementation of the servlet responseOutputStream
.void
static <T> boolean
isOneOf
(T object, T... objects) Returnstrue
if the given object equals one of the given objects.void
reset()
void
setContentLength
(int contentLength) void
setContentLengthLong
(long contentLength) void
Methods inherited from class org.openremote.container.web.file.HttpServletResponseOutputWrapper
getOutputStream, getWriter, isCommitted, isPassThrough, setPassThrough
Methods inherited from class jakarta.servlet.http.HttpServletResponseWrapper
addCookie, addDateHeader, addIntHeader, containsHeader, encodeRedirectURL, encodeURL, getHeader, getHeaderNames, getHeaders, getStatus, getTrailerFields, sendError, sendError, sendRedirect, setDateHeader, setIntHeader, setStatus, setTrailerFields
Methods inherited from class jakarta.servlet.ServletResponseWrapper
getBufferSize, getCharacterEncoding, getContentType, getLocale, getResponse, isWrapperFor, isWrapperFor, resetBuffer, setBufferSize, setCharacterEncoding, setContentType, setLocale, setResponse
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface jakarta.servlet.ServletResponse
getBufferSize, getCharacterEncoding, getContentType, getLocale, resetBuffer, setBufferSize, setCharacterEncoding, setContentType, setLocale
-
Constructor Details
-
GzipHttpServletResponse
public GzipHttpServletResponse(jakarta.servlet.http.HttpServletResponse wrapped, int threshold, Set<String> mimetypes) Construct a new GZIP HTTP servlet response based on the given wrapped response, threshold and mimetypes.- Parameters:
wrapped
- The wrapped response.threshold
- The GZIP buffer threshold.mimetypes
- The mimetypes which needs to be compressed with GZIP.
-
-
Method Details
-
setContentLength
public void setContentLength(int contentLength) - Specified by:
setContentLength
in interfacejakarta.servlet.ServletResponse
- Overrides:
setContentLength
in classjakarta.servlet.ServletResponseWrapper
-
setContentLengthLong
public void setContentLengthLong(long contentLength) - Specified by:
setContentLengthLong
in interfacejakarta.servlet.ServletResponse
- Overrides:
setContentLengthLong
in classjakarta.servlet.ServletResponseWrapper
-
setHeader
- Specified by:
setHeader
in interfacejakarta.servlet.http.HttpServletResponse
- Overrides:
setHeader
in classjakarta.servlet.http.HttpServletResponseWrapper
-
addHeader
- Specified by:
addHeader
in interfacejakarta.servlet.http.HttpServletResponse
- Overrides:
addHeader
in classjakarta.servlet.http.HttpServletResponseWrapper
-
flushBuffer
- Specified by:
flushBuffer
in interfacejakarta.servlet.ServletResponse
- Overrides:
flushBuffer
in classHttpServletResponseOutputWrapper
- Throws:
IOException
-
reset
public void reset()- Specified by:
reset
in interfacejakarta.servlet.ServletResponse
- Overrides:
reset
in classHttpServletResponseOutputWrapper
-
close
Description copied from class:HttpServletResponseOutputWrapper
Close the response body. This closes any created writer or output stream.- Overrides:
close
in classHttpServletResponseOutputWrapper
- Throws:
IOException
- When an I/O error occurs.
-
createOutputStream
Description copied from class:HttpServletResponseOutputWrapper
Returns the custom implementation of the servlet responseOutputStream
.- Specified by:
createOutputStream
in classHttpServletResponseOutputWrapper
- Returns:
- The custom implementation of the servlet response
OutputStream
.
-
isOneOf
Returnstrue
if the given object equals one of the given objects.- Type Parameters:
T
- The generic object type.- Parameters:
object
- The object to be checked if it equals one of the given objects.objects
- The argument list of objects to be tested for equality.- Returns:
true
if the given object equals one of the given objects.
-