@Override public <U> MongoIterable<U> map(final Function<GridFSFile, U> mapper) { return underlying.map(mapper); }
@Override public Partnership getPartnershipByName (final String sName) { return m_aPartnerships.find (new Document (NAME_KEY, sName)) .map (MongoDBPartnershipFactory::_toPartnership) .first (); }
public List<ProjectDetails> findByOwner(UserId owner) { ArrayList<ProjectDetails> result = new ArrayList<>(); collection.find(withOwner(owner)) .map(d -> objectMapper.convertValue(d, ProjectDetails.class)) .into(result); return result; }
public List<V> findAll() { return collection() .find() .map(this::decode) .into(new ArrayList<>()); }
@Override public List<SagaCompositeId> whoNeedsToWake(){ final ArrayList<SagaCompositeId> result = new ArrayList<>(); awake.find(Filters.lt("when", DateTime.now().toDate())).limit(1000).map(document -> { try { return new SagaCompositeId(Class.forName(document.getString("clz")),document.getString("sid")); } catch (ClassNotFoundException e) { throw new RuntimeException(); } }).into(result); return result; }
public Optional<V> findOne(final K key) { return ofNullable(collection() .find(byId(key)) .map(this::decode) .first()); }
@Override public ICommonsList <Partnership> getAllPartnerships () { return m_aPartnerships.find ().map (MongoDBPartnershipFactory::_toPartnership).into (new CommonsArrayList <> ()); }
public Set<String> getActiveSessions() { final Set<String> result = new LinkedHashSet<>(); sessions().find().projection(new Document("_id", 1)) .map(d -> d.getString("_id")) .forEach((Consumer<String>) result::add); return result; }
@Override public List<JobInfo> findRunningWithoutUpdateSince(final OffsetDateTime timeOffset) { return collection() .find(new Document() .append(JobStructure.STOPPED.key(), singletonMap("$exists", false)) .append(JobStructure.LAST_UPDATED.key(), singletonMap("$lt", from(timeOffset.toInstant())))) .maxTime(mongoProperties.getDefaultReadTimeout(), TimeUnit.MILLISECONDS) .map(this::decode) .into(new ArrayList<>()); }
public List<V> findAll(int skip, int limit) { return collection() .find() .skip(skip) .limit(limit) .map(this::decode) .into(new ArrayList<>()); }
@Override public List<JobInfo> findRunningWithoutUpdateSince(final OffsetDateTime timeOffset) { return collection() .find(new Document() .append(JobStructure.STOPPED.key(), singletonMap("$exists", false)) .append(JobStructure.LAST_UPDATED.key(), singletonMap("$lt", from(timeOffset.toInstant())))) .maxTime(mongoProperties.getDefaultReadTimeout(), TimeUnit.MILLISECONDS) .map(this::decode) .into(new ArrayList<>()); }
@Override public List<JobInfo> findAllJobInfoWithoutMessages() { return collection() .find() .maxTime(mongoProperties.getDefaultReadTimeout(), TimeUnit.MILLISECONDS) .projection(new Document(getJobInfoWithoutMessagesProjection())) .map(this::decode) .into(new ArrayList<>()); }
@Override public List<JobInfo> findAllJobInfoWithoutMessages() { return collection() .find() .maxTime(mongoProperties.getDefaultReadTimeout(), TimeUnit.MILLISECONDS) .projection(new Document(getJobInfoWithoutMessagesProjection())) .map(this::decode) .into(new ArrayList<>()); }
@Override public List<JobInfo> findLatestJobsDistinct() { final List<String> allJobIds = findAllJobIdsDistinct(); return collection() .find(Filters.in(ID, allJobIds)) .maxTime(mongoProperties.getDefaultReadTimeout(), TimeUnit.MILLISECONDS) .map(this::decode) .into(new ArrayList<>()); }
public List<UserId> findByUserIdContainingIgnoreCase(String match, int limit) { FindIterable<Document> documents = collection .find(byUserIdContainsIgnoreCase(match)) .projection(withUserId()) .limit(limit); List<UserId> result = new ArrayList<>(limit); documents.map(d -> converter.getUserId(d)).into(result); return result; }
@Override public List<JobInfo> findByType(final String type) { return collection() .find(byType(type)) .maxTime(mongoProperties.getDefaultReadTimeout(), TimeUnit.MILLISECONDS) .sort(orderByStarted(DESCENDING)) .map(this::decode) .into(new ArrayList<>()); }
@Override public List<JobInfo> findByType(final String type) { return collection() .find(byType(type)) .maxTime(mongoProperties.getDefaultReadTimeout(), TimeUnit.MILLISECONDS) .sort(orderByStarted(DESCENDING)) .map(this::decode) .into(new ArrayList<>()); }
@Override public List<JobInfo> findLatest(final int maxCount) { return collection() .find() .maxTime(mongoProperties.getDefaultReadTimeout(), TimeUnit.MILLISECONDS) .sort(orderByStarted(DESCENDING)) .limit(maxCount) .map(this::decode) .into(new ArrayList<>()); }
@Override public List<JobInfo> findLatest(final int maxCount) { return collection() .find() .maxTime(mongoProperties.getDefaultReadTimeout(), TimeUnit.MILLISECONDS) .sort(orderByStarted(DESCENDING)) .limit(maxCount) .map(this::decode) .into(new ArrayList<>()); }
@Override public List<JobInfo> findLatestBy(final String type, final int maxCount) { return collection() .find(byType(type)) .maxTime(mongoProperties.getDefaultReadTimeout(), TimeUnit.MILLISECONDS) .sort(orderByStarted(DESCENDING)) .limit(maxCount) .map(this::decode) .into(new ArrayList<>()); }