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