private SortFieldExpression determineSortField(final CharSequence key) { final String name = key.toString().replaceFirst("/", ""); return fieldExpressionFactory.sortBy(name); }
@Override public void visit(final SingleComparisonNode node) { checkNotNull(node, "single comparison node"); final FilterFieldExpression field = fieldExprFactory.filterBy(node.getComparisonProperty()); final SingleComparisonNode.Type type = node.getComparisonType(); final Object value = node.getComparisonValue(); final BiFunction<CriteriaFactory, Object, Predicate> predicateFactory = SINGLE_COMPARISON_NODE_MAPPING.get(type); if (predicateFactory == null) { throwUnknownType(type); } final Predicate predicate = predicateFactory.apply(criteriaFactory, value); criteria.add(criteriaFactory.fieldCriteria(field, predicate)); }
@Override public void visit(final ExistsNode node) { checkNotNull(node, "exists node"); final ExistsFieldExpression field = fieldExprFactory.existsBy(node.getProperty()); criteria.add(criteriaFactory.existsCriteria(field)); }
@Override public void visit(final MultiComparisonNode node) { checkNotNull(node, "multi comparison node"); final FilterFieldExpression field = fieldExprFactory.filterBy(node.getComparisonProperty()); final MultiComparisonNode.Type type = node.getComparisonType(); final List<Object> values = node.getComparisonValue(); if (type == MultiComparisonNode.Type.IN) { criteria.add(criteriaFactory.fieldCriteria(field, criteriaFactory.in(values))); } else { throwUnknownType(type); } }
private SortFieldExpression determineSortField(final CharSequence key) { final String name = key.toString().replaceFirst("/", ""); return fieldExpressionFactory.sortBy(name); }
private SortFieldExpression determineSortField(final JsonPointer key) { final String name = key.toString().replaceFirst("/", ""); return fieldExpressionFactory.sortBy(name); }
private SortFieldExpression determineSortField(final JsonPointer key) { final String name = key.toString().replaceFirst("/", ""); return fieldExpressionFactory.sortBy(name); }