Heck, I'll just share the query method:

private SchoolPeopleData[] queryPeoples(SchoolPeopleDataFilter filter) {
    
    String qfilter = null;
    
    // filter a batch of ids
    List<Key> keysList = null;
    if (filter.getUseIds() == true) {
      keysList = getFilterForIds(filter);
      if (keysList != null) {
        qfilter = ":keys.contains(key)";
      }
      if (keysList == null || keysList.size() == 0) {
        return null;
      }
    }

    ArrayList<SchoolPeopleData> a = new ArrayList<SchoolPeopleData>(); 
    PersistenceManager pm = sp.getPersistenceManager();
    try {
      Query q = pm.newQuery("select from " + SchoolPeopleJdo.class.getName());
      if (qfilter != null) {
        q.setFilter(qfilter);
      }
      q.setRange(filter.getRangeStart(), filter.getRangeFinish());
      
      List<SchoolPeopleJdo> ids = null;
      if (filter.getUseIds() == true && keysList != null) {
        ids = (List<SchoolPeopleJdo>) q.execute(keysList);
        
      } else {
        ids = (List<SchoolPeopleJdo>) q.execute();
      }
      
      Iterator<SchoolPeopleJdo> itr = ids.iterator();
      while (itr.hasNext()) {
        SchoolPeopleJdo j = itr.next();
        if (j != null) {
          SchoolPeopleJdo detatched = pm.detachCopy(j);
          a.add(detatched.getData());
        }
      }
      q.closeAll();
    } catch (Exception e) { 
      e.printStackTrace();
      log.log(Level.SEVERE, "", e);
    } finally {
      pm.close();
    }
    if (a.size() == 0) {
      return null;
    }
    SchoolPeopleData[] r = new SchoolPeopleData[a.size()];
    a.toArray(r);
    
    return r;
  }


Brandon Donnelson
http://gwt-examples.googlecode.com

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine-java/-/nL8qXD3CHKwJ.
To post to this group, send email to google-appengine-java@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.

Reply via email to