001 002package com.commercetools.api.predicates.query.cart; 003 004import java.util.function.Function; 005 006import com.commercetools.api.predicates.query.*; 007 008public class TaxPortionDraftQueryBuilderDsl { 009 public TaxPortionDraftQueryBuilderDsl() { 010 } 011 012 public static TaxPortionDraftQueryBuilderDsl of() { 013 return new TaxPortionDraftQueryBuilderDsl(); 014 } 015 016 public StringComparisonPredicateBuilder<TaxPortionDraftQueryBuilderDsl> name() { 017 return new StringComparisonPredicateBuilder<>( 018 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("name")), 019 p -> new CombinationQueryPredicate<>(p, TaxPortionDraftQueryBuilderDsl::of)); 020 } 021 022 public DoubleComparisonPredicateBuilder<TaxPortionDraftQueryBuilderDsl> rate() { 023 return new DoubleComparisonPredicateBuilder<>( 024 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("rate")), 025 p -> new CombinationQueryPredicate<>(p, TaxPortionDraftQueryBuilderDsl::of)); 026 } 027 028 public CombinationQueryPredicate<TaxPortionDraftQueryBuilderDsl> amount( 029 Function<com.commercetools.api.predicates.query.common.MoneyQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.common.MoneyQueryBuilderDsl>> fn) { 030 return new CombinationQueryPredicate<>( 031 ContainerQueryPredicate.of() 032 .parent(ConstantQueryPredicate.of().constant("amount")) 033 .inner(fn.apply(com.commercetools.api.predicates.query.common.MoneyQueryBuilderDsl.of())), 034 TaxPortionDraftQueryBuilderDsl::of); 035 } 036 037}