org.w3c.jigsaw.frames
Class HTTPExtFrame

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.ProtocolFrame
                                |
                                +--org.w3c.jigsaw.frames.HTTPFrame
                                      |
                                      +--org.w3c.jigsaw.frames.HTTPExtFrame
Direct Known Subclasses:
CCPPFrame, ExtFrame

public class HTTPExtFrame
extends HTTPFrame


Field Summary
protected static java.util.Hashtable extensions
          Supported extensions
 
Fields inherited from class org.w3c.jigsaw.frames.HTTPFrame
acceptRanges, allowed, ATTR_ALLOW_DEL, ATTR_BROWSABLE, ATTR_CHARSET, ATTR_CONTENT_ENCODING, ATTR_CONTENT_LANGUAGE, ATTR_CONTENT_LENGTH, ATTR_CONTENT_TYPE, ATTR_ICON, ATTR_ICONDIR, ATTR_INDEX, ATTR_INDEXES, ATTR_MAXAGE, ATTR_MD5, ATTR_PUTABLE, ATTR_QUALITY, ATTR_RELOCATE, ATTR_STYLE_LINK, ATTR_TITLE, browsetype, COND_FAILED, COND_OK, dresource, fresource, listing, listing_stamp, STATE_CONTENT_LOCATION
 
Fields inherited from class org.w3c.tools.resources.ResourceFrame
filterClass, frameListener, resource
 
Fields inherited from class org.w3c.tools.resources.FramedResource
ATTR_OID, attrListener, debugEvent, event_disabled, framesRef, structListener
 
Fields inherited from class org.w3c.tools.resources.Resource
ATTR_CONTEXT, ATTR_HELP_URL, ATTR_IDENTIFIER, ATTR_LAST_MODIFIED, ATTR_PARENT, ATTR_RESOURCE_FRAMES, ATTR_STORE_ENTRY, ATTR_URL
 
Fields inherited from class org.w3c.tools.resources.AttributeHolder
attributes, values
 
Constructor Summary
HTTPExtFrame()
           
 
Method Summary
protected  Reply acknowledgeExtension(Request request, Reply reply)
          Set the Ext and/or C-Ext Header if necessary.
 void checkMandatoryExtension(Request request, java.lang.String mmethod)
          Check if the mandatory extensions are supported.
 Reply extended(Request request)
          The handler for unknown method replies with a not implemented.
 Reply mextended(Request request)
           
protected static void registerExtension(java.lang.String name, java.lang.String[] methods, java.lang.String classname)
          Register a protocol extension name.
protected static void registerExtension(java.lang.String name, java.lang.String method, java.lang.String classname)
          Register a protocol extension name.
protected static boolean supportedExtension(java.lang.String name, java.lang.String method, java.lang.Object obj)
          Check if an extension is known.
 
Methods inherited from class org.w3c.jigsaw.frames.HTTPFrame
addStyleSheet, attributeChanged, browse, checkIfMatch, checkIfModifiedSince, checkIfNoneMatch, checkIfUnmodifiedSince, checkRequest, computeContainerListing, computeTrashDir, computeTrashFile, createDefaultReply, createFileReply, delete, deleteDirectoryResource, deleteFileResource, deleteMe, deleteOtherResource, get, getAllow, getAllowDeleteFlag, getBrowsableFlag, getBrowseType, getCharset, getContentEncoding, getContentLanguage, getContentLength, getContentType, getDirectoryListing, getDirectoryResource, getDirectoryResource, getETag, getFileResource, getFileResource, getHelpURL, getHelpURL, getIcon, getIconDirectory, getIndex, getIndexes, getMaxAge, getMD5Flag, getOtherResource, getPutableFlag, getQuality, getRelocateFlag, getStyleSheetURL, getTitle, getURL, handleRangeRequest, head, headDirectoryResource, headFileResource, headOtherResource, link, lookup, lookupDirectory, lookupFile, lookupOther, lookupResource, options, perform, performFrames, post, put, putFileResource, putOtherResource, registerOtherResource, registerResource, setValue, trace, unlink, updateCachedHeaders
 
Methods inherited from class org.w3c.tools.resources.ResourceFrame
addFrameEventListener, eventDisabled, fireFrameEvent, frameModified, getFilters, getFilters, getFrameReference, getResource, getResourceReference, getSpaceEntry, getURLPath, lookupFilters, lookupFrames, postFrameEvent, processEvent, 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, 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, getIdentifier, getLastModified, getParent, getServer, getSpace, getStoreEntry, getValue, getValue, isInitialized, isUnloaded, setContext, setContext, setValue, updateAttributes
 
Methods inherited from class org.w3c.tools.resources.AttributeHolder
definesAttribute, definesAttribute, getAttributes, getBoolean, getChar, getClone, getClone, getDouble, getFloat, getInt, getLong, getString, getValue, initialize, lookupAttribute, pickleValues, print, setBoolean, setChar, setDouble, setFloat, setInt, setLong, setString, setValue, unsafeGetValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

extensions

protected static java.util.Hashtable extensions
Supported extensions
Constructor Detail

HTTPExtFrame

public HTTPExtFrame()
Method Detail

registerExtension

protected static final void registerExtension(java.lang.String name,
                                              java.lang.String[] methods,
                                              java.lang.String classname)
Register a protocol extension name.
Parameters:
name - the extension name (absoluteURI or field-name);
methods - the allowed methods (an array of String)
classname - the associated frame classname.

registerExtension

protected static final void registerExtension(java.lang.String name,
                                              java.lang.String method,
                                              java.lang.String classname)
Register a protocol extension name.
Parameters:
name - the extension name (absoluteURI or field-name);
method - the allowed method
classname - the associated frame classname.

supportedExtension

protected static final boolean supportedExtension(java.lang.String name,
                                                  java.lang.String method,
                                                  java.lang.Object obj)
Check if an extension is known.
Parameters:
name - the extension name
Returns:
a boolean

extended

public Reply extended(Request request)
               throws ProtocolException,
                      ResourceException
The handler for unknown method replies with a not implemented.
Overrides:
extended in class HTTPFrame
Parameters:
request - The request to handle.
Throws:
ProtocolException - If processsing the request failed.
ResourceException - If the resource got a fatal error.

acknowledgeExtension

protected Reply acknowledgeExtension(Request request,
                                     Reply reply)
Set the Ext and/or C-Ext Header if necessary.
Parameters:
request - the incomming request.
reply - the reply
Returns:
the acknowledged reply instance

mextended

public Reply mextended(Request request)
                throws ProtocolException,
                       ResourceException

checkMandatoryExtension

public void checkMandatoryExtension(Request request,
                                    java.lang.String mmethod)
                             throws ProtocolException
Check if the mandatory extensions are supported.
Parameters:
request - The request to handle.
Throws:
ProtocolException - thrown when there is one (or more) unsupported extensions or if there is no extension in the M-XXX method.