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