Multivalent API

multivalent.std.adaptor
Class Unsupported

java.lang.Object
  extended by multivalent.VObject
      extended by multivalent.Behavior
          extended by multivalent.MediaAdaptor
              extended by multivalent.std.adaptor.Unsupported

public class Unsupported
extends MediaAdaptor

For unsupported document types, say so, and tell user how to see ASCII version. Could have genre hub that guarantees View Source and other behaviors.

Version:
$Revision$ $Date$

Field Summary
 
Fields inherited from class multivalent.MediaAdaptor
HINT_DEFAULTS, HINT_EXACT, HINT_FAST, HINT_METADATA_ONLY, HINT_NO_IMAGE, HINT_NO_INTERACTIVE, HINT_NO_LAYOUT, HINT_NO_SHAPE, HINT_NO_SHOW, HINT_NO_STYLE, HINT_NO_TEXT, HINT_NO_TRANSCLUSION, HINT_NONE, HINT_NORMALIZE
 
Fields inherited from class multivalent.Behavior
ATTR_BEHAVIOR, name_
 
Fields inherited from class multivalent.VObject
attr_
 
Constructor Summary
Unsupported()
           
 
Method Summary
 void buildBefore(Document doc)
          MediaAdaptor.parse(INode) concrete document format and put into tree.
 java.lang.Object parse(INode parent)
          Parses a document's data format and constructs a document tree.
 
Methods inherited from class multivalent.MediaAdaptor
close, destroy, getHints, getInputUni, getURI, getZoom, isAuthorized, isStopped, parseHelper, semanticEventAfter, setHints, setInput, setInput, setPassword, setZoom, stop
 
Methods inherited from class multivalent.Behavior
buildAfter, checkRep, clipboardAfter, clipboardBefore, createUI, eventAfter, eventBefore, formatAfter, formatBefore, getBrowser, getDocument, getInstance, getInstance, getLayer, getLogger, getName, getPreference, getRoot, isEditable, paintAfter, paintBefore, putPreference, redo, restore, restoreChildren, save, semanticEventBefore, setName, toString, undo
 
Methods inherited from class multivalent.VObject
attrEntrySetIterator, attrKeysIterator, clearAttributes, getAttr, getAttr, getAttributes, getGlobal, getValue, hasAttributes, putAttr, removeAttr, setAttributes
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Unsupported

public Unsupported()
Method Detail

buildBefore

public void buildBefore(Document doc)
Description copied from class: MediaAdaptor
MediaAdaptor.parse(INode) concrete document format and put into tree. Subclasses should set their style sheets, then parse document body, so can progressively render page, if applicable.

Overrides:
buildBefore in class MediaAdaptor
See Also:
Mark

parse

public java.lang.Object parse(INode parent)
                       throws java.lang.Exception
Description copied from class: MediaAdaptor
Parses a document's data format and constructs a document tree. Structure is represented in internal nodes and content (text, images, video, ...) at the leaves.

Before using, invoke MediaAdaptor.setInput(InputUni). The newly constructed document tree should attach to parent. The parent is usually but not necessarily a Document. Paginated documents should build the current page only, as indicated by the attribute Document.ATTR_PAGE, and report their page count to Document.ATTR_PAGECOUNT. Metadata, such as author and dates, should be stored in the closed containing Document.

If encountering an unfixable/unrecoverable parsing error, usually due to an invalid data format, throws a ParseException. (This does not supercede IOException.) When media adaptor is done or has thrown an exception, the client must MediaAdaptor.close() it.

Subclasses should not rely on being able to obtain a Root, Browser, or Multivalent; in such cases it is acceptable to reduce functionality.

Specified by:
parse in class MediaAdaptor
Returns:
whatever Object is appropriate to the media adaptor. For HTML it is the root of the HTML tree (which has name "html"), for documents with no single root it can be parent, for an image constuctor it could be an Image. However, the primary job of a media adaptor is to add content to the document tree.
Throws:
java.lang.Exception
See Also:
for a convenient way to attach spans

Multivalent API