java.lang.Object
jakarta.servlet.ServletResponseWrapper
jakarta.servlet.http.HttpServletResponseWrapper
org.omnifaces.servlet.HttpServletResponseOutputWrapper
org.omnifaces.servlet.CompressedHttpServletResponse
- All Implemented Interfaces:
HttpServletResponse,ServletResponse
This HTTP servlet response wrapper will compress the response with the given algorithm when the given threshold has
exceeded and the response content type matches one of the given mimetypes.
- Since:
- 4.5
- Author:
- Bauke Scholtz
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumAvailable compression algorithms. -
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_MISDIRECTED_REQUEST, 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_PERMANENT_REDIRECT, 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_UNPROCESSABLE_CONTENT, SC_UNSUPPORTED_MEDIA_TYPE, SC_UPGRADE_REQUIRED, SC_USE_PROXY -
Constructor Summary
ConstructorsConstructorDescriptionCompressedHttpServletResponse(HttpServletResponse response, CompressedHttpServletResponse.Algorithm algorithm, int threshold, Set<String> mimetypes) Construct a new compressed HTTP servlet response based on the given response, algorithm, threshold and mimetypes. -
Method Summary
Modifier and TypeMethodDescriptionvoidvoidclose()Close the response body.protected OutputStreamReturns the custom implementation of the servlet responseOutputStream.voidvoidreset()voidsetContentLength(int contentLength) voidsetContentLengthLong(long contentLength) voidMethods inherited from class org.omnifaces.servlet.HttpServletResponseOutputWrapper
getOutputStream, getWriter, isCommitted, isPassThrough, setPassThroughMethods inherited from class jakarta.servlet.http.HttpServletResponseWrapper
addCookie, addDateHeader, addIntHeader, containsHeader, encodeRedirectURL, encodeURL, getHeader, getHeaderNames, getHeaders, getStatus, getTrailerFields, sendError, sendError, sendRedirect, sendRedirect, sendRedirect, sendRedirect, setDateHeader, setIntHeader, setStatus, setTrailerFieldsMethods inherited from class jakarta.servlet.ServletResponseWrapper
getBufferSize, getCharacterEncoding, getContentType, getLocale, getResponse, isWrapperFor, isWrapperFor, resetBuffer, setBufferSize, setCharacterEncoding, setCharacterEncoding, setContentType, setLocale, setResponseMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface jakarta.servlet.ServletResponse
getBufferSize, getCharacterEncoding, getContentType, getLocale, resetBuffer, setBufferSize, setCharacterEncoding, setCharacterEncoding, setContentType, setLocale
-
Constructor Details
-
CompressedHttpServletResponse
public CompressedHttpServletResponse(HttpServletResponse response, CompressedHttpServletResponse.Algorithm algorithm, int threshold, Set<String> mimetypes) Construct a new compressed HTTP servlet response based on the given response, algorithm, threshold and mimetypes.- Parameters:
response- The HTTP servlet response.algorithm- The compression algorithm to use.threshold- The compression buffer threshold.mimetypes- The mimetypes which needs to be compressed.
-
-
Method Details
-
setContentLength
public void setContentLength(int contentLength) - Specified by:
setContentLengthin interfaceServletResponse- Overrides:
setContentLengthin classServletResponseWrapper
-
setContentLengthLong
public void setContentLengthLong(long contentLength) - Specified by:
setContentLengthLongin interfaceServletResponse- Overrides:
setContentLengthLongin classServletResponseWrapper
-
setHeader
- Specified by:
setHeaderin interfaceHttpServletResponse- Overrides:
setHeaderin classHttpServletResponseWrapper
-
addHeader
- Specified by:
addHeaderin interfaceHttpServletResponse- Overrides:
addHeaderin classHttpServletResponseWrapper
-
flushBuffer
- Specified by:
flushBufferin interfaceServletResponse- Overrides:
flushBufferin classHttpServletResponseOutputWrapper- Throws:
IOException
-
reset
public void reset()- Specified by:
resetin interfaceServletResponse- Overrides:
resetin classHttpServletResponseOutputWrapper
-
close
Description copied from class:HttpServletResponseOutputWrapperClose the response body. This closes any created writer or output stream.- Overrides:
closein classHttpServletResponseOutputWrapper- Throws:
IOException- When an I/O error occurs.
-
createOutputStream
Description copied from class:HttpServletResponseOutputWrapperReturns the custom implementation of the servlet responseOutputStream.- Specified by:
createOutputStreamin classHttpServletResponseOutputWrapper- Returns:
- The custom implementation of the servlet response
OutputStream.
-