public class GzipHandler extends HandlerWrapper
minGzipSize initParameter or the minGzipSize is 0(default)mimeTypes initParameter or if no mimeTypes are defined the
content-type is not "application/gzip"
Compressing the content can greatly improve the network bandwidth usage, but at a cost of memory and CPU cycles. If this handler is used for static content,
then use of efficient direct NIO may be prevented, thus use of the gzip mechanism of the org.eclipse.jetty.servlet.DefaultServlet is advised instead.
AbstractLifeCycle.AbstractLifeCycleListenerLifeCycle.Listener| Modifier and Type | Field and Description |
|---|---|
protected int |
_bufferSize |
protected Set<String> |
_excluded |
protected Set<String> |
_mimeTypes |
protected int |
_minGzipSize |
protected String |
_vary |
_handler_listeners, FAILED, RUNNING, STARTED, STARTING, STOPPED, STOPPING| Constructor and Description |
|---|
GzipHandler()
Instantiates a new gzip handler.
|
| Modifier and Type | Method and Description |
|---|---|
int |
getBufferSize()
Get the buffer size.
|
Set<String> |
getExcluded()
Get the excluded user agents.
|
Set<String> |
getMimeTypes()
Get the mime types.
|
int |
getMinGzipSize()
Get the minimum reponse size.
|
String |
getVary() |
void |
handle(String target,
Request baseRequest,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
Handle a request.
|
protected CompressedResponseWrapper |
newGzipResponseWrapper(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
Allows derived implementations to replace ResponseWrapper implementation.
|
protected PrintWriter |
newWriter(OutputStream out,
String encoding)
Allows derived implementations to replace PrintWriter implementation.
|
void |
setBufferSize(int bufferSize)
Set the buffer size.
|
void |
setExcluded(Set<String> excluded)
Set the excluded user agents.
|
void |
setExcluded(String excluded)
Set the excluded user agents.
|
void |
setMimeTypes(Set<String> mimeTypes)
Set the mime types.
|
void |
setMimeTypes(String mimeTypes)
Set the mime types.
|
void |
setMinGzipSize(int minGzipSize)
Set the minimum reponse size.
|
void |
setVary(String vary)
Set the value of the Vary header sent with responses that could be compressed.
|
destroy, doStart, doStop, expandChildren, getHandler, getHandlers, getNestedHandlerByClass, setHandler, setServerdump, expandHandler, findContainerOf, getChildHandlerByClass, getChildHandlers, getChildHandlersByClassdumpThis, getServeraddBean, addBean, contains, dump, dump, dump, dump, dumpObject, dumpStdErr, getBean, getBeans, getBeans, isManaged, manage, removeBean, removeBeans, unmanageaddLifeCycleListener, getState, getState, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stopclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaddLifeCycleListener, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stopprotected int _bufferSize
protected int _minGzipSize
protected String _vary
public void setMimeTypes(Set<String> mimeTypes)
mimeTypes - the mime types to setpublic void setMimeTypes(String mimeTypes)
mimeTypes - the mime types to setpublic Set<String> getExcluded()
public void setExcluded(Set<String> excluded)
excluded - excluded user agents to setpublic void setExcluded(String excluded)
excluded - excluded user agents to setpublic String getVary()
public void setVary(String vary)
By default it is set to 'Accept-Encoding, User-Agent' since IE6 is excluded by default from the excludedAgents. If user-agents are not to be excluded, then this can be set to 'Accept-Encoding'. Note also that shared caches may cache many copies of a resource that is varied by User-Agent - one per variation of the User-Agent, unless the cache does some normalization of the UA string.
vary - The value of the Vary header set if a response can be compressed.public int getBufferSize()
public void setBufferSize(int bufferSize)
bufferSize - buffer size to setpublic int getMinGzipSize()
public void setMinGzipSize(int minGzipSize)
minGzipSize - minimum reponse sizepublic void handle(String target, Request baseRequest, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws IOException, javax.servlet.ServletException
Handlerhandle in interface Handlerhandle in class HandlerWrappertarget - The target of the request - either a URI or a name.baseRequest - The original unwrapped request object.request - The request either as the Request
object or a wrapper of that request. The AbstractHttpConnection.getCurrentConnection()
method can be used access the Request object if required.response - The response as the Response
object or a wrapper of that request. The AbstractHttpConnection.getCurrentConnection()
method can be used access the Response object if required.IOExceptionjavax.servlet.ServletExceptionHandlerWrapper.handle(java.lang.String, org.eclipse.jetty.server.Request, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)protected CompressedResponseWrapper newGzipResponseWrapper(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
request - the requestresponse - the responseprotected PrintWriter newWriter(OutputStream out, String encoding) throws UnsupportedEncodingException
out - the outencoding - the encodingUnsupportedEncodingExceptionCopyright © 1995-2013 Mort Bay Consulting. All Rights Reserved.