org.eclipse.jetty.server.handler
Class GzipHandler

java.lang.Object
  extended by org.eclipse.jetty.util.component.AbstractLifeCycle
      extended by org.eclipse.jetty.util.component.AggregateLifeCycle
          extended by org.eclipse.jetty.server.handler.AbstractHandler
              extended by org.eclipse.jetty.server.handler.AbstractHandlerContainer
                  extended by org.eclipse.jetty.server.handler.HandlerWrapper
                      extended by org.eclipse.jetty.server.handler.GzipHandler
All Implemented Interfaces:
Handler, HandlerContainer, Destroyable, Dumpable, LifeCycle

public class GzipHandler
extends HandlerWrapper

GZIP Handler This handler will gzip the content of a response if:

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.


Nested Class Summary
 
Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
AbstractLifeCycle.AbstractLifeCycleListener
 
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.LifeCycle
LifeCycle.Listener
 
Field Summary
protected  int _bufferSize
           
protected  Set<String> _excluded
           
protected  Set<String> _mimeTypes
           
protected  int _minGzipSize
           
 
Fields inherited from class org.eclipse.jetty.server.handler.HandlerWrapper
_handler
 
Fields inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
_listeners, FAILED, RUNNING, STARTED, STARTING, STOPPED, STOPPING
 
Constructor Summary
GzipHandler()
          Instantiates a new gzip handler.
 
Method Summary
 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.
 void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)
          Handle a request.
protected  GzipResponseWrapper newGzipResponseWrapper(HttpServletRequest request, 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.
 
Methods inherited from class org.eclipse.jetty.server.handler.HandlerWrapper
destroy, doStart, doStop, expandChildren, getHandler, getHandlers, getNestedHandlerByClass, setHandler, setServer
 
Methods inherited from class org.eclipse.jetty.server.handler.AbstractHandlerContainer
dump, expandHandler, findContainerOf, getChildHandlerByClass, getChildHandlers, getChildHandlersByClass
 
Methods inherited from class org.eclipse.jetty.server.handler.AbstractHandler
dumpThis, getServer
 
Methods inherited from class org.eclipse.jetty.util.component.AggregateLifeCycle
addBean, addBean, contains, dump, dump, dump, dump, dumpStdErr, getBean, getBeans, getBeans, isManaged, manage, removeBean, removeBeans, unmanage
 
Methods inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
addLifeCycleListener, getState, getState, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.jetty.util.component.LifeCycle
addLifeCycleListener, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop
 

Field Detail

_mimeTypes

protected Set<String> _mimeTypes

_excluded

protected Set<String> _excluded

_bufferSize

protected int _bufferSize

_minGzipSize

protected int _minGzipSize
Constructor Detail

GzipHandler

public GzipHandler()
Instantiates a new gzip handler.

Method Detail

getMimeTypes

public Set<String> getMimeTypes()
Get the mime types.

Returns:
mime types to set

setMimeTypes

public void setMimeTypes(Set<String> mimeTypes)
Set the mime types.

Parameters:
mimeTypes - the mime types to set

setMimeTypes

public void setMimeTypes(String mimeTypes)
Set the mime types.

Parameters:
mimeTypes - the mime types to set

getExcluded

public Set<String> getExcluded()
Get the excluded user agents.

Returns:
excluded user agents

setExcluded

public void setExcluded(Set<String> excluded)
Set the excluded user agents.

Parameters:
excluded - excluded user agents to set

setExcluded

public void setExcluded(String excluded)
Set the excluded user agents.

Parameters:
excluded - excluded user agents to set

getBufferSize

public int getBufferSize()
Get the buffer size.

Returns:
the buffer size

setBufferSize

public void setBufferSize(int bufferSize)
Set the buffer size.

Parameters:
bufferSize - buffer size to set

getMinGzipSize

public int getMinGzipSize()
Get the minimum reponse size.

Returns:
minimum reponse size

setMinGzipSize

public void setMinGzipSize(int minGzipSize)
Set the minimum reponse size.

Parameters:
minGzipSize - minimum reponse size

handle

public void handle(String target,
                   Request baseRequest,
                   HttpServletRequest request,
                   HttpServletResponse response)
            throws IOException,
                   ServletException
Description copied from interface: Handler
Handle a request.

Specified by:
handle in interface Handler
Overrides:
handle in class HandlerWrapper
Parameters:
target - 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.
Throws:
IOException
ServletException
See Also:
HandlerWrapper.handle(java.lang.String, org.eclipse.jetty.server.Request, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)

newGzipResponseWrapper

protected GzipResponseWrapper newGzipResponseWrapper(HttpServletRequest request,
                                                     HttpServletResponse response)
Allows derived implementations to replace ResponseWrapper implementation.

Parameters:
request - the request
response - the response
Returns:
the gzip response wrapper

newWriter

protected PrintWriter newWriter(OutputStream out,
                                String encoding)
                         throws UnsupportedEncodingException
Allows derived implementations to replace PrintWriter implementation.

Parameters:
out - the out
encoding - the encoding
Returns:
the prints the writer
Throws:
UnsupportedEncodingException


Copyright © 1995-2012 Mort Bay Consulting. All Rights Reserved.