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