elements.get(name).add(value);\r
} else {\r
List<ResponseDataObject> list = new ArrayList<ResponseDataObject>();\r
- list.add(value);\r
+ list.add(value); \r
elements.put(name,list);\r
}\r
}\r
return elements.get(name);\r
}\r
\r
+ public List<ResponseDataObject> getElements(String name, int maxElements) {\r
+ if (getElements(name)!=null) {\r
+ int size = getElements(name).size();\r
+ if (size>0) {\r
+ return ((ArrayList<ResponseDataObject>) getElements(name)).subList(0, Math.min(maxElements,size)); \r
+ } \r
+ } \r
+ return getElements(name);\r
+ }\r
+ \r
+ public List<ResponseDataObject> getElements(String name, int maxElements, int maxTotalValueLength) {\r
+ if (getElements(name)!=null) {\r
+ int size = getElements(name).size();\r
+ if (size>0) {\r
+ List<ResponseDataObject> maxElementsList = ((ArrayList<ResponseDataObject>) getElements(name)).subList(0, Math.min(maxElements,size));\r
+ int i = 0;\r
+ int totalLength = 0;\r
+ for (ResponseDataObject element : maxElementsList) {\r
+ totalLength += element.getValue().length(); \r
+ i++;\r
+ if (totalLength>maxTotalValueLength) {\r
+ break;\r
+ } \r
+ }\r
+ return maxElementsList.subList(0, i);\r
+ } \r
+ } \r
+ return getElements(name);\r
+ }\r
+\r
+ \r
public ResponseDataObject getOneElement (String name) {\r
if (elements.get(name) != null) {\r
return elements.get(name).get(0);\r
* @param name of the element \r
* @return text value, empty string if none found\r
*/\r
- public String getOneElementValue (String name) {\r
+ public String getOneValue (String name) {\r
if (getOneElement(name)!=null && getOneElement(name).getValue().length()>0) {\r
return getOneElement(name).getValue();\r
} else {\r
}\r
}\r
\r
+ public String[] getValueArray (String name) {\r
+ List<ResponseDataObject> elements = getElements(name);\r
+ String[] valueArray = {};\r
+ if (elements != null) {\r
+ valueArray = new String[elements.size()];\r
+ int i = 0;\r
+ for (ResponseDataObject element : elements) {\r
+ valueArray[i++] = element.getValue();\r
+ } \r
+ }\r
+ return valueArray;\r
+ }\r
+ \r
public void appendContent (String content) {\r
textContent = textContent + content;\r
}\r
}\r
\r
public int getIntValue(String name) {\r
- String val = getOneElementValue(name);\r
+ String val = getOneValue(name);\r
if (val.length()==0) {\r
return 0;\r
} else {\r