@Override public <T> List<T> find(Query query, Class<T> entityClass) { return find(query, entityClass, operations.determineCollectionName(entityClass)); }
protected List<T> find(Query query) { return mongoTemplate.find(query, getDocumentClass()); }
@Override public List<HmilyTransaction> listAllByDelay(final Date date) { Query query = new Query(); query.addCriteria(Criteria.where("lastTime").lt(date)); final List<MongoAdapter> mongoBeans = template.find(query, MongoAdapter.class, collectionName); if (CollectionUtils.isNotEmpty(mongoBeans)) { return mongoBeans.stream().map(this::buildByCache).collect(Collectors.toList()); } return Collections.emptyList(); }
/** * Retrieve and remove all documents matching the given {@code query} by calling {@link #find(Query, Class, String)} * and {@link #remove(Query, Class, String)}, whereas the {@link Query} for {@link #remove(Query, Class, String)} is * constructed out of the find result. * * @param collectionName * @param query * @param entityClass * @return */ protected <T> List<T> doFindAndDelete(String collectionName, Query query, Class<T> entityClass) { List<T> result = find(query, entityClass, collectionName); if (!CollectionUtils.isEmpty(result)) { Query byIdInQuery = operations.getByIdInQuery(result); remove(byIdInQuery, entityClass, collectionName); } return result; }
@Nullable @Override public <T> T findOne(Query query, Class<T> entityClass, String collectionName) { Assert.notNull(query, "Query must not be null!"); Assert.notNull(entityClass, "EntityClass must not be null!"); Assert.notNull(collectionName, "CollectionName must not be null!"); if (ObjectUtils.isEmpty(query.getSortObject()) && !query.getCollation().isPresent()) { return doFindOne(collectionName, query.getQueryObject(), query.getFieldsObject(), entityClass); } else { query.limit(1); List<T> results = find(query, entityClass, collectionName); return results.isEmpty() ? null : results.get(0); } }
@Override public List<MythTransaction> listAllByDelay(final Date date) { Query query = new Query(); query.addCriteria(Criteria.where("lastTime").lt(date)) .addCriteria(Criteria.where("status").is(MythStatusEnum.BEGIN.getCode())); final List<MongoAdapter> mongoBeans = template.find(query, MongoAdapter.class, collectionName); if (CollectionUtils.isNotEmpty(mongoBeans)) { return mongoBeans.stream().map(this::buildByCache).collect(Collectors.toList()); } return Collections.emptyList(); }
@Override public List<TransactionRecover> listAll() { Query query = new Query(); query.addCriteria(new Criteria("status") .in(TransactionStatusEnum.BEGIN.getCode(), TransactionStatusEnum.FAILURE.getCode(), TransactionStatusEnum.ROLLBACK.getCode())); final List<MongoAdapter> mongoAdapterList = template.find(query, MongoAdapter.class, collectionName); if (CollectionUtils.isNotEmpty(mongoAdapterList)) { return mongoAdapterList.stream().map(this::buildByCache).collect(Collectors.toList()); } return null; }
@Override public List<TransactionRecover> listAllByDelay(final Date date) { Query query = new Query(); query.addCriteria(new Criteria("status") .in(TransactionStatusEnum.BEGIN.getCode(), TransactionStatusEnum.FAILURE.getCode(), TransactionStatusEnum.ROLLBACK.getCode())) .addCriteria(Criteria.where("lastTime").lt(date)); final List<MongoAdapter> mongoBeans = template.find(query, MongoAdapter.class, collectionName); if (CollectionUtils.isNotEmpty(mongoBeans)) { return mongoBeans.stream().map(this::buildByCache).collect(Collectors.toList()); } return null; }
baseQuery.skip(start).limit(pageSize); final List<MongoAdapter> mongoAdapters = mongoTemplate.find(baseQuery, MongoAdapter.class, mongoTableName); if (CollectionUtils.isNotEmpty(mongoAdapters)) { final List<LogVO> recoverVOS =
baseQuery.skip(start).limit(pageSize); final List<MongoAdapter> mongoAdapters = mongoTemplate.find(baseQuery, MongoAdapter.class, mongoTableName); if (CollectionUtils.isNotEmpty(mongoAdapters)) { final List<HmilyCompensationVO> recoverVOS =
baseQuery.skip(start).limit(pageSize); final List<MongoAdapter> mongoAdapters = mongoTemplate.find(baseQuery, MongoAdapter.class, mongoTableName); if (CollectionUtils.isNotEmpty(mongoAdapters)) { final List<TransactionRecoverVO> recoverVOS =
.include(EP_USE_RAW_SCHEMA); List<EndpointProfileDto> endpointProfileDtoList = convertDtoList( mongoTemplate.find(query, getDocumentClass()));
@Override public Collection<Message<?>> getMessagesForGroup(Object groupId) { Assert.notNull(groupId, "'groupId' must not be null"); Query query = groupOrderQuery(groupId); List<MessageDocument> documents = this.mongoTemplate.find(query, MessageDocument.class, this.collectionName); return documents.stream() .map(MessageDocument::getMessage) .collect(Collectors.toList()); }
@Override public Collection<Message<?>> getMessagesForGroup(Object groupId) { Assert.notNull(groupId, "'groupId' must not be null"); Query query = whereGroupIdOrder(groupId); List<MessageWrapper> messageWrappers = this.template.find(query, MessageWrapper.class, this.collectionName); return messageWrappers.stream() .map(MessageWrapper::getMessage) .collect(Collectors.toList()); }
public List<Author> findAuthorList() { Query query = new Query(); return this.mongoTemplate.find(query, Author.class); } }
@Override public <T> List<T> find(Query query, Class<T> entityClass) { return find(query, entityClass, operations.determineCollectionName(entityClass)); }
@Override public List<PersonEntity> findByParams(Map params) { Query query = new Query(); Iterator<String> iterator = params.keySet().iterator(); while (iterator.hasNext()) { String key = iterator.next(); query.addCriteria(Criteria.where(key).lt(params.get(key))); } List<PersonEntity> list = mongoTemplate.find(query, PersonEntity.class); return list; }
@Nullable @Override public <T> T findOne(Query query, Class<T> entityClass, String collectionName) { Assert.notNull(query, "Query must not be null!"); Assert.notNull(entityClass, "EntityClass must not be null!"); Assert.notNull(collectionName, "CollectionName must not be null!"); if (ObjectUtils.isEmpty(query.getSortObject()) && !query.getCollation().isPresent()) { return doFindOne(collectionName, query.getQueryObject(), query.getFieldsObject(), entityClass); } else { query.limit(1); List<T> results = find(query, entityClass, collectionName); return results.isEmpty() ? null : results.get(0); } }
@Test @MongoDbAvailable public void testWithDefaultMongoFactory() throws Exception { ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("outbound-adapter-config.xml", this.getClass()); MessageChannel channel = context.getBean("simpleAdapter", MessageChannel.class); Message<Person> message = new GenericMessage<MongoDbAvailableTests.Person>(this.createPerson("Bob")); channel.send(message); MongoDbFactory mongoDbFactory = this.prepareMongoFactory(); MongoTemplate template = new MongoTemplate(mongoDbFactory); assertNotNull(template.find(new BasicQuery("{'name' : 'Bob'}"), Person.class, "data")); context.close(); }
@Test @MongoDbAvailable public void testWithMongoConverter() throws Exception { ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("outbound-adapter-config.xml", this.getClass()); MessageChannel channel = context.getBean("simpleAdapterWithConverter", MessageChannel.class); Message<Person> message = new GenericMessage<MongoDbAvailableTests.Person>(this.createPerson("Bob")); channel.send(message); MongoDbFactory mongoDbFactory = this.prepareMongoFactory(); MongoTemplate template = new MongoTemplate(mongoDbFactory); assertNotNull(template.find(new BasicQuery("{'name' : 'Bob'}"), Person.class, "data")); context.close(); }