com.github.rutledgepaulv.qbuilders.properties.concrete.ConditionProperty Maven / Gradle / Ivy
/*
*
* * com.github.rutledgepaulv.qbuilders.properties.concrete.ConditionProperty
* * *
* * * Copyright (C) 2016 Paul Rutledge
* * *
* * * This software may be modified and distributed under the terms
* * * of the MIT license. See the LICENSE file for details.
* *
*
*/
package com.github.rutledgepaulv.qbuilders.properties.concrete;
import com.github.rutledgepaulv.qbuilders.builders.QBuilder;
import com.github.rutledgepaulv.qbuilders.conditions.Condition;
import com.github.rutledgepaulv.qbuilders.properties.virtual.Property;
/**
* A property view for multi-value fields containing objects who themselves
* may have additional fields.
*
* @param The type of the final builder.
*/
public interface ConditionProperty, S extends QBuilder> extends Property {
/**
* Mandates that at least one of the elements of the multi-valued fields must match the
* provided condition exactly.
*
* @param condition The condition that should be imposed individually against each element
* in the multi valued field.
*
* @return The logically complete condition.
*/
Condition any(Condition condition);
}