001 002package com.commercetools.api.predicates.query.order; 003 004import java.util.function.Function; 005 006import com.commercetools.api.predicates.query.*; 007 008public class OrderSearchRequestQueryBuilderDsl { 009 public OrderSearchRequestQueryBuilderDsl() { 010 } 011 012 public static OrderSearchRequestQueryBuilderDsl of() { 013 return new OrderSearchRequestQueryBuilderDsl(); 014 } 015 016 public CombinationQueryPredicate<OrderSearchRequestQueryBuilderDsl> query( 017 Function<com.commercetools.api.predicates.query.order.OrderSearchQueryQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.order.OrderSearchQueryQueryBuilderDsl>> fn) { 018 return new CombinationQueryPredicate<>( 019 ContainerQueryPredicate.of() 020 .parent(ConstantQueryPredicate.of().constant("query")) 021 .inner(fn.apply(com.commercetools.api.predicates.query.order.OrderSearchQueryQueryBuilderDsl.of())), 022 OrderSearchRequestQueryBuilderDsl::of); 023 } 024 025 public CombinationQueryPredicate<OrderSearchRequestQueryBuilderDsl> sort( 026 Function<com.commercetools.api.predicates.query.order.OrderSearchSortingQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.order.OrderSearchSortingQueryBuilderDsl>> fn) { 027 return new CombinationQueryPredicate<>(ContainerQueryPredicate.of() 028 .parent(ConstantQueryPredicate.of().constant("sort")) 029 .inner(fn.apply(com.commercetools.api.predicates.query.order.OrderSearchSortingQueryBuilderDsl.of())), 030 OrderSearchRequestQueryBuilderDsl::of); 031 } 032 033 public CollectionPredicateBuilder<OrderSearchRequestQueryBuilderDsl> sort() { 034 return new CollectionPredicateBuilder<>(BinaryQueryPredicate.of().left(new ConstantQueryPredicate("sort")), 035 p -> new CombinationQueryPredicate<>(p, OrderSearchRequestQueryBuilderDsl::of)); 036 } 037 038 public LongComparisonPredicateBuilder<OrderSearchRequestQueryBuilderDsl> limit() { 039 return new LongComparisonPredicateBuilder<>(BinaryQueryPredicate.of().left(new ConstantQueryPredicate("limit")), 040 p -> new CombinationQueryPredicate<>(p, OrderSearchRequestQueryBuilderDsl::of)); 041 } 042 043 public LongComparisonPredicateBuilder<OrderSearchRequestQueryBuilderDsl> offset() { 044 return new LongComparisonPredicateBuilder<>( 045 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("offset")), 046 p -> new CombinationQueryPredicate<>(p, OrderSearchRequestQueryBuilderDsl::of)); 047 } 048 049}