background image

Capturing the Event Stream

<< Creating an Input Factory | readnwrite Sample >>
<< Creating an Input Factory | readnwrite Sample >>
110
S
TREAMING
API
FOR
XML
Creating the Filter
The next step is to instantiate a file input stream and create the stream filter:
FileInputStream fis = new FileInputStream(filename);
XMLStreamReader xmlr =
xmlif.createFilteredReader(xmlif.createXMLStreamReader(fis),
new MyStreamFilter());
int eventType = xmlr.getEventType();
printEventType(eventType);
while(xmlr.hasNext()){
eventType = xmlr.next();
printEventType(eventType);
printName(xmlr,eventType);
printText(xmlr);
if(xmlr.isStartElement()){
printAttributes(xmlr);
}
printPIData(xmlr);
System.out.println("-----------------------------");
}
Capturing the Event Stream
The next step is to capture the event stream. This is done in basically the same
way as in the
event Sample ­ EventParse.java
sample.
Filtering the Stream
The final step is the filter the stream:
public boolean accept(XMLStreamReader reader) {
if(!reader.isStartElement() && !reader.isEndElement())
return false;
else
return true;
}