/** * {@inheritDoc} */ @Override public void serialize(OutputStream outputStream) { try { this.omNode.serializeAndConsume(outputStream); } catch (Throwable t) { handleXmlException("error occurred during writing the message to the output stream: ", t); } }
/** * Simple utility that takes an XMLStreamReader and writes it * to an XMLStreamWriter * @param reader * @param writer * @throws XMLStreamException */ public static void reader2writer(XMLStreamReader reader, XMLStreamWriter writer) throws XMLStreamException { OMXMLParserWrapper builder = OMXMLBuilderFactory.createStAXOMBuilder(reader); try { OMDocument omDocument = builder.getDocument(); Iterator it = omDocument.getChildren(); while (it.hasNext()) { OMNode omNode = (OMNode) it.next(); omNode.serializeAndConsume(writer); } } finally { builder.close(); } } }
/** * Simple utility that takes an XMLStreamReader and writes it * to an XMLStreamWriter * @param reader * @param writer * @throws XMLStreamException */ private static void reader2writer(XMLStreamReader reader, XMLStreamWriter writer) throws XMLStreamException { StAXOMBuilder builder = new StAXOMBuilder(reader); try { OMDocument omDocument = builder.getDocument(); Iterator it = omDocument.getChildren(); while (it.hasNext()) { // TODO: this is extremely inefficient since next() will actually build the node! OMNode omNode = (OMNode) it.next(); // TODO: quick fix required because OMChildrenIterator#next() no longer builds the node omNode.getNextOMSibling(); omNode.serializeAndConsume(writer); } } finally { builder.close(); } }
/** * @deprecated This is an internal method that is no longer used. */ public static void serializeNormal (OMElement element, XMLStreamWriter writer, boolean cache) throws XMLStreamException { if (cache) { element.build(); } serializeStartpart(element, writer); OMNode firstChild = element.getFirstOMChild(); if (firstChild != null) { if (cache) { (firstChild).serialize(writer); } else { (firstChild).serializeAndConsume(writer); } } serializeEndpart(writer); }