Package org.apache.axiom.util.stax
Class XMLFragmentStreamReader
- java.lang.Object
-
- org.apache.axiom.util.stax.XMLFragmentStreamReader
-
- All Implemented Interfaces:
XMLStreamConstants,XMLStreamReader
public class XMLFragmentStreamReader extends Object implements XMLStreamReader
Wrapping XML stream reader that reads a single element from the underlying stream. It will generate START_DOCUMENT and END_DOCUMENT events as required to make the sequence of events appear as a complete document.Assume for example that the parent reader is parsing the following document:
<a><b>text</b></a>
If the current event is<b>when the wrapper is created, it will produce the following sequence of events:- A synthetic START_DOCUMENT event.
- START_ELEMENT, CHARACTERS and END_ELEMENT events for
<b>text</b>. For these events, the wrapper directly delegates to the parent reader. - A synthetic END_DOCUMENT event.
</a>. TheXMLFragmentStreamReader(XMLStreamReader, boolean)constructor allows to override this behavior.The wrapper will release the reference to the parent reader when
close()is called. For obvious reasons, the wrapper will never callXMLStreamReader.close()on the parent reader.
-
-
Field Summary
-
Fields inherited from interface javax.xml.stream.XMLStreamConstants
ATTRIBUTE, CDATA, CHARACTERS, COMMENT, DTD, END_DOCUMENT, END_ELEMENT, ENTITY_DECLARATION, ENTITY_REFERENCE, NAMESPACE, NOTATION_DECLARATION, PROCESSING_INSTRUCTION, SPACE, START_DOCUMENT, START_ELEMENT
-
-
Constructor Summary
Constructors Constructor Description XMLFragmentStreamReader(XMLStreamReader parent)Constructor.XMLFragmentStreamReader(XMLStreamReader parent, boolean proceedToNext)Constructor.
-
Method Summary
-
-
-
Constructor Detail
-
XMLFragmentStreamReader
public XMLFragmentStreamReader(XMLStreamReader parent)
Constructor.- Parameters:
parent- the parent reader to read the fragment from- Throws:
IllegalStateException- if the current event on the parent is not a START_ELEMENT
-
XMLFragmentStreamReader
public XMLFragmentStreamReader(XMLStreamReader parent, boolean proceedToNext)
Constructor.- Parameters:
parent- the parent reader to read the fragment fromproceedToNext- determines whether the parent reader should be positioned on theXMLStreamConstants.END_ELEMENTevent of the fragment (false) or on event following theXMLStreamConstants.END_ELEMENTevent (true) after all events have been consumed from the wrapper- Throws:
IllegalStateException- if the current event on the parent is not a START_ELEMENT
-
-
Method Detail
-
getEventType
public int getEventType()
- Specified by:
getEventTypein interfaceXMLStreamReader
-
next
public int next() throws XMLStreamException- Specified by:
nextin interfaceXMLStreamReader- Throws:
XMLStreamException
-
nextTag
public int nextTag() throws XMLStreamException- Specified by:
nextTagin interfaceXMLStreamReader- Throws:
XMLStreamException
-
close
public void close() throws XMLStreamException- Specified by:
closein interfaceXMLStreamReader- Throws:
XMLStreamException
-
getProperty
public Object getProperty(String name) throws IllegalArgumentException
- Specified by:
getPropertyin interfaceXMLStreamReader- Throws:
IllegalArgumentException
-
getCharacterEncodingScheme
public String getCharacterEncodingScheme()
- Specified by:
getCharacterEncodingSchemein interfaceXMLStreamReader
-
getEncoding
public String getEncoding()
- Specified by:
getEncodingin interfaceXMLStreamReader
-
getVersion
public String getVersion()
- Specified by:
getVersionin interfaceXMLStreamReader
-
isStandalone
public boolean isStandalone()
- Specified by:
isStandalonein interfaceXMLStreamReader
-
standaloneSet
public boolean standaloneSet()
- Specified by:
standaloneSetin interfaceXMLStreamReader
-
getLocation
public Location getLocation()
- Specified by:
getLocationin interfaceXMLStreamReader
-
getAttributeCount
public int getAttributeCount()
- Specified by:
getAttributeCountin interfaceXMLStreamReader
-
getAttributeLocalName
public String getAttributeLocalName(int index)
- Specified by:
getAttributeLocalNamein interfaceXMLStreamReader
-
getAttributeName
public QName getAttributeName(int index)
- Specified by:
getAttributeNamein interfaceXMLStreamReader
-
getAttributeNamespace
public String getAttributeNamespace(int index)
- Specified by:
getAttributeNamespacein interfaceXMLStreamReader
-
getAttributePrefix
public String getAttributePrefix(int index)
- Specified by:
getAttributePrefixin interfaceXMLStreamReader
-
getAttributeType
public String getAttributeType(int index)
- Specified by:
getAttributeTypein interfaceXMLStreamReader
-
getAttributeValue
public String getAttributeValue(int index)
- Specified by:
getAttributeValuein interfaceXMLStreamReader
-
isAttributeSpecified
public boolean isAttributeSpecified(int index)
- Specified by:
isAttributeSpecifiedin interfaceXMLStreamReader
-
getAttributeValue
public String getAttributeValue(String namespaceURI, String localName)
- Specified by:
getAttributeValuein interfaceXMLStreamReader
-
getElementText
public String getElementText() throws XMLStreamException
- Specified by:
getElementTextin interfaceXMLStreamReader- Throws:
XMLStreamException
-
getLocalName
public String getLocalName()
- Specified by:
getLocalNamein interfaceXMLStreamReader
-
getName
public QName getName()
- Specified by:
getNamein interfaceXMLStreamReader
-
getPrefix
public String getPrefix()
- Specified by:
getPrefixin interfaceXMLStreamReader
-
getNamespaceURI
public String getNamespaceURI()
- Specified by:
getNamespaceURIin interfaceXMLStreamReader
-
getNamespaceCount
public int getNamespaceCount()
- Specified by:
getNamespaceCountin interfaceXMLStreamReader
-
getNamespacePrefix
public String getNamespacePrefix(int index)
- Specified by:
getNamespacePrefixin interfaceXMLStreamReader
-
getNamespaceURI
public String getNamespaceURI(int index)
- Specified by:
getNamespaceURIin interfaceXMLStreamReader
-
getNamespaceURI
public String getNamespaceURI(String prefix)
- Specified by:
getNamespaceURIin interfaceXMLStreamReader
-
getNamespaceContext
public NamespaceContext getNamespaceContext()
- Specified by:
getNamespaceContextin interfaceXMLStreamReader
-
getPIData
public String getPIData()
- Specified by:
getPIDatain interfaceXMLStreamReader
-
getPITarget
public String getPITarget()
- Specified by:
getPITargetin interfaceXMLStreamReader
-
getText
public String getText()
- Specified by:
getTextin interfaceXMLStreamReader
-
getTextCharacters
public char[] getTextCharacters()
- Specified by:
getTextCharactersin interfaceXMLStreamReader
-
getTextCharacters
public int getTextCharacters(int sourceStart, char[] target, int targetStart, int length) throws XMLStreamException- Specified by:
getTextCharactersin interfaceXMLStreamReader- Throws:
XMLStreamException
-
getTextLength
public int getTextLength()
- Specified by:
getTextLengthin interfaceXMLStreamReader
-
getTextStart
public int getTextStart()
- Specified by:
getTextStartin interfaceXMLStreamReader
-
hasName
public boolean hasName()
- Specified by:
hasNamein interfaceXMLStreamReader
-
hasNext
public boolean hasNext() throws XMLStreamException- Specified by:
hasNextin interfaceXMLStreamReader- Throws:
XMLStreamException
-
hasText
public boolean hasText()
- Specified by:
hasTextin interfaceXMLStreamReader
-
isCharacters
public boolean isCharacters()
- Specified by:
isCharactersin interfaceXMLStreamReader
-
isStartElement
public boolean isStartElement()
- Specified by:
isStartElementin interfaceXMLStreamReader
-
isEndElement
public boolean isEndElement()
- Specified by:
isEndElementin interfaceXMLStreamReader
-
isWhiteSpace
public boolean isWhiteSpace()
- Specified by:
isWhiteSpacein interfaceXMLStreamReader
-
require
public void require(int type, String namespaceURI, String localName) throws XMLStreamException- Specified by:
requirein interfaceXMLStreamReader- Throws:
XMLStreamException
-
-