Top Fields Constructors Methods
com.sun.org.apache.xerces.internal.impl

public Class XMLStreamFilterImpl

extends Object
implements XMLStreamReader
Class Inheritance
All Implemented Interfaces
javax.xml.stream.XMLStreamReader, javax.xml.stream.XMLStreamConstants
Imports
javax.xml.stream.XMLStreamReader, .StreamFilter, .XMLStreamException, javax.xml.namespace.QName, javax.xml.stream.events.XMLEvent

Author
Joe Wang: This is a rewrite of the original class. The focus is on removing caching, and make the filtered stream reader more compatible with those in other implementations. Note however, that this version will not solve all the issues related to the undefined condition in the spec. The priority is to pass the TCK. Issues arising due to the requirement, that is, (1) should it initiate at BEGIN_DOCUMENT or an accepted event; (2) should hasNext() advance the underlining stream in order to find an acceptable event, would have to wait until 1.1 of StAX in which the filtered stream reader would be defined more clearly.

Field Summary

Modifier and TypeField and Description
private int
private boolean
private boolean
fStreamAdvancedByHasNext

the very issue around a long discussion.

private StreamFilter
private XMLStreamReader

Constructor Summary

AccessConstructor and Description
public
XMLStreamFilterImpl(XMLStreamReader
the reader to filter
reader
,
StreamFilter
the filter to apply to the reader
filter
)

Creates a new instance of XMLStreamFilterImpl, advancing the reader to the next event accepted by the filter, if not already positioned on an accepted event.

Method Summary

Modifier and TypeMethod and Description
public void
close()

Implements javax.xml.stream.XMLStreamReader.close.

Frees any resources associated with this Reader.

private int
private int
public int
getAttributeCount()

Implements javax.xml.stream.XMLStreamReader.getAttributeCount.

Returns the count of attributes on this START_ELEMENT, this method is only valid on a START_ELEMENT or ATTRIBUTE.

public String
getAttributeLocalName(int index)

Implements javax.xml.stream.XMLStreamReader.getAttributeLocalName.

Returns the localName of the attribute at the provided index

public QName
getAttributeName(int index)

Implements javax.xml.stream.XMLStreamReader.getAttributeName.

Returns the qname of the attribute at the provided index

public String
getAttributeNamespace(int index)

Implements javax.xml.stream.XMLStreamReader.getAttributeNamespace.

Returns the namespace of the attribute at the provided index

public String
getAttributePrefix(int index)

Implements javax.xml.stream.XMLStreamReader.getAttributePrefix.

Returns the prefix of this attribute at the provided index

public String
getAttributeType(int index)

Implements javax.xml.stream.XMLStreamReader.getAttributeType.

Returns the XML type of the attribute at the provided index

public String
getAttributeValue(int index)

Implements javax.xml.stream.XMLStreamReader.getAttributeValue.

Returns the value of the attribute at the index

public String
getAttributeValue(String namespaceURI, String localName)

Implements javax.xml.stream.XMLStreamReader.getAttributeValue.

Returns the normalized attribute value of the attribute with the namespace and localName If the namespaceURI is null the namespace is not checked for equality

public String
getCharacterEncodingScheme()

Implements javax.xml.stream.XMLStreamReader.getCharacterEncodingScheme.

Returns the character encoding declared on the xml declaration Returns null if none was declared

public String
getElementText()

Implements javax.xml.stream.XMLStreamReader.getElementText.

Reads the content of a text-only element, an exception is thrown if this is not a text-only element.

public String
getEncoding()

Implements javax.xml.stream.XMLStreamReader.getEncoding.

Return input encoding if known or null if unknown.

public int
getEventType()

Implements javax.xml.stream.XMLStreamReader.getEventType.

Returns an integer code that indicates the type of the event the cursor is pointing to.

public String
getLocalName()

Implements javax.xml.stream.XMLStreamReader.getLocalName.

Returns the (local) name of the current event.

public Location
getLocation()

Implements javax.xml.stream.XMLStreamReader.getLocation.

Return the current location of the processor.

public QName
getName()

Implements javax.xml.stream.XMLStreamReader.getName.

Returns a QName for the current START_ELEMENT or END_ELEMENT event

public NamespaceContext
getNamespaceContext()

Implements javax.xml.stream.XMLStreamReader.getNamespaceContext.

Returns a read only namespace context for the current position.

public int
getNamespaceCount()

Implements javax.xml.stream.XMLStreamReader.getNamespaceCount.

Returns the count of namespaces declared on this START_ELEMENT or END_ELEMENT, this method is only valid on a START_ELEMENT, END_ELEMENT or NAMESPACE.

public String
getNamespacePrefix(int index)

Implements javax.xml.stream.XMLStreamReader.getNamespacePrefix.

Returns the prefix for the namespace declared at the index.

public String
getNamespaceURI()

Implements javax.xml.stream.XMLStreamReader.getNamespaceURI.

If the current event is a START_ELEMENT or END_ELEMENT this method returns the URI of the prefix or the default namespace.

public String
getNamespaceURI(int index)

Implements javax.xml.stream.XMLStreamReader.getNamespaceURI.

Returns the uri for the namespace declared at the index.

public String
getNamespaceURI(String prefix)

Implements javax.xml.stream.XMLStreamReader.getNamespaceURI.

Return the uri for the given prefix.

public String
getPIData()

Implements javax.xml.stream.XMLStreamReader.getPIData.

Get the data section of a processing instruction

public String
getPITarget()

Implements javax.xml.stream.XMLStreamReader.getPITarget.

Get the target of a processing instruction

public String
getPrefix()

Implements javax.xml.stream.XMLStreamReader.getPrefix.

Returns the prefix of the current event or null if the event does not have a prefix

public Object
getProperty(String name)

Implements javax.xml.stream.XMLStreamReader.getProperty.

Get the value of a feature/property from the underlying implementation

public String
getText()

Implements javax.xml.stream.XMLStreamReader.getText.

Returns the current value of the parse event as a string, this returns the string value of a CHARACTERS event, returns the value of a COMMENT, the replacement value for an ENTITY_REFERENCE, the string value of a CDATA section, the string value for a SPACE event, or the String value of the internal subset of the DTD.

public char[]
getTextCharacters()

Implements javax.xml.stream.XMLStreamReader.getTextCharacters.

Returns an array which contains the characters from this event.

public int
getTextCharacters(int sourceStart, char[] target, int targetStart, int length)

Implements javax.xml.stream.XMLStreamReader.getTextCharacters.

Gets the text associated with a CHARACTERS, SPACE or CDATA event.

public int
getTextLength()

Implements javax.xml.stream.XMLStreamReader.getTextLength.

Returns the length of the sequence of characters for this Text event within the text character array.

public int
getTextStart()

Implements javax.xml.stream.XMLStreamReader.getTextStart.

Returns the offset into the text character array where the first character (of this text event) is stored.

public String
getVersion()

Implements javax.xml.stream.XMLStreamReader.getVersion.

Get the xml version declared on the xml declaration Returns null if none was declared

public boolean
hasName()

Implements javax.xml.stream.XMLStreamReader.hasName.

returns a boolean indicating whether the current event has a name (is a START_ELEMENT or END_ELEMENT).

public boolean
hasNext()

Implements javax.xml.stream.XMLStreamReader.hasNext.

Returns true if there are more parsing events and false if there are no more events.

public boolean
hasText()

Implements javax.xml.stream.XMLStreamReader.hasText.

Return a boolean indicating whether the current event has text.

public boolean
isAttributeSpecified(int index)

Implements javax.xml.stream.XMLStreamReader.isAttributeSpecified.

Returns a boolean which indicates if this attribute was created by default

public boolean
isCharacters()

Implements javax.xml.stream.XMLStreamReader.isCharacters.

Returns true if the cursor points to a character data event

public boolean
isEndElement()

Implements javax.xml.stream.XMLStreamReader.isEndElement.

Returns true if the cursor points to an end tag (otherwise false)

public boolean
isStandalone()

Implements javax.xml.stream.XMLStreamReader.isStandalone.

Get the standalone declaration from the xml declaration

public boolean
isStartElement()

Implements javax.xml.stream.XMLStreamReader.isStartElement.

Returns true if the cursor points to a start tag (otherwise false)

public boolean
isWhiteSpace()

Implements javax.xml.stream.XMLStreamReader.isWhiteSpace.

Returns true if the cursor points to a character data event that consists of all whitespace

public int
next()

Implements javax.xml.stream.XMLStreamReader.next.

Get next parsing event - a processor may return all contiguous character data in a single chunk, or it may split it into several chunks.

public int
nextTag()

Implements javax.xml.stream.XMLStreamReader.nextTag.

Skips any white space (isWhiteSpace() returns true), COMMENT, or PROCESSING_INSTRUCTION, until a START_ELEMENT or END_ELEMENT is reached.

public void
require(int type, String namespaceURI, String localName)

Implements javax.xml.stream.XMLStreamReader.require.

Test if the current event is of the given type and if the namespace and name match the current namespace and name of the current event.

protected void
public boolean
standaloneSet()

Implements javax.xml.stream.XMLStreamReader.standaloneSet.

Checks if standalone was set in the document

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

fCurrentEventback to summary
private int fCurrentEvent
fEventAcceptedback to summary
private boolean fEventAccepted
fStreamAdvancedByHasNextback to summary
private boolean fStreamAdvancedByHasNext

the very issue around a long discussion. but since we must pass the TCK, we have to allow hasNext() to advance the underlining stream in order to find the next acceptable event

fStreamFilterback to summary
private StreamFilter fStreamFilter
fStreamReaderback to summary
private XMLStreamReader fStreamReader

Constructor Detail

XMLStreamFilterImplback to summary
public XMLStreamFilterImpl(XMLStreamReader reader, StreamFilter filter) throws XMLStreamException

Creates a new instance of XMLStreamFilterImpl, advancing the reader to the next event accepted by the filter, if not already positioned on an accepted event.

Parameters
reader:XMLStreamReader

the reader to filter

filter:StreamFilter

the filter to apply to the reader

Exceptions
XMLStreamException:
when an XMLStreamException is thrown when advancing the reader to an accepted event.

Method Detail

closeback to summary
public void close() throws XMLStreamException

Implements javax.xml.stream.XMLStreamReader.close.

Doc from javax.xml.stream.XMLStreamReader.close.

Frees any resources associated with this Reader. This method does not close the underlying input source.

Exceptions
XMLStreamException:
if there are errors freeing associated resources
findNextEventback to summary
private int findNextEvent() throws XMLStreamException
findNextTagback to summary
private int findNextTag() throws XMLStreamException
getAttributeCountback to summary
public int getAttributeCount()

Implements javax.xml.stream.XMLStreamReader.getAttributeCount.

Doc from javax.xml.stream.XMLStreamReader.getAttributeCount.

Returns the count of attributes on this START_ELEMENT, this method is only valid on a START_ELEMENT or ATTRIBUTE. This count excludes namespace definitions. Attribute indices are zero-based.

getAttributeLocalNameback to summary
public String getAttributeLocalName(int index)

Implements javax.xml.stream.XMLStreamReader.getAttributeLocalName.

Doc from javax.xml.stream.XMLStreamReader.getAttributeLocalName.

Returns the localName of the attribute at the provided index

getAttributeNameback to summary
public QName getAttributeName(int index)

Implements javax.xml.stream.XMLStreamReader.getAttributeName.

Doc from javax.xml.stream.XMLStreamReader.getAttributeName.

Returns the qname of the attribute at the provided index

getAttributeNamespaceback to summary
public String getAttributeNamespace(int index)

Implements javax.xml.stream.XMLStreamReader.getAttributeNamespace.

Doc from javax.xml.stream.XMLStreamReader.getAttributeNamespace.

Returns the namespace of the attribute at the provided index

getAttributePrefixback to summary
public String getAttributePrefix(int index)

Implements javax.xml.stream.XMLStreamReader.getAttributePrefix.

Doc from javax.xml.stream.XMLStreamReader.getAttributePrefix.

Returns the prefix of this attribute at the provided index

getAttributeTypeback to summary
public String getAttributeType(int index)

Implements javax.xml.stream.XMLStreamReader.getAttributeType.

Doc from javax.xml.stream.XMLStreamReader.getAttributeType.

Returns the XML type of the attribute at the provided index

getAttributeValueback to summary
public String getAttributeValue(int index)

Implements javax.xml.stream.XMLStreamReader.getAttributeValue.

Doc from javax.xml.stream.XMLStreamReader.getAttributeValue.

Returns the value of the attribute at the index

getAttributeValueback to summary
public String getAttributeValue(String namespaceURI, String localName)

Implements javax.xml.stream.XMLStreamReader.getAttributeValue.

Doc from javax.xml.stream.XMLStreamReader.getAttributeValue.

Returns the normalized attribute value of the attribute with the namespace and localName If the namespaceURI is null the namespace is not checked for equality

getCharacterEncodingSchemeback to summary
public String getCharacterEncodingScheme()

Implements javax.xml.stream.XMLStreamReader.getCharacterEncodingScheme.

Doc from javax.xml.stream.XMLStreamReader.getCharacterEncodingScheme.

Returns the character encoding declared on the xml declaration Returns null if none was declared

getElementTextback to summary
public String getElementText() throws XMLStreamException

Implements javax.xml.stream.XMLStreamReader.getElementText.

Doc from javax.xml.stream.XMLStreamReader.getElementText.

Reads the content of a text-only element, an exception is thrown if this is not a text-only element. Regardless of value of javax.xml.stream.isCoalescing this method always returns coalesced content.

Precondition

the current event is START_ELEMENT.
Postcondition: the current event is the corresponding END_ELEMENT.
The method does the following (implementations are free to optimized but must do equivalent processing):

if(getEventType() != XMLStreamConstants.START_ELEMENT) {
    throw new XMLStreamException(
    "parser must be on START_ELEMENT to read next text", getLocation());
}

int eventType = next();
StringBuffer content = new StringBuffer();
while(eventType != XMLStreamConstants.END_ELEMENT) {
    if(eventType == XMLStreamConstants.CHARACTERS
       || eventType == XMLStreamConstants.CDATA
       || eventType == XMLStreamConstants.SPACE
       || eventType == XMLStreamConstants.ENTITY_REFERENCE) {
          buf.append(getText());
    } else if(eventType == XMLStreamConstants.PROCESSING_INSTRUCTION
              || eventType == XMLStreamConstants.COMMENT) {
        // skipping
    } else if(eventType == XMLStreamConstants.END_DOCUMENT) {
        throw new XMLStreamException(
        "unexpected end of document when reading element text content", this);
    } else if(eventType == XMLStreamConstants.START_ELEMENT) {
        throw new XMLStreamException(
        "element text content may not contain START_ELEMENT", getLocation());
    } else {
        throw new XMLStreamException(
        "Unexpected event type "+eventType, getLocation());
    }
    eventType = next();
}
return buf.toString();
Exceptions
XMLStreamException:
if the current event is not a START_ELEMENT or if a non text element is encountered
getEncodingback to summary
public String getEncoding()

Implements javax.xml.stream.XMLStreamReader.getEncoding.

Doc from javax.xml.stream.XMLStreamReader.getEncoding.

Return input encoding if known or null if unknown.

getEventTypeback to summary
public int getEventType()

Implements javax.xml.stream.XMLStreamReader.getEventType.

Doc from javax.xml.stream.XMLStreamReader.getEventType.

Returns an integer code that indicates the type of the event the cursor is pointing to. The initial event type is START_DOCUMENT.

getLocalNameback to summary
public String getLocalName()

Implements javax.xml.stream.XMLStreamReader.getLocalName.

Doc from javax.xml.stream.XMLStreamReader.getLocalName.

Returns the (local) name of the current event. For START_ELEMENT or END_ELEMENT returns the (local) name of the current element. For ENTITY_REFERENCE it returns entity name. The current event must be START_ELEMENT or END_ELEMENT, or ENTITY_REFERENCE

getLocationback to summary
public Location getLocation()

Implements javax.xml.stream.XMLStreamReader.getLocation.

Doc from javax.xml.stream.XMLStreamReader.getLocation.

Return the current location of the processor. If the Location is unknown the processor should return an implementation of Location that returns -1 for the location and null for the publicId and systemId. The location information is only valid until next() is called.

getNameback to summary
public QName getName()

Implements javax.xml.stream.XMLStreamReader.getName.

Doc from javax.xml.stream.XMLStreamReader.getName.

Returns a QName for the current START_ELEMENT or END_ELEMENT event

getNamespaceContextback to summary
public NamespaceContext getNamespaceContext()

Implements javax.xml.stream.XMLStreamReader.getNamespaceContext.

Doc from javax.xml.stream.XMLStreamReader.getNamespaceContext.

Returns a read only namespace context for the current position. The context is transient and only valid until a call to next() changes the state of the reader.

getNamespaceCountback to summary
public int getNamespaceCount()

Implements javax.xml.stream.XMLStreamReader.getNamespaceCount.

Doc from javax.xml.stream.XMLStreamReader.getNamespaceCount.

Returns the count of namespaces declared on this START_ELEMENT or END_ELEMENT, this method is only valid on a START_ELEMENT, END_ELEMENT or NAMESPACE. On an END_ELEMENT the count is of the namespaces that are about to go out of scope. This is the equivalent of the information reported by SAX callback for an end element event.

getNamespacePrefixback to summary
public String getNamespacePrefix(int index)

Implements javax.xml.stream.XMLStreamReader.getNamespacePrefix.

Doc from javax.xml.stream.XMLStreamReader.getNamespacePrefix.

Returns the prefix for the namespace declared at the index. Returns null if this is the default namespace declaration

getNamespaceURIback to summary
public String getNamespaceURI()

Implements javax.xml.stream.XMLStreamReader.getNamespaceURI.

Doc from javax.xml.stream.XMLStreamReader.getNamespaceURI.

If the current event is a START_ELEMENT or END_ELEMENT this method returns the URI of the prefix or the default namespace. Returns null if the event does not have a prefix.

getNamespaceURIback to summary
public String getNamespaceURI(int index)

Implements javax.xml.stream.XMLStreamReader.getNamespaceURI.

Doc from javax.xml.stream.XMLStreamReader.getNamespaceURI.

Returns the uri for the namespace declared at the index.

getNamespaceURIback to summary
public String getNamespaceURI(String prefix)

Implements javax.xml.stream.XMLStreamReader.getNamespaceURI.

Doc from javax.xml.stream.XMLStreamReader.getNamespaceURI.

Return the uri for the given prefix. The uri returned depends on the current state of the processor.

Note

The 'xml' prefix is bound as defined in Namespaces in XML specification to "http://www.w3.org/XML/1998/namespace".

Note

The 'xmlns' prefix must be resolved to following namespace http://www.w3.org/2000/xmlns/

getPIDataback to summary
public String getPIData()

Implements javax.xml.stream.XMLStreamReader.getPIData.

Doc from javax.xml.stream.XMLStreamReader.getPIData.

Get the data section of a processing instruction

getPITargetback to summary
public String getPITarget()

Implements javax.xml.stream.XMLStreamReader.getPITarget.

Doc from javax.xml.stream.XMLStreamReader.getPITarget.

Get the target of a processing instruction

getPrefixback to summary
public String getPrefix()

Implements javax.xml.stream.XMLStreamReader.getPrefix.

Doc from javax.xml.stream.XMLStreamReader.getPrefix.

Returns the prefix of the current event or null if the event does not have a prefix

getPropertyback to summary
public Object getProperty(String name) throws IllegalArgumentException

Implements javax.xml.stream.XMLStreamReader.getProperty.

Doc from javax.xml.stream.XMLStreamReader.getProperty.

Get the value of a feature/property from the underlying implementation

Exceptions
IllegalArgumentException:
if name is null
getTextback to summary
public String getText()

Implements javax.xml.stream.XMLStreamReader.getText.

Doc from javax.xml.stream.XMLStreamReader.getText.

Returns the current value of the parse event as a string, this returns the string value of a CHARACTERS event, returns the value of a COMMENT, the replacement value for an ENTITY_REFERENCE, the string value of a CDATA section, the string value for a SPACE event, or the String value of the internal subset of the DTD. If an ENTITY_REFERENCE has been resolved, any character data will be reported as CHARACTERS events.

getTextCharactersback to summary
public char[] getTextCharacters()

Implements javax.xml.stream.XMLStreamReader.getTextCharacters.

Doc from javax.xml.stream.XMLStreamReader.getTextCharacters.

Returns an array which contains the characters from this event. This array should be treated as read-only and transient. I.e. the array will contain the text characters until the XMLStreamReader moves on to the next event. Attempts to hold onto the character array beyond that time or modify the contents of the array are breaches of the contract for this interface.

getTextCharactersback to summary
public int getTextCharacters(int sourceStart, char[] target, int targetStart, int length) throws XMLStreamException

Implements javax.xml.stream.XMLStreamReader.getTextCharacters.

Doc from javax.xml.stream.XMLStreamReader.getTextCharacters.

Gets the text associated with a CHARACTERS, SPACE or CDATA event. Text starting a "sourceStart" is copied into "target" starting at "targetStart". Up to "length" characters are copied. The number of characters actually copied is returned. The "sourceStart" argument must be greater or equal to 0 and less than or equal to the number of characters associated with the event. Usually, one requests text starting at a "sourceStart" of 0. If the number of characters actually copied is less than the "length", then there is no more text. Otherwise, subsequent calls need to be made until all text has been retrieved. For example:

int length = 1024;
char[] myBuffer = new char[ length ];

for ( int sourceStart = 0 ; ; sourceStart += length )
{
   int nCopied = stream.getTextCharacters( sourceStart, myBuffer, 0, length );

  if (nCopied < length)
      break;
}
 
XMLStreamException may be thrown if there are any XML errors in the underlying source. The "targetStart" argument must be greater than or equal to 0 and less than the length of "target", Length must be greater than 0 and "targetStart + length" must be less than or equal to length of "target".
Exceptions
XMLStreamException:
if the underlying XML source is not well-formed
getTextLengthback to summary
public int getTextLength()

Implements javax.xml.stream.XMLStreamReader.getTextLength.

Doc from javax.xml.stream.XMLStreamReader.getTextLength.

Returns the length of the sequence of characters for this Text event within the text character array.

getTextStartback to summary
public int getTextStart()

Implements javax.xml.stream.XMLStreamReader.getTextStart.

Doc from javax.xml.stream.XMLStreamReader.getTextStart.

Returns the offset into the text character array where the first character (of this text event) is stored.

getVersionback to summary
public String getVersion()

Implements javax.xml.stream.XMLStreamReader.getVersion.

Doc from javax.xml.stream.XMLStreamReader.getVersion.

Get the xml version declared on the xml declaration Returns null if none was declared

hasNameback to summary
public boolean hasName()

Implements javax.xml.stream.XMLStreamReader.hasName.

Doc from javax.xml.stream.XMLStreamReader.hasName.

returns a boolean indicating whether the current event has a name (is a START_ELEMENT or END_ELEMENT).

hasNextback to summary
public boolean hasNext() throws XMLStreamException

Implements javax.xml.stream.XMLStreamReader.hasNext.

Doc from javax.xml.stream.XMLStreamReader.hasNext.

Returns true if there are more parsing events and false if there are no more events. This method will return false if the current state of the XMLStreamReader is END_DOCUMENT

Exceptions
XMLStreamException:
if there is a fatal error detecting the next state
hasTextback to summary
public boolean hasText()

Implements javax.xml.stream.XMLStreamReader.hasText.

Doc from javax.xml.stream.XMLStreamReader.hasText.

Return a boolean indicating whether the current event has text. The following events have text: CHARACTERS,DTD ,ENTITY_REFERENCE, COMMENT, SPACE

isAttributeSpecifiedback to summary
public boolean isAttributeSpecified(int index)

Implements javax.xml.stream.XMLStreamReader.isAttributeSpecified.

Doc from javax.xml.stream.XMLStreamReader.isAttributeSpecified.

Returns a boolean which indicates if this attribute was created by default

isCharactersback to summary
public boolean isCharacters()

Implements javax.xml.stream.XMLStreamReader.isCharacters.

Doc from javax.xml.stream.XMLStreamReader.isCharacters.

Returns true if the cursor points to a character data event

isEndElementback to summary
public boolean isEndElement()

Implements javax.xml.stream.XMLStreamReader.isEndElement.

Doc from javax.xml.stream.XMLStreamReader.isEndElement.

Returns true if the cursor points to an end tag (otherwise false)

isStandaloneback to summary
public boolean isStandalone()

Implements javax.xml.stream.XMLStreamReader.isStandalone.

Doc from javax.xml.stream.XMLStreamReader.isStandalone.

Get the standalone declaration from the xml declaration

isStartElementback to summary
public boolean isStartElement()

Implements javax.xml.stream.XMLStreamReader.isStartElement.

Doc from javax.xml.stream.XMLStreamReader.isStartElement.

Returns true if the cursor points to a start tag (otherwise false)

isWhiteSpaceback to summary
public boolean isWhiteSpace()

Implements javax.xml.stream.XMLStreamReader.isWhiteSpace.

Doc from javax.xml.stream.XMLStreamReader.isWhiteSpace.

Returns true if the cursor points to a character data event that consists of all whitespace

nextback to summary
public int next() throws XMLStreamException

Implements javax.xml.stream.XMLStreamReader.next.

Doc from javax.xml.stream.XMLStreamReader.next.

Get next parsing event - a processor may return all contiguous character data in a single chunk, or it may split it into several chunks. If the property javax.xml.stream.isCoalescing is set to true element content must be coalesced and only one CHARACTERS event must be returned for contiguous element content or CDATA Sections. By default entity references must be expanded and reported transparently to the application. An exception will be thrown if an entity reference cannot be expanded. If element content is empty (i.e. content is "") then no CHARACTERS event will be reported.

Given the following XML:
<foo><!--description-->content text<![CDATA[<greeting>Hello>/greeting>]]>other content>/foo>
The behavior of calling next() when being on foo will be:
1- the comment (COMMENT)
2- then the characters section (CHARACTERS)
3- then the CDATA section (another CHARACTERS)
4- then the next characters section (another CHARACTERS)
5- then the END_ELEMENT

Note

empty element (such as <tag/>) will be reported with two separate events: START_ELEMENT, END_ELEMENT - This preserves parsing equivalency of empty element to <tag></tag>.

Exceptions
XMLStreamException:
if there is an error processing the underlying XML source
nextTagback to summary
public int nextTag() throws XMLStreamException

Implements javax.xml.stream.XMLStreamReader.nextTag.

Doc from javax.xml.stream.XMLStreamReader.nextTag.

Skips any white space (isWhiteSpace() returns true), COMMENT, or PROCESSING_INSTRUCTION, until a START_ELEMENT or END_ELEMENT is reached. If other than white space characters, COMMENT, PROCESSING_INSTRUCTION, START_ELEMENT, END_ELEMENT are encountered, an exception is thrown. This method should be used when processing element-only content separated by white space.

Precondition

none
Postcondition: the current event is START_ELEMENT or END_ELEMENT and cursor may have moved over any whitespace event.
Essentially it does the following (implementations are free to optimized but must do equivalent processing):

 int eventType = next();
while((eventType == XMLStreamConstants.CHARACTERS && isWhiteSpace()) // skip whitespace
|| (eventType == XMLStreamConstants.CDATA && isWhiteSpace())
// skip whitespace
|| eventType == XMLStreamConstants.SPACE
|| eventType == XMLStreamConstants.PROCESSING_INSTRUCTION
|| eventType == XMLStreamConstants.COMMENT
) {
    eventType = next();
}
if (eventType != XMLStreamConstants.START_ELEMENT && eventType != XMLStreamConstants.END_ELEMENT) {
    throw new String XMLStreamException("expected start or end tag", getLocation());
}
return eventType; 
Exceptions
XMLStreamException:
if the current event is not white space, PROCESSING_INSTRUCTION, START_ELEMENT or END_ELEMENT
requireback to summary
public void require(int type, String namespaceURI, String localName) throws XMLStreamException

Implements javax.xml.stream.XMLStreamReader.require.

Doc from javax.xml.stream.XMLStreamReader.require.

Test if the current event is of the given type and if the namespace and name match the current namespace and name of the current event. If the namespaceURI is null it is not checked for equality, if the localName is null it is not checked for equality.

Exceptions
XMLStreamException:
if the required values are not matched.
setStreamFilterback to summary
protected void setStreamFilter(StreamFilter sf)
standaloneSetback to summary
public boolean standaloneSet()

Implements javax.xml.stream.XMLStreamReader.standaloneSet.

Doc from javax.xml.stream.XMLStreamReader.standaloneSet.

Checks if standalone was set in the document