001
002package com.commercetools.api.predicates.query.me;
003
004import java.util.function.Function;
005
006import com.commercetools.api.predicates.query.*;
007
008public class MyDivisionDraftQueryBuilderDsl {
009    public MyDivisionDraftQueryBuilderDsl() {
010    }
011
012    public static MyDivisionDraftQueryBuilderDsl of() {
013        return new MyDivisionDraftQueryBuilderDsl();
014    }
015
016    public StringComparisonPredicateBuilder<MyDivisionDraftQueryBuilderDsl> key() {
017        return new StringComparisonPredicateBuilder<>(BinaryQueryPredicate.of().left(new ConstantQueryPredicate("key")),
018            p -> new CombinationQueryPredicate<>(p, MyDivisionDraftQueryBuilderDsl::of));
019    }
020
021    public StringComparisonPredicateBuilder<MyDivisionDraftQueryBuilderDsl> unitType() {
022        return new StringComparisonPredicateBuilder<>(
023            BinaryQueryPredicate.of().left(new ConstantQueryPredicate("unitType")),
024            p -> new CombinationQueryPredicate<>(p, MyDivisionDraftQueryBuilderDsl::of));
025    }
026
027    public StringComparisonPredicateBuilder<MyDivisionDraftQueryBuilderDsl> name() {
028        return new StringComparisonPredicateBuilder<>(
029            BinaryQueryPredicate.of().left(new ConstantQueryPredicate("name")),
030            p -> new CombinationQueryPredicate<>(p, MyDivisionDraftQueryBuilderDsl::of));
031    }
032
033    public StringComparisonPredicateBuilder<MyDivisionDraftQueryBuilderDsl> contactEmail() {
034        return new StringComparisonPredicateBuilder<>(
035            BinaryQueryPredicate.of().left(new ConstantQueryPredicate("contactEmail")),
036            p -> new CombinationQueryPredicate<>(p, MyDivisionDraftQueryBuilderDsl::of));
037    }
038
039    public CombinationQueryPredicate<MyDivisionDraftQueryBuilderDsl> custom(
040            Function<com.commercetools.api.predicates.query.type.CustomFieldsQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.type.CustomFieldsQueryBuilderDsl>> fn) {
041        return new CombinationQueryPredicate<>(
042            ContainerQueryPredicate.of()
043                    .parent(ConstantQueryPredicate.of().constant("custom"))
044                    .inner(fn.apply(com.commercetools.api.predicates.query.type.CustomFieldsQueryBuilderDsl.of())),
045            MyDivisionDraftQueryBuilderDsl::of);
046    }
047
048    public CombinationQueryPredicate<MyDivisionDraftQueryBuilderDsl> addresses(
049            Function<com.commercetools.api.predicates.query.common.BaseAddressQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.common.BaseAddressQueryBuilderDsl>> fn) {
050        return new CombinationQueryPredicate<>(
051            ContainerQueryPredicate.of()
052                    .parent(ConstantQueryPredicate.of().constant("addresses"))
053                    .inner(fn.apply(com.commercetools.api.predicates.query.common.BaseAddressQueryBuilderDsl.of())),
054            MyDivisionDraftQueryBuilderDsl::of);
055    }
056
057    public CollectionPredicateBuilder<MyDivisionDraftQueryBuilderDsl> addresses() {
058        return new CollectionPredicateBuilder<>(BinaryQueryPredicate.of().left(new ConstantQueryPredicate("addresses")),
059            p -> new CombinationQueryPredicate<>(p, MyDivisionDraftQueryBuilderDsl::of));
060    }
061
062    public StringCollectionPredicateBuilder<MyDivisionDraftQueryBuilderDsl> shippingAddresses() {
063        return new StringCollectionPredicateBuilder<>(
064            BinaryQueryPredicate.of().left(new ConstantQueryPredicate("shippingAddresses")),
065            p -> new CombinationQueryPredicate<>(p, MyDivisionDraftQueryBuilderDsl::of));
066    }
067
068    public LongComparisonPredicateBuilder<MyDivisionDraftQueryBuilderDsl> defaultShippingAddress() {
069        return new LongComparisonPredicateBuilder<>(
070            BinaryQueryPredicate.of().left(new ConstantQueryPredicate("defaultShippingAddress")),
071            p -> new CombinationQueryPredicate<>(p, MyDivisionDraftQueryBuilderDsl::of));
072    }
073
074    public StringCollectionPredicateBuilder<MyDivisionDraftQueryBuilderDsl> billingAddresses() {
075        return new StringCollectionPredicateBuilder<>(
076            BinaryQueryPredicate.of().left(new ConstantQueryPredicate("billingAddresses")),
077            p -> new CombinationQueryPredicate<>(p, MyDivisionDraftQueryBuilderDsl::of));
078    }
079
080    public LongComparisonPredicateBuilder<MyDivisionDraftQueryBuilderDsl> defaultBillingAddress() {
081        return new LongComparisonPredicateBuilder<>(
082            BinaryQueryPredicate.of().left(new ConstantQueryPredicate("defaultBillingAddress")),
083            p -> new CombinationQueryPredicate<>(p, MyDivisionDraftQueryBuilderDsl::of));
084    }
085
086    public CombinationQueryPredicate<MyDivisionDraftQueryBuilderDsl> parentUnit(
087            Function<com.commercetools.api.predicates.query.business_unit.BusinessUnitResourceIdentifierQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.business_unit.BusinessUnitResourceIdentifierQueryBuilderDsl>> fn) {
088        return new CombinationQueryPredicate<>(ContainerQueryPredicate.of()
089                .parent(ConstantQueryPredicate.of().constant("parentUnit"))
090                .inner(fn.apply(
091                    com.commercetools.api.predicates.query.business_unit.BusinessUnitResourceIdentifierQueryBuilderDsl
092                            .of())),
093            MyDivisionDraftQueryBuilderDsl::of);
094    }
095
096}