Mostly the XMLEvent
interface provides alternatives to casting and
instanceof
:
package javax.xml.stream.events;
public interface XMLEvent extends XMLStreamConstants {
public int getEventType();
public Location getLocation();
public boolean isStartElement();
public boolean isAttribute();
public boolean isNamespace();
public boolean isEndElement();
public boolean isEntityReference();
public boolean isProcessingInstruction();
public boolean isCharacters();
public boolean isStartDocument();
public boolean isEndDocument();
public boolean isStartEntity();
public boolean isEndEntity();
public StartElement asStartElement();
public EndElement asEndElement();
public Characters asCharacters();
public QName getSchemaType(); // optional
public void writeAsEncodedUnicode(Writer writer) throws XMLStreamException;
}
Normally you need to downcast to do much useful