001
002package com.commercetools.api.predicates.query.message;
003
004import java.util.function.Function;
005
006import com.commercetools.api.predicates.query.*;
007
008public class OrderLineItemRemovedMessagePayloadQueryBuilderDsl {
009    public OrderLineItemRemovedMessagePayloadQueryBuilderDsl() {
010    }
011
012    public static OrderLineItemRemovedMessagePayloadQueryBuilderDsl of() {
013        return new OrderLineItemRemovedMessagePayloadQueryBuilderDsl();
014    }
015
016    public StringComparisonPredicateBuilder<OrderLineItemRemovedMessagePayloadQueryBuilderDsl> type() {
017        return new StringComparisonPredicateBuilder<>(
018            BinaryQueryPredicate.of().left(new ConstantQueryPredicate("type")),
019            p -> new CombinationQueryPredicate<>(p, OrderLineItemRemovedMessagePayloadQueryBuilderDsl::of));
020    }
021
022    public StringComparisonPredicateBuilder<OrderLineItemRemovedMessagePayloadQueryBuilderDsl> lineItemId() {
023        return new StringComparisonPredicateBuilder<>(
024            BinaryQueryPredicate.of().left(new ConstantQueryPredicate("lineItemId")),
025            p -> new CombinationQueryPredicate<>(p, OrderLineItemRemovedMessagePayloadQueryBuilderDsl::of));
026    }
027
028    public LongComparisonPredicateBuilder<OrderLineItemRemovedMessagePayloadQueryBuilderDsl> removedQuantity() {
029        return new LongComparisonPredicateBuilder<>(
030            BinaryQueryPredicate.of().left(new ConstantQueryPredicate("removedQuantity")),
031            p -> new CombinationQueryPredicate<>(p, OrderLineItemRemovedMessagePayloadQueryBuilderDsl::of));
032    }
033
034    public LongComparisonPredicateBuilder<OrderLineItemRemovedMessagePayloadQueryBuilderDsl> newQuantity() {
035        return new LongComparisonPredicateBuilder<>(
036            BinaryQueryPredicate.of().left(new ConstantQueryPredicate("newQuantity")),
037            p -> new CombinationQueryPredicate<>(p, OrderLineItemRemovedMessagePayloadQueryBuilderDsl::of));
038    }
039
040    public CombinationQueryPredicate<OrderLineItemRemovedMessagePayloadQueryBuilderDsl> newState(
041            Function<com.commercetools.api.predicates.query.order.ItemStateQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.order.ItemStateQueryBuilderDsl>> fn) {
042        return new CombinationQueryPredicate<>(
043            ContainerQueryPredicate.of()
044                    .parent(ConstantQueryPredicate.of().constant("newState"))
045                    .inner(fn.apply(com.commercetools.api.predicates.query.order.ItemStateQueryBuilderDsl.of())),
046            OrderLineItemRemovedMessagePayloadQueryBuilderDsl::of);
047    }
048
049    public CollectionPredicateBuilder<OrderLineItemRemovedMessagePayloadQueryBuilderDsl> newState() {
050        return new CollectionPredicateBuilder<>(BinaryQueryPredicate.of().left(new ConstantQueryPredicate("newState")),
051            p -> new CombinationQueryPredicate<>(p, OrderLineItemRemovedMessagePayloadQueryBuilderDsl::of));
052    }
053
054    public CombinationQueryPredicate<OrderLineItemRemovedMessagePayloadQueryBuilderDsl> newTotalPrice(
055            Function<com.commercetools.api.predicates.query.common.CentPrecisionMoneyQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.common.CentPrecisionMoneyQueryBuilderDsl>> fn) {
056        return new CombinationQueryPredicate<>(ContainerQueryPredicate.of()
057                .parent(ConstantQueryPredicate.of().constant("newTotalPrice"))
058                .inner(fn.apply(com.commercetools.api.predicates.query.common.CentPrecisionMoneyQueryBuilderDsl.of())),
059            OrderLineItemRemovedMessagePayloadQueryBuilderDsl::of);
060    }
061
062    public CombinationQueryPredicate<OrderLineItemRemovedMessagePayloadQueryBuilderDsl> newTaxedPrice(
063            Function<com.commercetools.api.predicates.query.cart.TaxedItemPriceQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.cart.TaxedItemPriceQueryBuilderDsl>> fn) {
064        return new CombinationQueryPredicate<>(
065            ContainerQueryPredicate.of()
066                    .parent(ConstantQueryPredicate.of().constant("newTaxedPrice"))
067                    .inner(fn.apply(com.commercetools.api.predicates.query.cart.TaxedItemPriceQueryBuilderDsl.of())),
068            OrderLineItemRemovedMessagePayloadQueryBuilderDsl::of);
069    }
070
071    public CombinationQueryPredicate<OrderLineItemRemovedMessagePayloadQueryBuilderDsl> newPrice(
072            Function<com.commercetools.api.predicates.query.common.PriceQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.common.PriceQueryBuilderDsl>> fn) {
073        return new CombinationQueryPredicate<>(
074            ContainerQueryPredicate.of()
075                    .parent(ConstantQueryPredicate.of().constant("newPrice"))
076                    .inner(fn.apply(com.commercetools.api.predicates.query.common.PriceQueryBuilderDsl.of())),
077            OrderLineItemRemovedMessagePayloadQueryBuilderDsl::of);
078    }
079
080    public CombinationQueryPredicate<OrderLineItemRemovedMessagePayloadQueryBuilderDsl> newShippingDetail(
081            Function<com.commercetools.api.predicates.query.cart.ItemShippingDetailsQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.cart.ItemShippingDetailsQueryBuilderDsl>> fn) {
082        return new CombinationQueryPredicate<>(ContainerQueryPredicate.of()
083                .parent(ConstantQueryPredicate.of().constant("newShippingDetail"))
084                .inner(fn.apply(com.commercetools.api.predicates.query.cart.ItemShippingDetailsQueryBuilderDsl.of())),
085            OrderLineItemRemovedMessagePayloadQueryBuilderDsl::of);
086    }
087
088}