org.w3c.jigsaw.ssi
Class SSIFrame
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.ssi.SSIFrame
- public class SSIFrame
- extends HTTPFrame
This resource implements server-side parsing of HTML documents.
Any comment of the form <!--#commandName param1=val1
... paramn=valn -->
will be interpreted as an include
directive.
Commands are looked up in an instance of the class
supplied in the registryClass attribute, which must be a subclass
of org.w3c.jigsaw.ssi.CommandRegistry
.
- See Also:
CommandRegistry
,
Command
Field Summary |
static boolean |
debug
|
static java.lang.String |
STATE_DEPTH
Message state - the current recursion depth |
static java.lang.String |
STATE_VARIABLES
Message state - the current variables |
protected java.util.Dictionary |
vars
Our "very global" variables |
Fields inherited from class org.w3c.jigsaw.frames.HTTPFrame |
_allowed,
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 |
Methods inherited from class org.w3c.jigsaw.frames.HTTPFrame |
addStyleSheet,
browse,
checkIfMatch,
checkIfModifiedSince,
checkIfNoneMatch,
checkIfUnmodifiedSince,
checkRequest,
computeContainerListing,
computeTrashDir,
computeTrashFile,
createFileReply,
delete,
deleteDirectoryResource,
deleteFileResource,
deleteMe,
deleteOtherResource,
extended,
get,
getAllowDeleteFlag,
getBrowsableFlag,
getBrowseType,
getCharset,
getContentEncoding,
getContentLanguage,
getContentLength,
getContentType,
getDirectoryListing,
getDirectoryResource,
getDirectoryResource,
getETag,
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,
performFrames,
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,
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 |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
debug
public static final boolean debug
vars
protected java.util.Dictionary vars
- Our "very global" variables
STATE_DEPTH
public static final java.lang.String STATE_DEPTH
- Message state - the current recursion depth
STATE_VARIABLES
public static final java.lang.String STATE_VARIABLES
- Message state - the current variables
SSIFrame
public SSIFrame()
doNotCacheReply
protected void doNotCacheReply()
cacheReplies
protected boolean cacheReplies()
attributeChanged
public void attributeChanged(AttributeChangedEvent evt)
- Listen its resource.
- Overrides:
- attributeChanged in class HTTPFrame
- Tags copied from interface: AttributeChangedListener
- Parameters:
evt
- The AttributeChangeEvent describing the change.
perform
public ReplyInterface perform(RequestInterface request)
throws ProtocolException,
ResourceException
- Makes sure that checkContent() is called on _any_ HTTP method,
so that the internal representation of commands is always consistent.
- Overrides:
- perform in class HTTPFrame
- Parameters:
request
- The HTTPRequestfilters
- The filters to apply- Returns:
- a ReplyInterface instance
- Throws:
- ProtocolException - If processing the request failed.
- ResourceException - If this resource got a fatal error.
getFileResource
protected Reply getFileResource(Request request)
throws ProtocolException,
ResourceException
- Perform a get (associated with a FileResource)
- Overrides:
- getFileResource in class HTTPFrame
- Parameters:
request
- the HTTP request- Returns:
- a Reply instance.
- Throws:
- ProtocolException - If processing the request failed.
- ResourceException - If this resource got a fatal error.
post
public Reply post(Request request)
throws ProtocolException,
ResourceException
- Perform a post.
- Overrides:
- post in class HTTPFrame
- Parameters:
request
- the HTTP request- Returns:
- a Reply instance.
- Throws:
- ProtocolException - If processing the request failed.
- ResourceException - If this resource got a fatal error.
handle
public Reply handle(Request request)
throws ProtocolException
- Handles all relevant HTTP methods.
Merges the partial replies from each of the segments into
one global reply.
Remark: no direct relation to PostableResource.handle()
- Parameters:
request
- The HTTP request- Returns:
- a Reply instance.
- Throws:
- ProtocolException - If processing the request failed.
byteArrayNEquals
public static final boolean byteArrayNEquals(byte[] ba1,
int off1,
byte[] ba2,
int off2,
int n)
- Analogous to standard C's
strncmp
, for byte arrays.
(Should be in some utility package, I'll put it here for now)
- Parameters:
ba1
- the first byte arrayoff1
- where to start in the first arrayba2
- the second byte arrayoff2
- where to start in the second arrayn
- the length to compare up to- Returns:
- true if both specified parts of the arrays are
equal, false if they aren't .
getLastModified
public long getLastModified()
- Description copied from class: Resource
- Get this resource last modification time.
- Overrides:
- getLastModified in class Resource
- Tags copied from class: Resource
- Returns:
- A long giving the date of the last modification time, or
-1 if undefined.
createDefaultReply
public final Reply createDefaultReply(Request request,
int status)
- Description copied from class: HTTPFrame
- Create a reply to answer to request on this file.
This method will create a suitable reply (matching the given request)
and will set all its default header values to the appropriate
values.
- Overrides:
- createDefaultReply in class HTTPFrame
- Tags copied from class: HTTPFrame
- Parameters:
request
- The request to make a reply for.- Returns:
- An instance of Reply, suited to answer this request.
createCommandReply
public final Reply createCommandReply(Request request,
int status)