Package com.sun.xml.stream.buffer.sax
Class SAXBufferProcessor
- java.lang.Object
-
- com.sun.xml.stream.buffer.AbstractCreatorProcessor
-
- com.sun.xml.stream.buffer.AbstractProcessor
-
- com.sun.xml.stream.buffer.sax.SAXBufferProcessor
-
- All Implemented Interfaces:
XMLReader
public class SAXBufferProcessor extends AbstractProcessor implements XMLReader
A processor of aXMLStreamBuffer
that that reads the XML infoset asXMLReader
.
-
-
Field Summary
Fields Modifier and Type Field Description protected AttributesHolder
_attributes
protected ContentHandler
_contentHandler
Reference to content handler.protected DTDHandler
_dtdHandler
Reference to dtd handler.protected EntityResolver
_entityResolver
Reference to entity resolver.protected ErrorHandler
_errorHandler
Reference to error handler.protected LexicalHandler
_lexicalHandler
Reference to lexical handler.protected int[]
_namespaceAttributesStack
protected int
_namespaceAttributesStackIndex
protected int[]
_namespaceAttributesStartingStack
protected String[]
_namespacePrefixes
protected boolean
_namespacePrefixesFeature
SAX Namespace attributes featuresprotected int
_namespacePrefixesIndex
-
Fields inherited from class com.sun.xml.stream.buffer.AbstractProcessor
_buffer, _fragmentMode, _qNameBuffer, _stringInterningFeature, _treeCount, STATE_ATTRIBUTE_LN, STATE_ATTRIBUTE_LN_OBJECT, STATE_ATTRIBUTE_P_U_LN, STATE_ATTRIBUTE_P_U_LN_OBJECT, STATE_ATTRIBUTE_U_LN, STATE_ATTRIBUTE_U_LN_OBJECT, STATE_ATTRIBUTE_U_LN_QN, STATE_ATTRIBUTE_U_LN_QN_OBJECT, STATE_COMMENT_AS_CHAR_ARRAY_COPY, STATE_COMMENT_AS_CHAR_ARRAY_MEDIUM, STATE_COMMENT_AS_CHAR_ARRAY_SMALL, STATE_COMMENT_AS_STRING, STATE_DOCUMENT, STATE_DOCUMENT_FRAGMENT, STATE_ELEMENT_LN, STATE_ELEMENT_P_U_LN, STATE_ELEMENT_U_LN, STATE_ELEMENT_U_LN_QN, STATE_END, STATE_ILLEGAL, STATE_NAMESPACE_ATTRIBUTE, STATE_NAMESPACE_ATTRIBUTE_P, STATE_NAMESPACE_ATTRIBUTE_P_U, STATE_NAMESPACE_ATTRIBUTE_U, STATE_PROCESSING_INSTRUCTION, STATE_TEXT_AS_CHAR_ARRAY_COPY, STATE_TEXT_AS_CHAR_ARRAY_MEDIUM, STATE_TEXT_AS_CHAR_ARRAY_SMALL, STATE_TEXT_AS_OBJECT, STATE_TEXT_AS_STRING
-
Fields inherited from class com.sun.xml.stream.buffer.AbstractCreatorProcessor
_contentCharactersBuffer, _contentCharactersBufferPtr, _contentObjects, _contentObjectsPtr, _currentContentCharactersBufferFragment, _currentContentObjectFragment, _currentStructureFragment, _currentStructureStringFragment, _structure, _structurePtr, _structureStrings, _structureStringsPtr, CHAR_ARRAY_LENGTH_MEDIUM, CHAR_ARRAY_LENGTH_MEDIUM_SIZE, CHAR_ARRAY_LENGTH_SMALL, CHAR_ARRAY_LENGTH_SMALL_SIZE, CONTENT_TYPE_CHAR_ARRAY, CONTENT_TYPE_CHAR_ARRAY_COPY, CONTENT_TYPE_OBJECT, CONTENT_TYPE_STRING, FLAG_DOCUMENT_FRAGMENT, FLAG_PREFIX, FLAG_QUALIFIED_NAME, FLAG_URI, T_ATTRIBUTE, T_ATTRIBUTE_LN, T_ATTRIBUTE_LN_OBJECT, T_ATTRIBUTE_P_U_LN, T_ATTRIBUTE_P_U_LN_OBJECT, T_ATTRIBUTE_U_LN, T_ATTRIBUTE_U_LN_OBJECT, T_ATTRIBUTE_U_LN_QN, T_ATTRIBUTE_U_LN_QN_OBJECT, T_COMMENT, T_COMMENT_AS_CHAR_ARRAY, T_COMMENT_AS_CHAR_ARRAY_COPY, T_COMMENT_AS_CHAR_ARRAY_MEDIUM, T_COMMENT_AS_CHAR_ARRAY_SMALL, T_COMMENT_AS_STRING, T_DOCUMENT, T_DOCUMENT_FRAGMENT, T_ELEMENT, T_ELEMENT_LN, T_ELEMENT_P_U_LN, T_ELEMENT_U_LN, T_ELEMENT_U_LN_QN, T_END, T_END_OF_BUFFER, T_NAMESPACE_ATTRIBUTE, T_NAMESPACE_ATTRIBUTE_P, T_NAMESPACE_ATTRIBUTE_P_U, T_NAMESPACE_ATTRIBUTE_U, T_PROCESSING_INSTRUCTION, T_TEXT, T_TEXT_AS_CHAR_ARRAY, T_TEXT_AS_CHAR_ARRAY_COPY, T_TEXT_AS_CHAR_ARRAY_MEDIUM, T_TEXT_AS_CHAR_ARRAY_SMALL, T_TEXT_AS_OBJECT, T_TEXT_AS_STRING, T_UNEXPANDED_ENTITY_REFERENCE, TYPE_MASK, VALUE_TYPE_OBJECT, VALUE_TYPE_STRING
-
-
Constructor Summary
Constructors Constructor Description SAXBufferProcessor()
SAXBufferProcessor(XMLStreamBuffer buffer)
Deprecated.SAXBufferProcessor(XMLStreamBuffer buffer, boolean produceFragmentEvent)
-
Method Summary
-
Methods inherited from class com.sun.xml.stream.buffer.AbstractProcessor
getAIIState, getEIIState, getNIIState, getPrefixFromQName, getQName, peekStructure, readContentCharactersBuffer, readContentCharactersCopy, readContentObject, readContentString, readEiiState, readStructure, readStructure16, readStructureString, setBuffer, setBuffer
-
-
-
-
Field Detail
-
_entityResolver
protected EntityResolver _entityResolver
Reference to entity resolver.
-
_dtdHandler
protected DTDHandler _dtdHandler
Reference to dtd handler.
-
_contentHandler
protected ContentHandler _contentHandler
Reference to content handler.
-
_errorHandler
protected ErrorHandler _errorHandler
Reference to error handler.
-
_lexicalHandler
protected LexicalHandler _lexicalHandler
Reference to lexical handler.
-
_namespacePrefixesFeature
protected boolean _namespacePrefixesFeature
SAX Namespace attributes features
-
_attributes
protected AttributesHolder _attributes
-
_namespacePrefixes
protected String[] _namespacePrefixes
-
_namespacePrefixesIndex
protected int _namespacePrefixesIndex
-
_namespaceAttributesStartingStack
protected int[] _namespaceAttributesStartingStack
-
_namespaceAttributesStack
protected int[] _namespaceAttributesStack
-
_namespaceAttributesStackIndex
protected int _namespaceAttributesStackIndex
-
-
Constructor Detail
-
SAXBufferProcessor
public SAXBufferProcessor()
-
SAXBufferProcessor
public SAXBufferProcessor(XMLStreamBuffer buffer)
Deprecated.
-
SAXBufferProcessor
public SAXBufferProcessor(XMLStreamBuffer buffer, boolean produceFragmentEvent)
- Parameters:
produceFragmentEvent
- True to generate fragment SAX events without start/endDocument. False to generate a full document SAX events.
-
-
Method Detail
-
getFeature
public boolean getFeature(String name) throws SAXNotRecognizedException, SAXNotSupportedException
- Specified by:
getFeature
in interfaceXMLReader
- Throws:
SAXNotRecognizedException
SAXNotSupportedException
-
setFeature
public void setFeature(String name, boolean value) throws SAXNotRecognizedException, SAXNotSupportedException
- Specified by:
setFeature
in interfaceXMLReader
- Throws:
SAXNotRecognizedException
SAXNotSupportedException
-
getProperty
public Object getProperty(String name) throws SAXNotRecognizedException, SAXNotSupportedException
- Specified by:
getProperty
in interfaceXMLReader
- Throws:
SAXNotRecognizedException
SAXNotSupportedException
-
setProperty
public void setProperty(String name, Object value) throws SAXNotRecognizedException, SAXNotSupportedException
- Specified by:
setProperty
in interfaceXMLReader
- Throws:
SAXNotRecognizedException
SAXNotSupportedException
-
setEntityResolver
public void setEntityResolver(EntityResolver resolver)
- Specified by:
setEntityResolver
in interfaceXMLReader
-
getEntityResolver
public EntityResolver getEntityResolver()
- Specified by:
getEntityResolver
in interfaceXMLReader
-
setDTDHandler
public void setDTDHandler(DTDHandler handler)
- Specified by:
setDTDHandler
in interfaceXMLReader
-
getDTDHandler
public DTDHandler getDTDHandler()
- Specified by:
getDTDHandler
in interfaceXMLReader
-
setContentHandler
public void setContentHandler(ContentHandler handler)
- Specified by:
setContentHandler
in interfaceXMLReader
-
getContentHandler
public ContentHandler getContentHandler()
- Specified by:
getContentHandler
in interfaceXMLReader
-
setErrorHandler
public void setErrorHandler(ErrorHandler handler)
- Specified by:
setErrorHandler
in interfaceXMLReader
-
getErrorHandler
public ErrorHandler getErrorHandler()
- Specified by:
getErrorHandler
in interfaceXMLReader
-
setLexicalHandler
public void setLexicalHandler(LexicalHandler handler)
-
getLexicalHandler
public LexicalHandler getLexicalHandler()
-
parse
public void parse(InputSource input) throws IOException, SAXException
- Specified by:
parse
in interfaceXMLReader
- Throws:
IOException
SAXException
-
parse
public void parse(String systemId) throws IOException, SAXException
- Specified by:
parse
in interfaceXMLReader
- Throws:
IOException
SAXException
-
process
public final void process(XMLStreamBuffer buffer) throws SAXException
Deprecated.Short-hand forsetXMLStreamBuffer(XMLStreamBuffer)
thenprocess()
.- Throws:
SAXException
-
process
public final void process(XMLStreamBuffer buffer, boolean produceFragmentEvent) throws SAXException
Short-hand forsetXMLStreamBuffer(XMLStreamBuffer,boolean)
thenprocess()
.- Parameters:
produceFragmentEvent
- True to generate fragment SAX events without start/endDocument. False to generate a full document SAX events.- Throws:
SAXException
-
setXMLStreamBuffer
public void setXMLStreamBuffer(XMLStreamBuffer buffer)
Deprecated.Resets the parser to read from the beginning of the givenXMLStreamBuffer
.
-
setXMLStreamBuffer
public void setXMLStreamBuffer(XMLStreamBuffer buffer, boolean produceFragmentEvent)
Resets the parser to read from the beginning of the givenXMLStreamBuffer
.- Parameters:
produceFragmentEvent
- True to generate fragment SAX events without start/endDocument. False to generate a full document SAX events.
-
process
public final void process() throws SAXException
Parse the sub-tree (or a whole document) thatXMLStreamBuffer
points to, and sends events to handlers.TODO: We probably need two modes for a sub-tree event generation. One for firing a sub-tree as if it's a whole document (in which case start/endDocument and appropriate additional namespace bindings are necessary), and the other mode for firing a subtree as a subtree, like it does today. A stream buffer SAX feature could be used to specify this.
- Throws:
SAXException
- Follow the same semantics asXMLReader.parse(InputSource)
.
-
processElement
protected void processElement(String uri, String localName, String qName, boolean inscope) throws SAXException
- Throws:
SAXException
-
-