001
002package com.commercetools.api.predicates.query;
003
004import java.util.function.Function;
005
006public interface EmptyPredicateBuilder<T> {
007    BinaryQueryPredicate predicate();
008
009    Function<QueryPredicate, CombinationQueryPredicate<T>> combinationFn();
010
011    /**
012     * creates predicate to check that an array is empty
013     * @return a combination predicate
014     */
015    default CombinationQueryPredicate<T> isEmpty() {
016        return combinationFn().apply(
017            predicate().operator(PredicateOperator.IS.toString()).right(ConstantQueryPredicate.of().constant("empty")));
018    }
019}