Overview Package Class Tree Deprecated Index Help
PREV CLASS NEXT CLASS FRAMES NO FRAMES All Classes
SUMMARY: NESTED | FIELD | CONSTR | METHOD DETAIL: FIELD | CONSTR | METHOD

diva.gui
Class MultipageParser

java.lang.Object
 extended bycom.microstar.xml.HandlerBase
 extended bydiva.gui.MultipageParser
All Implemented Interfaces:
XmlHandler

public class MultipageParser
extends HandlerBase

Parse all pages of a multi-page document from a file. The document parser must be provided with a model parser that is used to parse the app-specific model on a single page.

Version:
$Id: MultipageParser.java,v 1.21 2005年12月14日 04:56:43 cxh Exp $
Author:
Heloise Hse, Michael Shilman
Accepted Rating:
Red

Field Summary
static java.lang.String DTD_1
The DTD for multipage models.
static java.lang.String DTD_URL
The URL where the DTD is stored.
static java.lang.String MULTIPAGE_TAG
The string constant that specifies the start and end of a document.
static java.lang.String PAGE_NUM_TAG
The string constant that specifies the page number of a page.
static java.lang.String PAGE_TAG
The string constant that specifies the start and end of a sheet in a document.
static java.lang.String PAGE_TITLE_TAG
The string constant that specifies the title attribute of a page.
static java.lang.String PUBLIC_ID
The public identity of the sketch dtd file.
static java.lang.String TITLE_TAG
The string constant that specifies the title attribute of a document.
Constructor Summary
MultipageParser(ModelParser pageParser)
Create a MultipageParser with the specified model parser which is used to parse the content of a page.
Method Summary
void attribute(java.lang.String name, java.lang.String value, boolean isSpecified)
Handle an attribute value assignment.
void charData(char[] chars, int offset, int length)
Handle character data.
void endElement(java.lang.String name)
Handle the end of an element.
void parse(java.io.Reader reader, MultipageModel multi)
Parse the file (from reader) into the given multipage data structure.
java.lang.Object resolveEntity(java.lang.String publicID, java.lang.String systemID)
Resolve an external entity.
void startElement(java.lang.String name)
Handle the start of an element.
Methods inherited from class com.microstar.xml.HandlerBase
doctypeDecl, endDocument, endExternalEntity, error, ignorableWhitespace, processingInstruction, startDocument, startExternalEntity
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Detail

PUBLIC_ID

public static final java.lang.String PUBLIC_ID
The public identity of the sketch dtd file.

See Also:
Constant Field Values

DTD_URL

public static final java.lang.String DTD_URL
The URL where the DTD is stored.

See Also:
Constant Field Values

DTD_1

public static final java.lang.String DTD_1
The DTD for multipage models.

See Also:
Constant Field Values

TITLE_TAG

public static final java.lang.String TITLE_TAG
The string constant that specifies the title attribute of a document.

See Also:
Constant Field Values

MULTIPAGE_TAG

public static final java.lang.String MULTIPAGE_TAG
The string constant that specifies the start and end of a document.

See Also:
Constant Field Values

PAGE_TAG

public static final java.lang.String PAGE_TAG
The string constant that specifies the start and end of a sheet in a document.

See Also:
Constant Field Values

PAGE_TITLE_TAG

public static final java.lang.String PAGE_TITLE_TAG
The string constant that specifies the title attribute of a page. This is an optional attribute.

See Also:
Constant Field Values

PAGE_NUM_TAG

public static final java.lang.String PAGE_NUM_TAG
The string constant that specifies the page number of a page.

See Also:
Constant Field Values
Constructor Detail

MultipageParser

public MultipageParser(ModelParser pageParser)
Create a MultipageParser with the specified model parser which is used to parse the content of a page.

Method Detail

attribute

public void attribute(java.lang.String name,
 java.lang.String value,
 boolean isSpecified)
 throws java.lang.Exception
Handle an attribute value assignment. The attribute and its value are temporary saved in a hash table. They are later retrieved in startElement or endElement.

Specified by:
attribute in interface XmlHandler
Overrides:
attribute in class HandlerBase
Throws:
java.lang.Exception - Derived methods may throw exceptions.
See Also:
XmlHandler.attribute(java.lang.String, java.lang.String, boolean)

charData

public void charData(char[] chars,
 int offset,
 int length)
 throws java.lang.Exception
Handle character data. The page content is buffered in a character array by XML parser which invokes this method. In this method, the model parser gets called to parse the data in the array.

Specified by:
charData in interface XmlHandler
Overrides:
charData in class HandlerBase
Throws:
java.lang.Exception - Derived methods may throw exceptions.
See Also:
XmlHandler.charData(char[], int, int)

endElement

public void endElement(java.lang.String name)
 throws java.lang.Exception
Handle the end of an element. If this is the end of a page, add the current page to the document.

Specified by:
endElement in interface XmlHandler
Overrides:
endElement in class HandlerBase
Throws:
java.lang.Exception - Derived methods may throw exceptions.
See Also:
XmlHandler.endElement(java.lang.String)

startElement

public void startElement(java.lang.String name)
 throws java.lang.Exception
Handle the start of an element. If this is the start of a page, create a Page object and set its label (retrieve from _currentAttributes table)

Specified by:
startElement in interface XmlHandler
Overrides:
startElement in class HandlerBase
Throws:
java.lang.Exception - Derived methods may throw exceptions.
See Also:
XmlHandler.startElement(java.lang.String)

resolveEntity

public java.lang.Object resolveEntity(java.lang.String publicID,
 java.lang.String systemID)
Resolve an external entity. If the first argument is the name of the MoML PUBLIC DTD ("-//UC Berkeley//DTD multipage 1//EN"), then return a StringReader that will read the locally cached version of this DTD (the public variable DTD_1). Otherwise, return null, which has the effect of deferring to Aelfred for resolution of the URI. Derived classes may return a modified URI (a string), an InputStream, or a Reader. In the latter two cases, the input character stream is provided.

Specified by:
resolveEntity in interface XmlHandler
Overrides:
resolveEntity in class HandlerBase
Parameters:
publicID - The public identifier, or null if none was supplied.
systemID - The system identifier.
Returns:
Null, indicating to use the default system identifier.
See Also:
XmlHandler.resolveEntity(java.lang.String, java.lang.String)

parse

public void parse(java.io.Reader reader,
 MultipageModel multi)
 throws java.lang.Exception
Parse the file (from reader) into the given multipage data structure.

Throws:
java.lang.Exception

Overview Package Class Tree Deprecated Index Help
PREV CLASS NEXT CLASS FRAMES NO FRAMES All Classes
SUMMARY: NESTED | FIELD | CONSTR | METHOD DETAIL: FIELD | CONSTR | METHOD

AltStyle によって変換されたページ (->オリジナル) /