List of usage examples for org.springframework.data.mongodb.core FindAndModifyOptions returnNew
boolean returnNew
To view the source code for org.springframework.data.mongodb.core FindAndModifyOptions returnNew.
Click Source Link
From source file:com.pubkit.platform.persistence.impl.SequenceImpl.java
private long increaseCounter(String className) { Query query = new Query(Criteria.where("_id").is(className)); Update update = new Update().inc("sequence", 1); FindAndModifyOptions options = FindAndModifyOptions.options(); Sequence sequence = mongoTemplate.findAndModify(query, update, options.returnNew(true), Sequence.class); if (sequence == null) { sequence = new Sequence(); sequence.setId(className);//w w w . j a va 2 s . c o m sequence.setSequence(1000l); mongoTemplate.save(sequence); } return sequence.getSequence(); }
From source file:eu.trentorise.game.managers.DBPlayerManager.java
private StatePersistence persist(String gameId, String playerId, List<GenericObjectPersistence> concepts, CustomData customData, Map<String, Object> metadata) { if (StringUtils.isBlank(gameId) || StringUtils.isBlank(playerId)) { throw new IllegalArgumentException("field gameId and playerId of PlayerState MUST be set"); }/*from w ww . j a v a2 s . co m*/ Criteria criteria = new Criteria(); criteria = criteria.and("gameId").is(gameId).and("playerId").is(playerId); Query query = new Query(criteria); Update update = new Update(); if (concepts != null) { update.set("concepts", concepts); } if (customData != null) { update.set("customData", customData); } if (metadata != null) { update.set("metadata", metadata); } FindAndModifyOptions options = new FindAndModifyOptions(); options.upsert(true); options.returnNew(true); return mongoTemplate.findAndModify(query, update, options, StatePersistence.class); }
From source file:piecework.repository.concrete.ProcessInstanceRepositoryCustomImpl.java
@Override public ProcessInstance update(String id, Operation operation, String applicationStatus, String applicationStatusExplanation, String processStatus, Set<Task> tasks) { Query query = new Query(where("_id").is(id)); Update update = new Update(); if (applicationStatus != null) update.set("applicationStatus", applicationStatus); if (applicationStatusExplanation != null) update.set("applicationStatusExplanation", applicationStatusExplanation); if (processStatus != null) update.set("processStatus", processStatus); if (tasks != null) { for (Task task : tasks) { update.set("tasks." + task.getTaskInstanceId(), task); }/* www . ja v a 2 s . com*/ } update.push("operations", operation); update.set("lastModifiedTime", new Date()); FindAndModifyOptions options = new FindAndModifyOptions(); options.returnNew(true); return mongoOperations.findAndModify(query, update, options, ProcessInstance.class); }
From source file:piecework.repository.concrete.ProcessInstanceRepositoryCustomImpl.java
@Override public boolean update(String id, Task task) { Query query = new Query(); query.addCriteria(where("processInstanceId").is(id)); Update update = new Update(); update.set("tasks." + task.getTaskInstanceId(), task).set("lastModifiedTime", new Date()); FindAndModifyOptions options = new FindAndModifyOptions(); options.returnNew(true); ProcessInstance stored = mongoOperations.findAndModify(query, update, options, ProcessInstance.class); return true;//ww w .jav a 2 s. co m }