@Override public void writeEndElement() throws XMLStreamException { closeEmptyElementIfNecessary(); int last = this.endElements.size() - 1; EndElement lastEndElement = this.endElements.get(last); this.eventWriter.add(lastEndElement); this.endElements.remove(last); }
@Override public void writeAttribute(String prefix, String namespaceURI, String localName, String value) throws XMLStreamException { this.eventWriter.add(this.eventFactory.createAttribute(prefix, namespaceURI, localName, value)); }
@Override protected void ignorableWhitespaceInternal(String data) throws XMLStreamException { this.eventWriter.add(this.eventFactory.createIgnorableSpace(data)); }
@Override protected void dtdInternal(String dtd) throws XMLStreamException { this.eventWriter.add(this.eventFactory.createDTD(dtd)); }
@Override protected void commentInternal(String comment) throws XMLStreamException { this.eventWriter.add(this.eventFactory.createComment(comment)); }
@Override protected void endElementInternal(QName name, Map<String, String> namespaceMapping) throws XMLStreamException { List<Namespace> namespaces = getNamespaces(namespaceMapping); this.eventWriter.add(this.eventFactory.createEndElement(name, namespaces.iterator())); }
@Override public void writeCharacters(char[] text, int start, int len) throws XMLStreamException { closeEmptyElementIfNecessary(); this.eventWriter.add(this.eventFactory.createCharacters(new String(text, start, len))); }
@Override protected void startElementInternal(QName name, Attributes atts, Map<String, String> namespaceMapping) throws XMLStreamException { List<Attribute> attributes = getAttributes(atts); List<Namespace> namespaces = getNamespaces(namespaceMapping); this.eventWriter.add( this.eventFactory.createStartElement(name, attributes.iterator(), namespaces.iterator())); }
@Override public void writeCharacters(String text) throws XMLStreamException { closeEmptyElementIfNecessary(); this.eventWriter.add(this.eventFactory.createCharacters(text)); }
@Override public void writeDTD(String dtd) throws XMLStreamException { closeEmptyElementIfNecessary(); this.eventWriter.add(this.eventFactory.createDTD(dtd)); }
@Override public void writeStartDocument(String encoding, String version) throws XMLStreamException { closeEmptyElementIfNecessary(); this.eventWriter.add(this.eventFactory.createStartDocument(encoding, version)); }
@Override public void writeProcessingInstruction(String target) throws XMLStreamException { closeEmptyElementIfNecessary(); this.eventWriter.add(this.eventFactory.createProcessingInstruction(target, "")); }
@Override public void writeComment(String data) throws XMLStreamException { closeEmptyElementIfNecessary(); this.eventWriter.add(this.eventFactory.createComment(data)); }
@Override public void writeCData(String data) throws XMLStreamException { closeEmptyElementIfNecessary(); this.eventWriter.add(this.eventFactory.createCData(data)); }
@Override public void writeProcessingInstruction(String target, String data) throws XMLStreamException { closeEmptyElementIfNecessary(); this.eventWriter.add(this.eventFactory.createProcessingInstruction(target, data)); }
@Override public void writeEndDocument() throws XMLStreamException { closeEmptyElementIfNecessary(); this.eventWriter.add(this.eventFactory.createEndDocument()); }
@Override public void writeStartDocument() throws XMLStreamException { closeEmptyElementIfNecessary(); this.eventWriter.add(this.eventFactory.createStartDocument()); }
@Override public void writeStartDocument(String version) throws XMLStreamException { closeEmptyElementIfNecessary(); this.eventWriter.add(this.eventFactory.createStartDocument(DEFAULT_ENCODING, version)); }
@Override public void writeEntityRef(String name) throws XMLStreamException { closeEmptyElementIfNecessary(); this.eventWriter.add(this.eventFactory.createEntityReference(name, null)); }
@Test public void standard() throws Exception { String xml = "<foo><bar>baz</bar></foo>"; List<XMLEvent> events = readEvents(xml); ListBasedXMLEventReader reader = new ListBasedXMLEventReader(events); StringWriter resultWriter = new StringWriter(); XMLEventWriter writer = this.outputFactory.createXMLEventWriter(resultWriter); writer.add(reader); assertThat(resultWriter.toString(), isSimilarTo(xml)); }