Example usage for org.springframework.data.mongodb.core.query Criteria where

List of usage examples for org.springframework.data.mongodb.core.query Criteria where

Introduction

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

Prototype

public static Criteria where(String key) 

Source Link

Document

Static factory method to create a Criteria using the provided key

Usage

From source file:com.handu.open.dubbo.monitor.DubboMonitorService.java

/**
 * ??//w  w  w .  j a va  2  s  .c om
 *
 * @param dubboInvoke
 * @return
 */
public List<DubboInvoke> countDubboInvokeInfo(DubboInvoke dubboInvoke) {
    if (StringUtils.isEmpty(dubboInvoke.getService()) || StringUtils.isEmpty(dubboInvoke.getMethod())
            || StringUtils.isEmpty(dubboInvoke.getType())) {
        logger.error("???");
        throw new RuntimeException("???");
    }
    TypedAggregation<DubboInvoke> aggregation = Aggregation.newAggregation(DubboInvoke.class,
            Aggregation.match(Criteria.where("service").is(dubboInvoke.getService()).and("method")
                    .is(dubboInvoke.getMethod()).and("type").is(dubboInvoke.getType()).and("invokeDate")
                    .gte(dubboInvoke.getInvokeDateFrom()).lte(dubboInvoke.getInvokeDateTo())),
            Aggregation.group("service", "method").sum("success").as("success").sum("failure").as("failure")
                    .sum("elapsed").as("elapsed").max("maxElapsed").as("maxElapsed").min("maxConcurrent")
                    .as("maxConcurrent"));
    AggregationResults<DubboInvoke> result = mongoTemplate.aggregate(aggregation, "dubboInvoke",
            DubboInvoke.class);

    return result.getMappedResults();
}

From source file:it.smartcommunitylab.climb.domain.controller.ChildController.java

@RequestMapping(value = "/api/child/image/upload/png/{ownerId}/{objectId}", method = RequestMethod.POST)
public @ResponseBody String uploadImage(@RequestParam("file") MultipartFile file, @PathVariable String ownerId,
        @PathVariable String objectId, HttpServletRequest request) throws Exception {
    Criteria criteria = Criteria.where("objectId").is(objectId);
    Child child = storage.findOneData(Child.class, criteria, ownerId);
    if (child == null) {
        throw new EntityNotFoundException("child not found");
    }//from  w ww .  j  a  v  a2 s .c o m
    if (!validateAuthorization(ownerId, child.getInstituteId(), child.getSchoolId(), null, null,
            Const.AUTH_RES_Image, Const.AUTH_ACTION_ADD, request)) {
        throw new UnauthorizedException("Unauthorized Exception: token not valid");
    }
    String name = objectId + ".png";
    if (logger.isInfoEnabled()) {
        logger.info("uploadImage:" + name);
    }
    if (!file.isEmpty()) {
        BufferedOutputStream stream = new BufferedOutputStream(
                new FileOutputStream(new File(imageUploadDir + "/" + name)));
        FileCopyUtils.copy(file.getInputStream(), stream);
        stream.close();
    }
    return "{\"status\":\"OK\"}";
}

From source file:net.cit.tetrad.rrd.dao.DataAccessObjectForMongoImpl.java

public Critical readCriticalInfo(int deviceIdx, String dsName) {
    Critical critical = null;//from ww w  .  ja v  a2  s .  c om
    try {
        Query query = new Query(Criteria.where(ColumnConstent.DEVICECODE).is(deviceIdx));
        query.addCriteria(Criteria.where(ColumnConstent.CLRITICAL_TYPE).is(dsName));
        critical = (Critical) operations.findOne(query, Critical.class);
    } catch (Exception e) {
        e.printStackTrace();
    }
    return critical;
}

From source file:eu.cloudwave.wp5.feedbackhandler.repositories.ProcedureExecutionRepositoryImpl.java

/**
 * Helper method that adds time criteria to given match criteria
 * /*from  w ww  .  jav  a2s.  c o  m*/
 * @param criteria
 * @param timeRangeFrom
 * @param timeRangeTo
 * @return criteria
 */
private Criteria addTimeRangeCriteria(Criteria criteria, Long timeRangeFrom, Long timeRangeTo) {
    if (timeRangeFrom == null && timeRangeTo == null) {
        return criteria;
    } else if (timeRangeFrom != null && timeRangeTo == null) {
        // greater than or equal
        return criteria.and(TIME_FIELD).gte(timeRangeFrom);
    } else if (timeRangeFrom == null && timeRangeTo != null) {
        // less than or equal
        return criteria.and(TIME_FIELD).lte(timeRangeTo);
    } else {
        // We have to use the andOperator instead of and() due to limitations of the com.mongodb.BasicDBObject when it
        // comes to multiple criteria on the same field (TIME_VALUE)
        return criteria.andOperator(Criteria.where(TIME_FIELD).gte(timeRangeFrom),
                Criteria.where(TIME_FIELD).lte(timeRangeTo));
    }
}

From source file:com.gongpingjia.carplay.service.impl.UserServiceImpl.java

@Override
public ResponseDo loginUser(User user) throws ApiException {
    // ??, ????/*w  w  w  .  j a  va 2  s  . c o m*/
    //        if (!CommonUtil.isPhoneNumber(user.getPhone())) {
    //            LOG.warn("Invalid params, phone:{}", user.getPhone());
    //            return ResponseDo.buildFailureResponse("?");
    //        }

    // 
    User userData = userDao.findOne(Query.query(Criteria.where("phone").is(user.getPhone())));
    if (userData == null) {
        LOG.warn("Fail to find user, phone:{}", user.getPhone());
        return ResponseDo.buildFailureResponse("??");
    }

    if (userData.isDeleteFlag()) {
        LOG.warn("User is already forbid by administrator, userId:{}", userData.getUserId());
        return ResponseDo.buildFailureResponse("?");
    }

    if (!user.getPassword().equals(userData.getPassword())) {
        LOG.warn("User password is incorrect");
        return ResponseDo.buildFailureResponse("????");
    }

    Map<String, Object> map = userData.buildFullUserMap();
    User.appendAlbum(map, photoDao.getUserAlbum(userData.getUserId()));
    User.appendToken(map, refreshUserToken(userData.getUserId()));
    userData.appendCompute(map, photoDao.getUserAlbumCount(userData.getUserId()));

    return ResponseDo.buildSuccessResponse(map);
}

From source file:br.com.ezequieljuliano.argos.persistence.LoggerDAO.java

public List<LoggerOwnerCount> groupByOwnerUsingUserAndOccurrence(User user, Date startDate, Date endDate) {
    Criteria criteria = Criteria.where("entity._id").in(findEntityObjectIdsByUser(user)).andOperator(
            Criteria.where("occurrence").lte(endDate), Criteria.where("occurrence").gte(startDate));

    GroupByResults<LoggerOwnerCount> results = getMongoOperations().group(criteria, Logger.COLLECTION_NAME,
            GroupBy.key("owner").initialDocument("{ count: 0 }")
                    .reduceFunction("function(doc, prev) { prev.count += 1 }"),
            LoggerOwnerCount.class);

    List<LoggerOwnerCount> counts = new ArrayList<LoggerOwnerCount>();
    for (LoggerOwnerCount owner : results) {
        counts.add(owner);//  ww w .  j  a va  2  s .co  m
    }

    return counts;
}

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

public void addDevice(String username, String regid) {
    Query findByUsername = new Query().addCriteria(Criteria.where("username").is(username));
    Update update = new Update();
    update.addToSet("registrationIds", regid);
    mongoTemplate.upsert(findByUsername, update, LoadsUser.class);
}

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

public List<String> getExsitGlobalVariable(List<String> essentialGlobalVariableList) {
    Query query = new Query();
    query.addCriteria(Criteria.where("uid").in(essentialGlobalVariableList));
    query.fields().exclude("_id").include("uid");
    List<Object> globalList = monadService.getList(query, Global.class);

    List<String> exsitGlobalVariable = new ArrayList<String>();
    for (Object obj : globalList) {
        Global g = (Global) obj;// ww w. ja v a 2 s . com
        exsitGlobalVariable.add(g.getUid());
    }
    return exsitGlobalVariable;
}

From source file:com.handu.open.dubbo.monitor.DubboMonitorService.java

/**
 * ??/*from  w w w .  j a  va2 s.com*/
 *
 * @param dubboInvoke
 * @return
 */
public Map<String, List> countDubboInvokeTopTen(DubboInvoke dubboInvoke) {
    Map<String, List> result = Maps.newHashMap();

    Criteria criteris = Criteria.where("invokeDate").gte(dubboInvoke.getInvokeDateFrom())
            .lte(dubboInvoke.getInvokeDateTo()).and("type").is(dubboInvoke.getType());

    List<DubboInvoke> successList = Lists.newArrayList();
    GroupByResults<DubboInvoke> successResults = mongoTemplate.group(criteris, "dubboInvoke",
            GroupBy.key("service", "method").initialDocument("{ success: 0 }")
                    .reduceFunction("function(doc, prev) { prev.success += doc.success }"),
            DubboInvoke.class);
    for (DubboInvoke dubboInvoke1 : successResults) {
        successList.add(dubboInvoke1);
    }
    Collections.sort(successList, new Comparator<DubboInvoke>() {
        public int compare(DubboInvoke arg0, DubboInvoke arg1) {
            return (int) (arg1.getSuccess() - arg0.getSuccess());
        }
    });
    successList.subList(0, successList.size() > 19 ? 19 : successList.size());
    result.put("success", successList);

    List<DubboInvoke> failureList = Lists.newArrayList();
    GroupByResults<DubboInvoke> failureResults = mongoTemplate.group(criteris, "dubboInvoke",
            GroupBy.key("service", "method").initialDocument("{ failure: 0 }")
                    .reduceFunction("function(doc, prev) { prev.failure += doc.failure }"),
            DubboInvoke.class);
    for (DubboInvoke dubboInvoke1 : failureResults) {
        failureList.add(dubboInvoke1);
    }
    Collections.sort(failureList, new Comparator<DubboInvoke>() {
        public int compare(DubboInvoke arg0, DubboInvoke arg1) {
            return (int) (arg1.getFailure() - arg0.getFailure());
        }
    });
    failureList.subList(0, failureList.size() > 19 ? 19 : failureList.size());
    result.put("failure", failureList);
    return result;
}

From source file:com.mobileman.kuravis.core.services.event.impl.EventServiceImpl.java

/**
 * {@inheritDoc}/*  w  w  w .  j a  v a2  s  .c  o m*/
 * 
 * @see com.mobileman.kuravis.core.services.event.EventService#deleteAllReviewEvents(java.lang.String)
 */
@Override
public void deleteAllReviewEvents(String reviewId, String diseaseId, String treatmentId, String userId) {
    if (log.isDebugEnabled()) {
        log.debug("deleteAllReviewEvents()");
    }
    // delete ReviewEvents and VoteEvents
    WriteResult result = getCollection().remove(new BasicDBObject(ReviewEvent.REVIEW_ID, reviewId));
    if (log.isDebugEnabled()) {
        log.debug(getAffectedCount(result) + " events (ReviewEvent, VoteEvent) deteted.");
    }
    // delete all TreatmentEvents
    Query query = Query.query(Criteria.where(TreatmentEvent.USER_ID).is(userId).and(TreatmentEvent.DISEASE_ID)
            .is(diseaseId).and(TreatmentEvent.TREATMENT_ID).is(treatmentId));
    result = getCollection().remove(query.getQueryObject());
    if (log.isDebugEnabled()) {
        log.debug(getAffectedCount(result) + " events (TreatmentEvent) deteted.");
    }
}