1
0
Fork 0
mirror of https://codeberg.org/Mercury-IM/Smack synced 2024-09-27 18:29:35 +02:00

Modified to include many results per column in a row. SMACK-56

git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/trunk@2492 b35dd754-fafc-0310-a699-88a17e54d16e
This commit is contained in:
Gaston Dombiak 2005-05-27 02:17:15 +00:00 committed by gaston
parent 6b887c9c32
commit 7aac6e971a

View file

@ -77,8 +77,12 @@ public class ReportedData {
FormField field; FormField field;
for (Iterator fields = item.getFields(); fields.hasNext();) { for (Iterator fields = item.getFields(); fields.hasNext();) {
field = (FormField) fields.next(); field = (FormField) fields.next();
// Note: The field is created based on the FIRST value of the data form's field // The field is created with all the values of the data form's field
fieldList.add(new Field(field.getVariable(), (String)field.getValues().next())); List values = new ArrayList();
for (Iterator it=field.getValues(); it.hasNext();) {
values.add(it.next());
}
fieldList.add(new Field(field.getVariable(), values));
} }
rows.add(new Row(fieldList)); rows.add(new Row(fieldList));
} }
@ -196,16 +200,16 @@ public class ReportedData {
} }
/** /**
* Returns the value of the field whose variable matches the requested variable. * Returns the values of the field whose variable matches the requested variable.
* *
* @param variable the variable to match. * @param variable the variable to match.
* @return the value of the field whose variable matches the requested variable. * @return the values of the field whose variable matches the requested variable.
*/ */
public String getValue(String variable) { public Iterator getValues(String variable) {
for(Iterator it=getFields();it.hasNext();) { for(Iterator it=getFields();it.hasNext();) {
Field field = (Field) it.next(); Field field = (Field) it.next();
if (variable.equals(field.getVariable())) { if (variable.equals(field.getVariable())) {
return field.getValue(); return field.getValues();
} }
} }
return null; return null;
@ -223,11 +227,11 @@ public class ReportedData {
private static class Field { private static class Field {
private String variable; private String variable;
private String value; private List values;
private Field(String variable, String value) { private Field(String variable, List values) {
this.variable = variable; this.variable = variable;
this.value = value; this.values = values;
} }
/** /**
@ -240,12 +244,12 @@ public class ReportedData {
} }
/** /**
* Returns the value reported as part of the search. * Returns an iterator on the values reported as part of the search.
* *
* @return the returned value of the search. * @return the returned values of the search.
*/ */
public String getValue() { public Iterator getValues() {
return value; return Collections.unmodifiableList(values).iterator();
} }
} }
} }