private void handleCountThings(final CountThings command) { final Criteria criteria = parseCriteriaWithAuthorization(command); final QueryBuilder queryBuilder = queryBuilderFactory.newUnlimitedBuilder(criteria); getSender().tell(queryBuilder.build(), getSelf()); }
private static Bson getSortOptionsAsBson(final Iterable<SortOption> sortOptions) { final List<Bson> sortings = new ArrayList<>(); for (final SortOption sortOption : sortOptions) { final SortDirection sortDirection = sortOption.getSortDirection(); final SortFieldExpression sortExpression = sortOption.getSortExpression(); final List<Bson> currentSorts = GetSortBsonVisitor.apply(sortExpression, sortDirection); sortings.addAll(currentSorts); } return Sorts.orderBy(sortings); }
private void handleSudoCountThings(final SudoCountThings command) { final Criteria filterCriteria = queryFilterCriteriaFactory.filterCriteria( command.getFilter().orElse(null), command.getDittoHeaders()); final QueryBuilder queryBuilder = queryBuilderFactory.newUnlimitedBuilder(filterCriteria); getSender().tell(queryBuilder.build(), getSelf()); }
private SortOption mapSort(final SortOptionEntry entry) { return new SortOption(determineSortField(entry.getPropertyPath()), determineSortDirection(entry.getOrder())); }
private void handleQueryThings(final QueryThings command) { final Criteria criteria = parseCriteriaWithAuthorization(command); final DittoHeaders dittoHeaders = command.getDittoHeaders(); final QueryBuilder queryBuilder = queryBuilderFactory.newBuilder(criteria); command.getOptions() .map(optionStrings -> String.join(",", optionStrings)) .ifPresent(options -> setOptions(options, queryBuilder, dittoHeaders)); getSender().tell(queryBuilder.build(), getSelf()); }
private static BsonDocument getMongoFilter(final Query query) { return org.eclipse.ditto.services.utils.persistence.mongo.BsonUtil.toBsonDocument( CreateBsonVisitor.apply(query.getCriteria())); }
@Override public void visit(final org.eclipse.ditto.model.thingsearch.SortOption sortOption) { checkNotNull(sortOption, "sort option"); final List<SortOption> sortOptions = sortOption.getEntries() .stream() .map(this::mapSort) .collect(Collectors.toList()); queryBuilder.sort(sortOptions); }
private void handleSudoCountThings(final SudoCountThings command) { final Criteria filterCriteria = queryFilterCriteriaFactory.filterCriteria( command.getFilter().orElse(null), command.getDittoHeaders()); final QueryBuilder queryBuilder = queryBuilderFactory.newUnlimitedBuilder(filterCriteria); getSender().tell(queryBuilder.build(), getSelf()); }
private SortOption mapSort(final SortOptionEntry entry) { return new SortOption(determineSortField(entry.getPropertyPath()), determineSortDirection(entry.getOrder())); }
private static Bson getSortOptionsAsBson(final Iterable<SortOption> sortOptions) { final List<Bson> sortings = new ArrayList<>(); for (final SortOption sortOption : sortOptions) { final SortDirection sortDirection = sortOption.getSortDirection(); final SortFieldExpression sortExpression = sortOption.getSortExpression(); final List<Bson> currentSorts = GetSortBsonVisitor.apply(sortExpression, sortDirection); sortings.addAll(currentSorts); } return Sorts.orderBy(sortings); }
private void handleCountThings(final CountThings command) { final Criteria criteria = parseCriteriaWithAuthorization(command); final QueryBuilder queryBuilder = queryBuilderFactory.newUnlimitedBuilder(criteria); getSender().tell(queryBuilder.build(), getSelf()); }
private void handleQueryThings(final QueryThings command) { final Criteria criteria = parseCriteriaWithAuthorization(command); final DittoHeaders dittoHeaders = command.getDittoHeaders(); final QueryBuilder queryBuilder = queryBuilderFactory.newBuilder(criteria); command.getOptions() .map(optionStrings -> String.join(",", optionStrings)) .ifPresent(options -> setOptions(options, queryBuilder, dittoHeaders)); getSender().tell(queryBuilder.build(), getSelf()); }
private static BsonDocument getMongoFilter(final Query query) { return org.eclipse.ditto.services.utils.persistence.mongo.BsonUtil.toBsonDocument( CreateBsonVisitor.apply(query.getCriteria())); }
@Override public void visit(final org.eclipse.ditto.model.thingsearch.SortOption sortOption) { checkNotNull(sortOption, "sort option"); final List<SortOption> sortOptions = sortOption.getEntries() .stream() .map(this::mapSort) .collect(Collectors.toList()); queryBuilder.sort(sortOptions); }
private SortOption mapSort(final SortOptionEntry entry) { return new SortOption(determineSortField(entry.getPropertyPath()), determineSortDirection(entry.getOrder())); }
/** * Gets the SortOptions as {@link Bson}. * * @return the Bson */ public Bson getSortOptionsAsBson() { final List<Bson> sorts = new ArrayList<>(); for (final SortOption sortOption : sortOptions) { final SortDirection sortDirection = sortOption.getSortDirection(); final SortFieldExpression sortExpression = sortOption.getSortExpression(); final List<Bson> currentSorts = GetSortBsonVisitor.apply(sortExpression, sortDirection); sorts.addAll(currentSorts); } return Sorts.orderBy(sorts); }
private SortOption mapSort(final SortOptionEntry entry) { return new SortOption(determineSortField(entry.getPropertyPath()), determineSortDirection(entry.getOrder())); }
/** * Gets the SortOptions as {@link Bson}. * * @return the Bson */ public Bson getSortOptionsAsBson() { final List<Bson> sorts = new ArrayList<>(); for (final SortOption sortOption : sortOptions) { final SortDirection sortDirection = sortOption.getSortDirection(); final SortFieldExpression sortExpression = sortOption.getSortExpression(); final List<Bson> currentSorts = GetSortBsonVisitor.apply(sortExpression, sortDirection); sorts.addAll(currentSorts); } return Sorts.orderBy(sorts); }