001
002package com.commercetools.api.predicates.query.zone;
003
004import java.util.function.Function;
005
006import com.commercetools.api.predicates.query.*;
007
008public class ZoneUpdateActionQueryBuilderDsl {
009    public ZoneUpdateActionQueryBuilderDsl() {
010    }
011
012    public static ZoneUpdateActionQueryBuilderDsl of() {
013        return new ZoneUpdateActionQueryBuilderDsl();
014    }
015
016    public StringComparisonPredicateBuilder<ZoneUpdateActionQueryBuilderDsl> action() {
017        return new StringComparisonPredicateBuilder<>(
018            BinaryQueryPredicate.of().left(new ConstantQueryPredicate("action")),
019            p -> new CombinationQueryPredicate<>(p, ZoneUpdateActionQueryBuilderDsl::of));
020    }
021
022    public CombinationQueryPredicate<ZoneUpdateActionQueryBuilderDsl> asAddLocation(
023            Function<com.commercetools.api.predicates.query.zone.ZoneAddLocationActionQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.zone.ZoneAddLocationActionQueryBuilderDsl>> fn) {
024        return new CombinationQueryPredicate<>(
025            fn.apply(com.commercetools.api.predicates.query.zone.ZoneAddLocationActionQueryBuilderDsl.of()),
026            ZoneUpdateActionQueryBuilderDsl::of);
027    }
028
029    public CombinationQueryPredicate<ZoneUpdateActionQueryBuilderDsl> asChangeName(
030            Function<com.commercetools.api.predicates.query.zone.ZoneChangeNameActionQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.zone.ZoneChangeNameActionQueryBuilderDsl>> fn) {
031        return new CombinationQueryPredicate<>(
032            fn.apply(com.commercetools.api.predicates.query.zone.ZoneChangeNameActionQueryBuilderDsl.of()),
033            ZoneUpdateActionQueryBuilderDsl::of);
034    }
035
036    public CombinationQueryPredicate<ZoneUpdateActionQueryBuilderDsl> asRemoveLocation(
037            Function<com.commercetools.api.predicates.query.zone.ZoneRemoveLocationActionQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.zone.ZoneRemoveLocationActionQueryBuilderDsl>> fn) {
038        return new CombinationQueryPredicate<>(
039            fn.apply(com.commercetools.api.predicates.query.zone.ZoneRemoveLocationActionQueryBuilderDsl.of()),
040            ZoneUpdateActionQueryBuilderDsl::of);
041    }
042
043    public CombinationQueryPredicate<ZoneUpdateActionQueryBuilderDsl> asSetDescription(
044            Function<com.commercetools.api.predicates.query.zone.ZoneSetDescriptionActionQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.zone.ZoneSetDescriptionActionQueryBuilderDsl>> fn) {
045        return new CombinationQueryPredicate<>(
046            fn.apply(com.commercetools.api.predicates.query.zone.ZoneSetDescriptionActionQueryBuilderDsl.of()),
047            ZoneUpdateActionQueryBuilderDsl::of);
048    }
049
050    public CombinationQueryPredicate<ZoneUpdateActionQueryBuilderDsl> asSetKey(
051            Function<com.commercetools.api.predicates.query.zone.ZoneSetKeyActionQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.zone.ZoneSetKeyActionQueryBuilderDsl>> fn) {
052        return new CombinationQueryPredicate<>(
053            fn.apply(com.commercetools.api.predicates.query.zone.ZoneSetKeyActionQueryBuilderDsl.of()),
054            ZoneUpdateActionQueryBuilderDsl::of);
055    }
056}