public Project getByNameAndIteration(String pName, String iter) { Query<Project> query = createQuery(); Criteria nameCriteria = query.criteria("name").equal(pName); Criteria iterationCriteria = query.criteria("iteration").equal(Short.valueOf(iter)); query.and(nameCriteria, iterationCriteria); return find(query).get(); }
objIds.add(key.getId()); List kindResults = find(kind, kindClass).disableValidation().filter("_id in", objIds).asList(); entities.addAll(kindResults);
public T findOne(Query<T> q) { return q.get(); }
/** * Queries the server to check for each DBRef. */ public <T> List<Key<T>> getKeysByRefs(List<DBRef> refs) { ArrayList<Key<T>> tempKeys = new ArrayList<Key<T>>(refs.size()); Map<String, List<DBRef>> kindMap = new HashMap<String, List<DBRef>>(); for (DBRef ref : refs) { if (kindMap.containsKey(ref.getRef())) kindMap.get(ref.getRef()).add(ref); else kindMap.put(ref.getRef(), new ArrayList<DBRef>(Collections.singletonList((DBRef) ref))); } for (String kind : kindMap.keySet()) { List<Object> objIds = new ArrayList<Object>(); List<DBRef> kindRefs = kindMap.get(kind); for (DBRef key : kindRefs) { objIds.add(key.getId()); } List<Key<T>> kindResults = this.<T>find(kind, null).disableValidation().filter("_id in", objIds).asKeyList(); tempKeys.addAll(kindResults); } //put them back in order, minus the missing ones. ArrayList<Key<T>> keys = new ArrayList<Key<T>>(refs.size()); for (DBRef ref : refs) { Key<T> testKey = mapr.refToKey(ref); if (tempKeys.contains(testKey)) keys.add(testKey); } return keys; }
/** * @param kind * @param clazz * @param id * @param <T> * @param <V> * @return */ public <T, V> T get(String kind, Class<T> clazz, V id) { List<T> results = find(kind, clazz, Mapper.ID_KEY, id, 0, 1).asList(); if (results == null || results.size() == 0) return null; return results.get(0); }
public List<TestPlanImpl> findAllIterationsByProjectName(final String pName, final String idProject, final String version) { final Query<TestPlanImpl> query = createQuery(); final CriteriaContainerImpl versionCriteria = query.criteria("version").equal(version); final CriteriaContainerImpl idProjectCriteria = query.criteria("project._id").equal(new ObjectId(idProject)); query.criteria("name").equal(pName).and(versionCriteria, idProjectCriteria); return find(query).asList(); }
/** * @param query * @param ops * @param createIfMissing * @param multi * @param wc * @param <T> * @return */ @SuppressWarnings("rawtypes") private <T> UpdateResults<T> update(Query<T> query, UpdateOperations ops, boolean createIfMissing, boolean multi, WriteConcern wc) { DBObject u = ((UpdateOpsImpl) ops).getOps(); if (((UpdateOpsImpl) ops).isIsolated()) { Query<T> q = query.clone(); q.disableValidation().filter("$atomic", true); return update(q, u, createIfMissing, multi, wc); } return update(query, u, createIfMissing, multi, wc); }
public ITestPage getById(final String id) { final Query<TestPage> query = createQuery(); query.field("_id").equal(new ObjectId(id)); LOG.info("Looking for test page with id: " + id); return findOne(query); }
public List<K> findIds(Query<T> q) { return (List<K>) keysToIds(q.asKeyList()); }
/** * @param query * @param <T> * @return */ public <T> long getCount(Query<T> query) { return query.countAll(); }
public TestPlanImpl getReferenceProjectByName(final String projectName, final String idProject) { final Query<TestPlanImpl> query = createQuery(); final Criteria nameCriteria = query.criteria("name").equal(projectName); final Criteria iterationCriteria = query.criteria("iteration").equal((short) 0); query.and(nameCriteria, iterationCriteria); return find(query).get(); }