public static void printStructXml(Struct s, XmlStream xml) { Iterator<Map.Entry<Field, FieldValue>> it = s.iterator(); while (it.hasNext()) { Map.Entry<Field, FieldValue> val = it.next(); xml.beginTag(val.getKey().getName()); val.getValue().printXml(xml); xml.endTag(); } }
private void singleValueTag(FieldBase field, FieldValue value) { buffer.beginTag(field.getName()); value.printXml(buffer); buffer.endTag(); }
public static <K extends FieldValue, V extends FieldValue> void printMapXml(MapFieldValue<K, V> map, XmlStream xml) { for (Map.Entry<K, V> e : map.entrySet()) { FieldValue key = e.getKey(); FieldValue val = e.getValue(); xml.beginTag("item"); xml.beginTag("key"); key.printXml(xml); xml.endTag(); xml.beginTag("value"); val.printXml(xml); xml.endTag(); xml.endTag(); } }
public static void printArrayXml(Array array, XmlStream xml) { List<FieldValue> lst = array.getValues(); for (FieldValue value : lst) { xml.beginTag("item"); value.printXml(xml); xml.endTag(); } }
public static void printWeightedSetXml(WeightedSet ws, XmlStream xml) { Iterator<FieldValue> it = ws.fieldValueIterator(); while (it.hasNext()) { FieldValue val = it.next(); xml.beginTag("item"); xml.addAttribute("weight", ws.get(val)); val.printXml(xml); xml.endTag(); } }
@Override public void write(FieldBase field, StructuredFieldValue value) { buffer.beginTag(field.getName()); Iterator<Map.Entry<Field, FieldValue>> i = value.iterator(); while (i.hasNext()) { Map.Entry<Field, FieldValue> v = i.next(); buffer.beginTag(v.getKey().getName()); v.getValue().printXml(buffer); buffer.endTag(); } buffer.endTag(); }
@Override public <T extends FieldValue> void write(FieldBase field, CollectionFieldValue<T> value) { buffer.beginTag(field.getName()); for (@SuppressWarnings("unchecked") Iterator<FieldValue> i = (Iterator<FieldValue>) value.iterator(); i.hasNext();) { buffer.beginTag("item"); i.next().printXml(buffer); buffer.endTag(); } buffer.endTag(); }
/** * Get XML representation of a single field and all its children, if any. * * @return XML representation of field in a <value> element */ public String toXml() { XmlStream xml = new XmlStream(); xml.setIndent(" "); xml.beginTag("value"); printXml(xml); xml.endTag(); return xml.toString(); }