@Override public void marshall(XMLStreamWriter writer) throws XMLStreamException { for (Node delegate : delegates) { delegate.marshall(writer); } }
protected static void addAttribute(ElementNode e, String name, String value) { e.addAttribute(name, new AttributeValue(value)); }
protected static ElementNode addElement(ElementNode parent, String localName, String ns) { final ElementNode eNode = new ElementNode(parent, localName, ns); if(parent != null) { parent.addChild(eNode); } return eNode; }
public void write(T t, Writer stream) throws XMLStreamException, IOException { final ElementNode root = toElement(t); try (FormattingXmlStreamWriter writer = new FormattingXmlStreamWriter(XMLOutputFactory.newInstance() .createXMLStreamWriter(stream))) { writer.writeStartDocument(); root.marshall(writer); writer.writeEndDocument(); } }
public void writeStartElement(final String namespaceURI, final String localName) throws XMLStreamException { nestUnspecifiedNamespace(); // If this is a nested element flush the outer nl(); indent(); delegate.writeStartElement(namespaceURI, localName); level++; state = START_ELEMENT; indentEndElement = false; }
private ElementNode createNodeWithAttributesAndNs(XMLStreamReader reader, ElementNode parent) { String namespace = reader.getNamespaceURI() != null && reader.getNamespaceURI().length() > 0 ? reader.getNamespaceURI() : namespaceURI; ElementNode childNode = new ElementNode(parent, reader.getLocalName(), namespace); int count = reader.getAttributeCount(); for (int i = 0 ; i < count ; i++) { String name = reader.getAttributeLocalName(i); String value = reader.getAttributeValue(i); childNode.addAttribute(name, createAttributeValue(value)); } return childNode; }
public boolean hasContent() { for (Node delegate : delegates) { if (delegate.hasContent()) { return true; } } return false; } }
public void writeStartDocument() throws XMLStreamException { delegate.writeStartDocument(); nl(); state = START_DOCUMENT; }
public String getAttributeValue(String name, String defaultValue) { String s = getAttributeValue(name); if (s == null) { return defaultValue; } return s; }
protected AttributeValue createAttributeValue(String attributeValue) { return new AttributeValue(attributeValue); } }
static Spliterator over(String subject, char delimiter) { return new Spliterator(subject, delimiter); }
public ElementNode(final ElementNode parent, final String name) { this(parent, name, parent.getNamespace()); }
public String getAttributeValue(String name) { AttributeValue av = attributes.get(name); if (av == null) { return null; } return av.getValue(); }
private boolean isEmpty() { if (children.isEmpty()) { return true; } for (Node child : children) { if (child.hasContent()) { return false; } } return true; }
public void writeStartDocument(final String encoding, final String version) throws XMLStreamException { delegate.writeStartDocument(encoding, version); nl(); state = START_DOCUMENT; }