001 002package com.commercetools.api.predicates.query.quote; 003 004import java.util.function.Function; 005 006import com.commercetools.api.predicates.query.*; 007 008public class QuoteDraftQueryBuilderDsl { 009 public QuoteDraftQueryBuilderDsl() { 010 } 011 012 public static QuoteDraftQueryBuilderDsl of() { 013 return new QuoteDraftQueryBuilderDsl(); 014 } 015 016 public StringComparisonPredicateBuilder<QuoteDraftQueryBuilderDsl> key() { 017 return new StringComparisonPredicateBuilder<>(BinaryQueryPredicate.of().left(new ConstantQueryPredicate("key")), 018 p -> new CombinationQueryPredicate<>(p, QuoteDraftQueryBuilderDsl::of)); 019 } 020 021 public CombinationQueryPredicate<QuoteDraftQueryBuilderDsl> stagedQuote( 022 Function<com.commercetools.api.predicates.query.staged_quote.StagedQuoteResourceIdentifierQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.staged_quote.StagedQuoteResourceIdentifierQueryBuilderDsl>> fn) { 023 return new CombinationQueryPredicate<>(ContainerQueryPredicate.of() 024 .parent(ConstantQueryPredicate.of().constant("stagedQuote")) 025 .inner(fn.apply( 026 com.commercetools.api.predicates.query.staged_quote.StagedQuoteResourceIdentifierQueryBuilderDsl 027 .of())), 028 QuoteDraftQueryBuilderDsl::of); 029 } 030 031 public LongComparisonPredicateBuilder<QuoteDraftQueryBuilderDsl> stagedQuoteVersion() { 032 return new LongComparisonPredicateBuilder<>( 033 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("stagedQuoteVersion")), 034 p -> new CombinationQueryPredicate<>(p, QuoteDraftQueryBuilderDsl::of)); 035 } 036 037 public BooleanComparisonPredicateBuilder<QuoteDraftQueryBuilderDsl> stagedQuoteStateToSent() { 038 return new BooleanComparisonPredicateBuilder<>( 039 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("stagedQuoteStateToSent")), 040 p -> new CombinationQueryPredicate<>(p, QuoteDraftQueryBuilderDsl::of)); 041 } 042 043 public CombinationQueryPredicate<QuoteDraftQueryBuilderDsl> state( 044 Function<com.commercetools.api.predicates.query.state.StateReferenceQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.state.StateReferenceQueryBuilderDsl>> fn) { 045 return new CombinationQueryPredicate<>( 046 ContainerQueryPredicate.of() 047 .parent(ConstantQueryPredicate.of().constant("state")) 048 .inner(fn.apply(com.commercetools.api.predicates.query.state.StateReferenceQueryBuilderDsl.of())), 049 QuoteDraftQueryBuilderDsl::of); 050 } 051 052 public CombinationQueryPredicate<QuoteDraftQueryBuilderDsl> custom( 053 Function<com.commercetools.api.predicates.query.type.CustomFieldsDraftQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.type.CustomFieldsDraftQueryBuilderDsl>> fn) { 054 return new CombinationQueryPredicate<>( 055 ContainerQueryPredicate.of() 056 .parent(ConstantQueryPredicate.of().constant("custom")) 057 .inner(fn.apply(com.commercetools.api.predicates.query.type.CustomFieldsDraftQueryBuilderDsl.of())), 058 QuoteDraftQueryBuilderDsl::of); 059 } 060 061}