Example usage for org.springframework.data.mongodb.core.query Query fields

List of usage examples for org.springframework.data.mongodb.core.query Query fields

Introduction

In this page you can find the example usage for org.springframework.data.mongodb.core.query Query fields.

Prototype

public Field fields() 

Source Link

Usage

From source file:com.epam.ta.reportportal.database.dao.UserFilterRepositoryCustomImpl.java

@Override
public List<UserFilter> findFilters(String userName, String projectName, Sort sort, boolean isShared) {
    Query query;
    if (isShared) {
        query = ShareableRepositoryUtils.createSharedEntityQuery(userName, projectName);
    } else {//from w ww.ja  v  a 2  s  .c  o  m
        query = ShareableRepositoryUtils.createOwnedEntityQuery(userName);
    }
    query.addCriteria(where("isLink").is(false)).addCriteria(where(UserFilter.PROJECT_NAME).is(projectName))
            .with(sort);
    query.with(sort);
    query.fields().include(ID);
    query.fields().include(NAME);
    query.fields().include(TARGET);
    query.fields().include(CONDITIONS);
    query.fields().include(OPTIONS);
    query.fields().include(Shareable.OWNER);
    query.fields().include(ENTRIES);
    query.fields().include(PROJECT);
    return mongoTemplate.find(query, UserFilter.class);
}

From source file:com.epam.ta.reportportal.database.dao.TestItemRepositoryCustomImpl.java

@Override
public List<TestItem> findTestItemWithInvestigated(String launchId) {
    Criteria internalIssues = new Criteria().andOperator(where(LAUNCH_REFERENCE).is(launchId),
            where(ISSUE_TYPE).ne(TestItemIssueType.TO_INVESTIGATE.name()),
            where(ISSUE_DESCRIPTION).exists(true));

    Criteria externalIssues = new Criteria().andOperator(where(LAUNCH_REFERENCE).is(launchId),
            where(ISSUE_TYPE).exists(true), where(ISSUE_TICKET).exists(true));

    Query query = query(new Criteria().orOperator(internalIssues, externalIssues));

    query.limit(HISTORY_LIMIT);//from w  w  w  . j  a v  a2 s  . c o  m
    query.fields().include("name");
    query.fields().include("launchRef");
    query.fields().include("issue");
    query.fields().include("status");
    query.fields().include(ID_REFERENCE);

    query.fields().include("start_time");

    return mongoTemplate.find(query, TestItem.class);
}

From source file:com.seajas.search.profiler.service.repository.RepositoryService.java

/**
 * Process a paged list of all resources within the repository.
 * /*from   w  w w  . j a v a 2 s.  c  om*/
 * @param collection
 * @param sourceId
 * @param taxonomyMatch
 * @param url
 * @param startDate
 * @param endDate
 * @param parameters
 * @param rangeStart
 * @param rangeEnd
 * @param processor
 * @return boolean
 */
public boolean processResources(final String collection, final Integer sourceId, final String taxonomyMatch,
        final String url, final Date startDate, final Date endDate, final Map<String, String> parameters,
        final Integer rangeStart, final Integer rangeEnd, final RepositoryProcessor processor) {
    Query query = createQuery(true, collection, sourceId, taxonomyMatch, startDate, endDate, url, parameters);

    query.fields().include("_id");
    query.fields().include("currentState");
    query.fields().include("element.hostname");

    // Determine the total number of document this affects

    final AtomicLong currentResult = new AtomicLong(0L);

    // Then skip to it and get going

    query.skip(rangeStart);

    if (rangeEnd != null)
        query.limit(rangeEnd - rangeStart);

    if (logger.isInfoEnabled())
        logger.info(String.format("Processing ranges %d to %s of (unknown) results through the given processor",
                rangeStart, rangeEnd != null ? rangeEnd.toString() : "end"));

    mongoTemplate.executeQuery(query, defaultCollection, new DocumentCallbackHandler() {
        @Override
        public void processDocument(final DBObject dbObject) throws MongoException, DataAccessException {
            CompositeState currentState = CompositeState.valueOf((String) dbObject.get("currentState"));

            if (!EnumSet.of(CompositeState.Content, CompositeState.CompletedDocument,
                    CompositeState.InitialDocument).contains(currentState)) {
                if (logger.isDebugEnabled()) {
                    ObjectId id = (ObjectId) dbObject.get("_id");

                    logger.debug("Skipping over element with ID '" + id + "' and current state '" + currentState
                            + "'");
                }

                return;
            }

            ObjectId id = (ObjectId) dbObject.get("_id");
            String hostname = (String) ((BasicDBObject) dbObject.get("element")).get("hostname");

            if (logger.isInfoEnabled())
                logger.info("Processing re-indexing entry " + currentResult.getAndIncrement()
                        + " / (unknown) with ID '" + id + "' and hostname '" + hostname + "'");

            processor.process(id, hostname);
        }
    });

    return true;
}

From source file:com.traffitruck.service.MongoDAO.java

public List<Truck> getNonApprovedTrucks() {
    Query findNonApprovedTrucks = new Query()
            .addCriteria(Criteria.where("registrationStatus").is(TruckRegistrationStatus.REGISTERED));
    findNonApprovedTrucks.fields().exclude("vehicleLicensePhoto");
    findNonApprovedTrucks.fields().exclude("truckPhoto");
    findNonApprovedTrucks.with(new Sort("creationDate"));
    return mongoTemplate.find(findNonApprovedTrucks, Truck.class);
}

From source file:com.traffitruck.service.MongoDAO.java

public List<Truck> getMyApprovedTrucksId(String username) {
    Query findByUsername = new Query().addCriteria(Criteria.where("username").is(username));
    findByUsername.addCriteria(Criteria.where("registrationStatus").is(TruckRegistrationStatus.APPROVED));
    findByUsername.fields().include("id");
    findByUsername.fields().include("licensePlateNumber");
    findByUsername.with(new Sort("creationDate"));
    return mongoTemplate.find(findByUsername, Truck.class);
}

From source file:com.traffitruck.service.MongoDAO.java

public List<Truck> getTrucksForUserAndRegistration(String username,
        TruckRegistrationStatus registrationStatus) {
    Query query = new Query().addCriteria(Criteria.where("username").is(username));
    if (registrationStatus != null) {
        query.addCriteria(Criteria.where("registrationStatus").is(registrationStatus));
    }/*from   w w  w  .  java2  s  .  c o m*/
    query.fields().exclude("vehicleLicensePhoto");
    query.fields().exclude("truckPhoto");
    query.with(new Sort("creationDate"));
    return mongoTemplate.find(query, Truck.class);
}

From source file:com.epam.ta.reportportal.database.dao.TestItemRepositoryCustomImpl.java

@Override
public List<TestItem> loadItemsHistory(List<TestItem> items, List<String> launchesIds, List<String> parentIds) {
    if (items == null || launchesIds == null) {
        return new ArrayList<>();
    }/* ww w. j a v a  2s.  c o m*/
    Query query = query(getHistoryLaunchPathCriteria(launchesIds, items.get(0)))
            .addCriteria(getItemsHistoryCriteria(items));

    if (parentIds != null) {
        query.addCriteria(where("parent").in(parentIds));
    }
    query.limit(HISTORY_LIMIT);
    query.fields().include("name");
    query.fields().include("start_time");
    query.fields().include("end_time");
    /* For UI: links level detector */
    query.fields().include("has_childs");
    query.fields().include("launchRef");
    query.fields().include("issue");
    query.fields().include("status");
    query.fields().include("tags");
    query.fields().include("itemDescription");
    query.fields().include("statistics");
    query.fields().include("type");
    query.fields().include(ID_REFERENCE);
    return mongoTemplate.find(query, TestItem.class);
}

From source file:net.cit.tetrad.dao.management.impl.SubDaoImpl.java

public Object getIncludeOptionResult(CommonDto dto) {
    dhtmlxLogger.info("start getIncludeOptionResult");
    String dsname = dto.getDsname();

    Query query = new Query(
            Criteria.where(SERVERSTATUS_REGTIME).gt(dto.getSearch_sdate()).lte(dto.getSearch_edate()));
    query.addCriteria(Criteria.where(COL_DEVICECODE).is(dto.getDeviceCode()));
    if (dto.getCollname().equals(COLL_DBSTATUS))
        query.addCriteria(Criteria.where(DBSTATUS_DBNAME).is(dto.getDbname()));
    query.sort().on(SERVERSTATUS_REGTIME, Order.ASCENDING);
    query.fields().include("_id").include(SERVERSTATUS_REGTIME).include(dsname).include(COL_DEVICECODE);

    List<Map<String, Object>> result = new ArrayList<Map<String, Object>>();

    long start = System.currentTimeMillis();
    List<Object> serverStatusList = monadService.getListWithStrCollName(query, Map.class, dto.getCollname());
    double old = -1;
    for (Object obj : serverStatusList) {
        Map<String, Object> setInfo = new HashMap<String, Object>();
        Map<String, Object> statusInfo = (Map<String, Object>) obj;
        double recent = CriticalHelper.convertToDouble(statusInfo.get(dsname));
        String regtime = (String) statusInfo.get(SERVERSTATUS_REGTIME);
        int deviceCode = (Integer) statusInfo.get(COL_DEVICECODE);
        if (old == -1) {
            setInfo.put(dsname, 0);/*  ww  w. j av  a  2 s. c o m*/
        } else {
            setInfo.put(dsname, recent - old);
        }
        setInfo.put(COL_DEVICECODE, deviceCode);
        setInfo.put(SERVERSTATUS_REGTIME, regtime);
        old = recent;
        result.add(setInfo);
    }
    long end = System.currentTimeMillis();
    dhtmlxLogger.info("    getDiff Data : " + (end - start));
    String collname = "temp_" + TimestampUtil.readTimestamp();
    start = System.currentTimeMillis();
    monadService.insert(result, collname);
    end = System.currentTimeMillis();
    dhtmlxLogger.info("    insertDiff Data : " + (end - start));
    dto.setCollname(collname);
    Object obj = getCurrentResult(dto);

    //   
    dhtmlxLogger.info("drop temp collection!");
    monadService.dropCollection(collname);
    dhtmlxLogger.info("end getIncludeOptionResult");
    return obj;
}

From source file:org.opentestsystem.delivery.testreg.persistence.EligibleStudentRepositoryImpl.java

@Override
public List<EligibleStudent> findByInstitutionIdAndAssessmentId(final String institutionEntityMongoId,
        final String assessmentId) {
    Query query = new Query();
    query.addCriteria(where("student.institutionEntityMongoId").is(institutionEntityMongoId)
            .and("assessments._id").is(new ObjectId(assessmentId)));
    query.fields().exclude("assessments");
    return mongoOperations.find(query, EligibleStudent.class);

}