Package org.chinasb.framework.core.base.search

Examples of org.chinasb.framework.core.base.search.Field


  public void setFields(Field[] fields) {
    this.fields.clear();
    if (fields != null) {
      for (int i = 0; i < fields.length; i++) {
        Field f = fields[i];
        if (f != null && f.getProperty() != null && f.getProperty().length() > 0) {
          if (f.getKey() == null)
            f.setKey(f.getProperty());
          this.fields.add(f);
        }
      }
    }
  }
View Full Code Here


    int resultMode = search.getResultMode();
    if (resultMode == ISearch.RESULT_AUTO) {
      int count = 0;
      Iterator<Field> fieldItr = search.getFields().iterator();
      while (fieldItr.hasNext()) {
        Field field = fieldItr.next();
        if (field.getKey() != null && !field.getKey().equals("")) {
          resultMode = ISearch.RESULT_MAP;
          break;
        }
        count++;
      }
      if (resultMode == ISearch.RESULT_AUTO) {
        if (count > 1)
          resultMode = ISearch.RESULT_ARRAY;
        else
          resultMode = ISearch.RESULT_SINGLE;
      }
    }

    switch (resultMode) {
    case ISearch.RESULT_ARRAY:
      if (!(results.get(0) instanceof Object[])) {
        List<Object[]> rArray = new ArrayList<Object[]>(results.size());
        for (Object result : results) {
          rArray.add(new Object[] { result });
        }
        return rArray;
      } else {
        return results;
      }
    case ISearch.RESULT_LIST:
      List<List> rList = new ArrayList<List>(results.size());
      if (results.get(0) instanceof Object[]) {
        for (Object[] result : (List<Object[]>) results) {
          List list = new ArrayList(result.length);
          for (Object o : result) {
            list.add(o);
          }
          rList.add(list);
        }
      } else {
        for (Object result : results) {
          List list = new ArrayList(1);
          list.add(result);
          rList.add(list);
        }
      }
      return rList;
    case ISearch.RESULT_MAP:
      List<String> keyList = new ArrayList<String>();
      Iterator<Field> fieldItr = search.getFields().iterator();
      while (fieldItr.hasNext()) {
        Field field = fieldItr.next();
        if (field.getKey() != null && !field.getKey().equals("")) {
          keyList.add(field.getKey());
        } else {
          keyList.add(field.getProperty());
        }
      }

      List<Map<String, Object>> rMap = new ArrayList<Map<String, Object>>(results.size());
      if (results.get(0) instanceof Object[]) {
View Full Code Here

    int resultMode = search.getResultMode();
    if (resultMode == ISearch.RESULT_AUTO) {
      int count = 0;
      Iterator<Field> fieldItr = search.getFields().iterator();
      while (fieldItr.hasNext()) {
        Field field = fieldItr.next();
        if (field.getKey() != null && !field.getKey().equals("")) {
          resultMode = ISearch.RESULT_MAP;
          break;
        }
        count++;
      }
      if (resultMode == ISearch.RESULT_AUTO) {
        if (count > 1)
          resultMode = ISearch.RESULT_ARRAY;
        else
          resultMode = ISearch.RESULT_SINGLE;
      }
    }

    switch (resultMode) {
    case ISearch.RESULT_ARRAY:
      query.setResultTransformer(ARRAY_RESULT_TRANSFORMER);
      break;
    case ISearch.RESULT_LIST:
      query.setResultTransformer(Transformers.TO_LIST);
      break;
    case ISearch.RESULT_MAP:
      List<String> keyList = new ArrayList<String>();
      Iterator<Field> fieldItr = search.getFields().iterator();
      while (fieldItr.hasNext()) {
        Field field = fieldItr.next();
        if (field.getKey() != null && !field.getKey().equals("")) {
          keyList.add(field.getKey());
        } else {
          keyList.add(field.getProperty());
        }
      }
      query.setResultTransformer(new MapResultTransformer(keyList.toArray(new String[0])));
      break;
    default: // ISearch.RESULT_SINGLE
View Full Code Here

TOP

Related Classes of org.chinasb.framework.core.base.search.Field

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.