001 002package com.commercetools.api.predicates.query.message; 003 004import java.util.function.Function; 005 006import com.commercetools.api.predicates.query.*; 007 008public class ProductSelectionProductRemovedMessagePayloadQueryBuilderDsl { 009 public ProductSelectionProductRemovedMessagePayloadQueryBuilderDsl() { 010 } 011 012 public static ProductSelectionProductRemovedMessagePayloadQueryBuilderDsl of() { 013 return new ProductSelectionProductRemovedMessagePayloadQueryBuilderDsl(); 014 } 015 016 public StringComparisonPredicateBuilder<ProductSelectionProductRemovedMessagePayloadQueryBuilderDsl> type() { 017 return new StringComparisonPredicateBuilder<>( 018 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("type")), 019 p -> new CombinationQueryPredicate<>(p, ProductSelectionProductRemovedMessagePayloadQueryBuilderDsl::of)); 020 } 021 022 public CombinationQueryPredicate<ProductSelectionProductRemovedMessagePayloadQueryBuilderDsl> product( 023 Function<com.commercetools.api.predicates.query.product.ProductReferenceQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.product.ProductReferenceQueryBuilderDsl>> fn) { 024 return new CombinationQueryPredicate<>(ContainerQueryPredicate.of() 025 .parent(ConstantQueryPredicate.of().constant("product")) 026 .inner(fn.apply(com.commercetools.api.predicates.query.product.ProductReferenceQueryBuilderDsl.of())), 027 ProductSelectionProductRemovedMessagePayloadQueryBuilderDsl::of); 028 } 029 030}