List of usage examples for org.springframework.data.mongodb.core.mapreduce GroupBy key
public static GroupBy key(String... keys)
From source file:br.com.ezequieljuliano.argos.persistence.LoggerDAO.java
public List<LoggerMarkerCount> groupByMarkerUsingUserAndOccurrence(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<LoggerMarkerCount> results = getMongoOperations().group(criteria, Logger.COLLECTION_NAME, GroupBy.key("marker").initialDocument("{ count: 0 }") .reduceFunction("function(doc, prev) { prev.count += 1 }"), LoggerMarkerCount.class); List<LoggerMarkerCount> counts = new ArrayList<LoggerMarkerCount>(); for (LoggerMarkerCount marker : results) { counts.add(marker);//from w w w. ja v a2 s . c o m } return counts; }
From source file:br.com.ezequieljuliano.argos.persistence.LoggerDAO.java
public List<LoggerLevelCount> groupByLevelUsingUserAndOccurrence(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<LoggerLevelCount> results = getMongoOperations().group(criteria, Logger.COLLECTION_NAME, GroupBy.key("level").initialDocument("{ count: 0 }") .reduceFunction("function(doc, prev) { prev.count += 1 }"), LoggerLevelCount.class); List<LoggerLevelCount> counts = new ArrayList<LoggerLevelCount>(); for (LoggerLevelCount level : results) { counts.add(level);/*from w w w .jav a 2 s . co m*/ } return counts; }
From source file:br.com.ezequieljuliano.argos.persistence.LoggerDAO.java
public List<LoggerEntityCount> groupByEntityUsingUserAndOccurrence(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<LoggerEntityCount> results = getMongoOperations().group(criteria, Logger.COLLECTION_NAME, GroupBy.key("entity").initialDocument("{ count: 0 }") .reduceFunction("function(doc, prev) { prev.count += 1 }"), LoggerEntityCount.class); List<LoggerEntityCount> counts = new ArrayList<LoggerEntityCount>(); for (LoggerEntityCount entity : results) { counts.add(entity);/* w w w . j av a 2 s . c o m*/ } return counts; }
From source file:br.com.ezequieljuliano.argos.persistence.LoggerDAO.java
public List<LoggerHostCount> groupByHostUsingUserAndOccurrence(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<LoggerHostCount> results = getMongoOperations().group(criteria, Logger.COLLECTION_NAME, GroupBy.key("host").initialDocument("{ count: 0 }") .reduceFunction("function(doc, prev) { prev.count += 1 }"), LoggerHostCount.class); List<LoggerHostCount> counts = new ArrayList<LoggerHostCount>(); for (LoggerHostCount host : results) { counts.add(host);//from w w w. j a v a 2 s . c o m } return counts; }
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);//from w w w.j a va 2 s . c om } return counts; }
From source file:br.com.ezequieljuliano.argos.persistence.LoggerDAO.java
public List<LoggerOccurrenceCount> groupByOccurrenceUsingUserAndOccurrence(User user, Date startDate, Date endDate) {/* w ww. jav a 2 s .c o m*/ Criteria criteria = Criteria.where("entity._id").in(findEntityObjectIdsByUser(user)).andOperator( Criteria.where("occurrence").lte(endDate), Criteria.where("occurrence").gte(startDate)); GroupByResults<LoggerOccurrenceCount> results = getMongoOperations().group(criteria, Logger.COLLECTION_NAME, GroupBy.key("occurrence").initialDocument("{ count: 0 }") .reduceFunction("function(doc, prev) { prev.count += 1 }"), LoggerOccurrenceCount.class); List<LoggerOccurrenceCount> counts = new ArrayList<LoggerOccurrenceCount>(); for (LoggerOccurrenceCount occurrence : results) { counts.add(occurrence); } return counts; }