/** * Creates an {@link XMLEventWriter} that writes to the provided * {@link XMLStreamWriter}. * * @param writer The destination stream. * @return An {@link XMLEventWriter} that writes to the provided * {@link XMLStreamWriter}. */ public XMLEventWriter createXMLEventWriter(XMLStreamWriter writer) { return new XMLStreamEventWriter(writer); }
public static XMLStreamWriter createFilteredWriter(XMLStreamWriter writer, EventFilter filter) { XMLEventWriter eventWriter = new XMLStreamEventWriter(writer); eventWriter = new EventWriterFilter(eventWriter, filter); return new XMLEventStreamWriter(eventWriter); }
/** * Copies the content read from the specified source stream to the provided * result stream. * * @param reader The source stream. * @param writer The destination stream. * @throws XMLStreamException If an error occurs copying the stream * contents. */ public static final void copy(XMLStreamReader reader, XMLStreamWriter writer) throws XMLStreamException { XMLEventReader r = inputFactory.createXMLEventReader(reader); XMLEventWriter w = new XMLStreamEventWriter(writer); try { w.add(r); } finally { // force any cached events to the underlying writer w.flush(); } }
/** * Copies the content read from the specified source stream to the provided * result stream. * * @param reader The source stream. * @param writer The destination stream. * @param factory An optional input factory used to create any intermediate * streams. * @throws XMLStreamException If an error occurs copying the stream * contents. */ public static final void copy(XMLStreamReader reader, XMLStreamWriter writer, XMLInputFactory factory) throws XMLStreamException { if (factory == null) { factory = inputFactory; } XMLEventReader r = factory.createXMLEventReader(reader); XMLEventWriter w = new XMLStreamEventWriter(writer); try { w.add(r); } finally { // force any cached events to the underlying writer w.flush(); } }
public static void writeXmlFragment(XMLStreamWriter out, String xml, EventFilter filter, EventTransformer transformer) throws XMLStreamException { XMLEventReader reader = createFragmentXMLEventReader(xml); if (filter != null) { reader = factory.createFilteredReader(reader, filter); } if (transformer != null) { reader = new EventReaderTransformer(reader, transformer); } XMLEventWriter writer = new XMLStreamEventWriter(out); writer.add(reader); }