APIdia Launch Partner
Top Description Methods
com.sun.org.apache.xml.internal.dtm.ref

public Interface IncrementalSAXSource

Known Direct Implementers
com.sun.org.apache.xml.internal.dtm.ref.IncrementalSAXSource_Filter, com.sun.org.apache.xml.internal.dtm.ref.IncrementalSAXSource_Xerces
Imports
org.xml.sax.ContentHandler, .InputSource, .SAXException

IncrementalSAXSource is an API that delivers a small number of SAX events each time a request is made from a "controller" coroutine. See IncrementalSAXFilter and IncrementalSAXFilter_Xerces for examples. Note that interaction is via the deliverMoreNodes method, and therefore coroutine support is not exposed here.

Method Summary

Modifier and TypeMethod and Description
public Object

Returns:

Boolean.TRUE if the IncrementalSAXSource believes more data may be available for further parsing. Boolean.FALSE if parsing ran to completion, or was ended by deliverMoreNodes(false).
deliverMoreNodes
(boolean
If true, tells the incremental SAX stream to deliver another chunk of events. If false, finishes out the stream.
parsemore
)

deliverMoreNodes() is a simple API which tells the thread in which the IncrementalSAXSource is running to deliver more events (true), or stop delivering events and close out its input (false).

public void
setContentHandler(ContentHandler handler)

Register a SAX-style content handler for us to output to

public void
setDTDHandler(DTDHandler handler)

Register a SAX-style DTD handler for us to output to

public void
setLexicalHandler(LexicalHandler handler)

Register a SAX-style lexical handler for us to output to

public void
startParse(InputSource source)

Launch an XMLReader's parsing operation, feeding events to this IncrementalSAXSource.

Method Detail

deliverMoreNodesback to summary
public Object deliverMoreNodes(boolean parsemore)

deliverMoreNodes() is a simple API which tells the thread in which the IncrementalSAXSource is running to deliver more events (true), or stop delivering events and close out its input (false). This is intended to be called from one of our partner coroutines, and serves to encapsulate the coroutine communication protocol.

Parameters
parsemore:boolean

If true, tells the incremental SAX stream to deliver another chunk of events. If false, finishes out the stream.

Returns:Object

Boolean.TRUE if the IncrementalSAXSource believes more data may be available for further parsing. Boolean.FALSE if parsing ran to completion, or was ended by deliverMoreNodes(false).

setContentHandlerback to summary
public void setContentHandler(ContentHandler handler)

Register a SAX-style content handler for us to output to

setDTDHandlerback to summary
public void setDTDHandler(DTDHandler handler)

Register a SAX-style DTD handler for us to output to

setLexicalHandlerback to summary
public void setLexicalHandler(LexicalHandler handler)

Register a SAX-style lexical handler for us to output to

startParseback to summary
public void startParse(InputSource source) throws SAXException

Launch an XMLReader's parsing operation, feeding events to this IncrementalSAXSource. In some implementations, this may launch a thread which runs the previously supplied XMLReader's parse() operation. In others, it may do other forms of initialization.

Exceptions
SAXException:
is parse thread is already in progress or parsing can not be started.