List of usage examples for javax.xml.stream.events XMLEvent isCharacters
public boolean isCharacters();
From source file:org.eclipse.swordfish.core.configuration.xml.SaxParsingPrototype.java
/** * @param args/*from w w w . ja va2 s .c om*/ */ public static void main(String[] args) throws Exception { XMLInputFactory inputFactory = XMLInputFactory.newInstance(); LinkedList<String> currentElements = new LinkedList<String>(); InputStream in = SaxParsingPrototype.class.getResource("ComplexPidXmlProperties.xml").openStream(); XMLEventReader eventReader = inputFactory.createXMLEventReader(in); Map<String, List<String>> props = new HashMap<String, List<String>>(); // Read the XML document while (eventReader.hasNext()) { XMLEvent event = eventReader.nextEvent(); if (event.isCharacters() && !event.asCharacters().isWhiteSpace()) { putElement(props, getQualifiedName(currentElements), event.asCharacters().getData()); } else if (event.isStartElement()) { System.out.println(event.asStartElement().getName()); currentElements.add(event.asStartElement().getName().getLocalPart()); for (Iterator attrIt = event.asStartElement().getAttributes(); attrIt.hasNext();) { Attribute attribute = (Attribute) attrIt.next(); putElement(props, getQualifiedName(currentElements) + "[@" + attribute.getName() + "]", attribute.getValue()); } } else if (event.isAttribute()) { } else if (event.isEndElement()) { String lastElem = event.asEndElement().getName().getLocalPart(); if (!currentElements.getLast().equals(lastElem)) { throw new UnsupportedOperationException(lastElem + "," + currentElements.getLast()); } currentElements.removeLast(); } } eventReader.close(); }
From source file:Main.java
public static void main(String args[]) throws Exception { XMLInputFactory xmlif = XMLInputFactory.newInstance(); XMLEventReader xmler = xmlif.createXMLEventReader(new FileReader("yourFile.xml")); XMLEvent event; while (xmler.hasNext()) { event = xmler.nextEvent();// w w w . j a v a 2s. c o m if (event.isStartElement()) { System.out.println(event.asStartElement().getName()); } else if (event.isCharacters()) { System.out.println(event.asCharacters().getData()); } } }
From source file:XMLEventReaderDemo.java
public static void main(String[] args) throws Exception { XMLInputFactory factory = XMLInputFactory.newInstance(); Reader fileReader = new FileReader("Source.xml"); XMLEventReader reader = factory.createXMLEventReader(fileReader); while (reader.hasNext()) { XMLEvent event = reader.nextEvent(); if (event.isStartElement()) { StartElement element = (StartElement) event; System.out.println("Start Element: " + element.getName()); Iterator iterator = element.getAttributes(); while (iterator.hasNext()) { Attribute attribute = (Attribute) iterator.next(); QName name = attribute.getName(); String value = attribute.getValue(); System.out.println("Attribute name/value: " + name + "/" + value); }/*from ww w . j av a 2s.c o m*/ } if (event.isEndElement()) { EndElement element = (EndElement) event; System.out.println("End element:" + element.getName()); } if (event.isCharacters()) { Characters characters = (Characters) event; System.out.println("Text: " + characters.getData()); } } }
From source file:Main.java
public static boolean isWhitespace(XMLEvent e) { if (e.isCharacters() && e.asCharacters().isWhiteSpace()) { return true; }/*from w ww . j a v a2 s . co m*/ return false; }
From source file:Main.java
public static Optional<Characters> getCharacterEventOfElement(List<XMLEvent> events, String elementName) { Iterator<XMLEvent> iterator = events.iterator(); while (iterator.hasNext()) { XMLEvent event = iterator.next(); if (event.isStartElement() && event.asStartElement().getName().getLocalPart().equals(elementName)) { XMLEvent nextEvent = iterator.next(); if (nextEvent.isCharacters()) return Optional.of(nextEvent.asCharacters()); }/*ww w . j a va 2 s. c om*/ } return Optional.empty(); }
From source file:Main.java
/** * Get the content of this tag, assuming it's just characters with no other * tags beneath it. Something like <tag>This is my content</tag> * will return "This is my content". If there's anything but regular * characters, an exception will be thrown. It also checks the end tag * for you. //from w ww.j a v a 2 s. co m * @param start The start tag * @param xml * @return The string content of this tag. * @throws XMLStreamException at runtime */ public static String getStringContent(XMLEvent start, XMLEventReader xml) { String ret = ""; XMLEvent e = nextEvent(xml); while (e.isCharacters()) { ret += e.asCharacters().getData(); e = nextEvent(xml); } // Make sure we actually got to the end tag, not something else assertEnd(localNameOf(start), e); return ret; }
From source file:jenkins.plugins.livingdoc.XmlReportReader.java
private static String readString(XMLEvent event) { if (event.isCharacters()) { return event.asCharacters().getData(); }/*w ww . j a v a2s.co m*/ throw new IllegalArgumentException("XMLEvent is not a Characters"); }
From source file:com.predic8.membrane.core.interceptor.rest.XML2HTTP.java
private static String slurpCharacterData(XMLEventReader parser, StartElement sevent) throws XMLStreamException, XML2HTTPException { String name = sevent.getName().getLocalPart(); StringBuilder value = new StringBuilder(); while (parser.hasNext()) { XMLEvent event = parser.nextEvent(); if (event.isCharacters()) { value.append(event.asCharacters().getData()); } else if (event.isEndElement()) { break; } else {/* ww w. jav a2 s. c o m*/ throw new XML2HTTPException("XML-HTTP doc <" + name + "> element contains non-character data."); } } return value.toString(); }
From source file:com.hazelcast.simulator.probes.probes.ProbesResultXmlReader.java
private static String parseCharsAndEndCurrentElement(XMLEventReader reader) throws XMLStreamException { XMLEvent xmlEvent = reader.nextEvent(); if (!xmlEvent.isCharacters()) { throw new XMLStreamException("Unexpected event " + xmlEvent); }/* ww w .jav a 2 s . co m*/ String data = xmlEvent.asCharacters().getData(); while (reader.hasNext()) { xmlEvent = reader.nextEvent(); if (xmlEvent.isEndElement()) { return data; } } throw new XMLStreamException("Unexpected end of the document"); }
From source file:com.hazelcast.simulator.probes.probes.ProbesResultXmlReader.java
private static Result parseMaxLatencyResult(XMLEventReader reader) throws XMLStreamException { Long maxLatency = null;/*from ww w . ja va 2s . co m*/ while (reader.hasNext()) { XMLEvent xmlEvent = reader.nextEvent(); if (xmlEvent.isCharacters()) { maxLatency = Long.parseLong(xmlEvent.asCharacters().getData()); } else if (xmlEvent.isEndElement()) { EndElement endElement = xmlEvent.asEndElement(); if (!MAX_LATENCY.matches(endElement.getName().getLocalPart())) { throw new XMLStreamException("Unexpected end element " + endElement.getName()); } if (maxLatency == null) { throw new XMLStreamException("Unexpected end element " + MAX_LATENCY.getName()); } return new MaxLatencyResult(maxLatency); } } throw new XMLStreamException("Unexpected end of stream"); }