001 /*
002 @license.text@
003 */
004 package biz.hammurapi.eval;
005
006 import java.util.Collection;
007 import java.util.Iterator;
008
009 import biz.hammurapi.convert.CompositeConverter;
010
011
012 public class MultiResult extends Result {
013 Collection values;
014 private CompositeConverter converter;
015
016 /**
017 * @param value
018 * @param type
019 */
020 public MultiResult(Class type, Collection values, CompositeConverter converter) {
021 super(type);
022 this.values = values;
023 this.converter=converter;
024 }
025
026 public Object[] getValues() {
027 Object[] ret=new Object[values==null ? 0 : values.size()];
028 if (values!=null) {
029 Iterator it=values.iterator();
030 for (int i=0; it.hasNext(); i++) {
031 ret[i] = type==null ? it.next() : converter.convert(it.next(), type, false);
032 }
033 }
034 return ret;
035 }
036
037 void setValues(Collection values) {
038 this.values = values;
039 }
040 }