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