org.w3c.jigsaw.filters
Class TEFilter
java.lang.Object
org.w3c.tools.resources.AttributeHolder
org.w3c.tools.resources.Resource
org.w3c.tools.resources.FramedResource
org.w3c.tools.resources.ResourceFrame
org.w3c.tools.resources.ResourceFilter
org.w3c.jigsaw.filters.TEFilter
- All Implemented Interfaces:
- java.lang.Cloneable, java.util.EventListener, AttributeChangedListener, FrameEventListener, FilterInterface
public class TEFilter
- extends ResourceFilter
This filter will compress the content of replies using GZIP or whatever
encoding scheme requested in the TE: header of the request.
Compression is done on the fly. This assumes that you're really
on a slow link, where you have lots of CPU, but not much bandwidth.
A nifty usage for that filter, is to plug it on top of a
org.w3c.jigsaw.proxy.ProxyFrame
, in which case it
will encode the data when it flies out of the proxy.
Field Summary |
protected static int |
ATTR_MIME_TYPES
Attribute index - List of MIME type that we can compress |
protected MimeType[] |
types
The set of MIME types we are allowed to compress. |
Methods inherited from class org.w3c.tools.resources.ResourceFrame |
addFrameEventListener, attributeChanged, checkRequest, eventDisabled, fireFrameEvent, frameModified, getFilters, getFilters, getFrameReference, getResource, getResourceReference, getSpaceEntry, getURLPath, lookupFilters, lookupFrames, perform, postFrameEvent, processEvent, registerResource, removeFrameEventListener, unregisterResource, updateDefaultChildAttributes |
Methods inherited from class org.w3c.tools.resources.FramedResource |
addAttributeChangedListener, addStructureChangedListener, collectFramesReference, delete, disableEvent, displayEvent, enableEvent, fireAttributeChangeEvent, fireStructureChangedEvent, fireStructureChangedEvent, frameAdded, frameRemoved, getClone, getFrame, getFrame, getFrameReference, getFrameReference, getFramesReference, getOid, initialize, markModified, notifyUnload, performFrames, postAttributeChangeEvent, postEvent, postStructureChangedEvent, postStructureChangedEvent, registerFrame, registerFrameIfNone, removeAttributeChangedListener, removeStructureChangedListener, setSilentValue, setSilentValue, unregisterFrame |
Methods inherited from class org.w3c.tools.resources.Resource |
acceptUnload, checkMultipleLock, collectFrames, getContext, getFrame, getFrames, getHelpURL, getHelpURL, getIdentifier, getLastModified, getParent, getServer, getSpace, getStoreEntry, getValue, getValue, isInitialized, isUnloaded, setContext, setContext, setValue, unsafeGetContext, unsafeGetFrame, unsafeGetFrames, unsafeGetIdentifier, unsafeGetResourceReference, unsafeGetURLPath, unsafeGetValue, updateAttributes |
Methods inherited from class org.w3c.tools.resources.AttributeHolder |
definesAttribute, definesAttribute, getAttributes, getBoolean, getChar, getClone, getClone, getDouble, getFloat, getInt, getLong, getString, getValue, lookupAttribute, print, setBoolean, setChar, setDouble, setFloat, setInt, setLong, setString, setValue, unsafeDefinesAttribute, unsafeGetDouble, unsafeGetString |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ATTR_MIME_TYPES
protected static int ATTR_MIME_TYPES
- Attribute index - List of MIME type that we can compress
types
protected MimeType[] types
- The set of MIME types we are allowed to compress.
TEFilter
public TEFilter()
setValue
public void setValue(int idx,
java.lang.Object value)
- Catch the setting of mime types to compress.
- Overrides:
setValue
in class ResourceFrame
- Parameters:
idx
- The attribute being set.val
- The new attribute value.
getMimeTypes
public MimeType[] getMimeTypes()
- Get the set of MIME types to match:
- Returns:
- An array of MimeType instances.
getCompressibilityFactor
protected double getCompressibilityFactor(Reply reply)
doEncoding
protected void doEncoding(HttpAcceptEncoding enc,
Reply reply)
outgoingFilter
public ReplyInterface outgoingFilter(RequestInterface req,
ReplyInterface rep)
throws ProtocolException
- Description copied from class:
ResourceFilter
- Simplified API to the outgoing filter metho.
This is a simplified API to the ougoing filter method, you can either
overide this method, or the more powerfull one.
- Overrides:
outgoingFilter
in class ResourceFilter
- Parameters:
request
- The original request.reply
- It's original reply.
- Returns:
- A Reply instance, or null if processing
should continue normally.
- Throws:
ProtocolException
- If processing should be interrupted,
because an abnormal situation occured.