1 16 package org.ajaxtags.xml; 17 18 import org.ajaxtags.helpers.ValueItem; 19 20 26 class AjaxValueListXmlBuilder extends BaseXmlBuilder<ValueItem> { 27 28 40 41 public AjaxValueListXmlBuilder addItem(String name, boolean asCdata, 42 String ... value) { 43 getListe().add(new ValueItem(name, asCdata, value)); 44 return this; 45 } 46 47 56 public AjaxValueListXmlBuilder addItem(String name, String ... value) { 57 return addItem(name, false, value); 58 } 59 60 67 private static String valueToString(ValueItem item) { 68 StringBuffer xml = new StringBuffer (); 69 xml.append("<name>"); 70 if (item.isAsCData()) { 71 xml.append("<![CDATA["); 72 } 73 xml.append(item.getName()); 74 if (item.isAsCData()) { 75 xml.append("]]>"); 76 } 77 xml.append("</name>"); 78 for (String value : item.getValue()) { 79 xml.append("<value>"); 80 if (item.isAsCData()) { 81 xml.append("<![CDATA["); 82 } 83 xml.append(value); 84 if (item.isAsCData()) { 85 xml.append("]]>"); 86 } 87 xml.append("</value>"); 88 } 89 90 return xml.toString(); 91 } 92 93 98 @Override 99 protected String getXMLString() { 100 StringBuffer xml = new StringBuffer (); 101 xml.append("<ajax-response>"); 102 xml.append("<response>"); 103 for (ValueItem item : getItems()) { 104 xml.append("<item>"); 105 xml.append(valueToString(item)); 106 xml.append("</item>"); 107 } 108 xml.append("</response>"); 109 xml.append("</ajax-response>"); 110 111 return xml.toString(); 112 } 113 114 } 115 | Popular Tags |