Interface Comparison
-
- All Superinterfaces:
Constraint
- All Known Implementing Classes:
ComparisonImpl
public interface Comparison extends Constraint
Filters node-tuples based on the outcome of a binary operation.For any comparison,
operand2always evaluates to a scalar value. In contrast,operand1may evaluate to an array of values (for example, the value of a multi-valued property), in which case the comparison is separately performed for each element of the array, and theComparisonconstraint is satisfied as a whole if the comparison against any element of the array is satisfied.If
operand1andoperand2evaluate to values of different property types, the value ofoperand2is converted to the property type of the value ofoperand1. If the type conversion fails, the query is invalid.If
operatoris not supported for the property type ofoperand1, the query is invalid.If
operand1evaluates to null (for example, if the operand evaluates the value of a property which does not exist), the constraint is not satisfied.The
JCR_OPERATOR_EQUAL_TOoperator is satisfied only if the value ofoperand1equals the value ofoperand2.The
JCR_OPERATOR_NOT_EQUAL_TOoperator is satisfied unless the value ofoperand1equals the value ofoperand2.The
JCR_OPERATOR_LESSS_THANoperator is satisfied only if the value ofoperand1is ordered before the value ofoperand2.The
JCR_OPERATOR_LESS_THAN_OR_EQUAL_TOoperator is satisfied unless the value ofoperand1is ordered after the value ofoperand2.The
JCR_OPERATOR_GREATER_THANoperator is satisfied only if the value ofoperand1is ordered after the value ofoperand2.The
JCR_OPERATOR_GREATER_THAN_OR_EQUAL_TOoperator is satisfied unless the value ofoperand1is ordered before the value ofoperand2.The
JCR_OPERATOR_LIKEoperator is satisfied only if the value ofoperand1matches the pattern specified by the value ofoperand2, where in the pattern:- the
character "
%" matches zero or more characters, and - the
character "
_" (underscore) matches exactly one character, and - the string "
\x" matches the character "x", and - all other characters match themselves.
- Since:
- JCR 2.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description DynamicOperandgetOperand1()Gets the first operand.StaticOperandgetOperand2()Gets the second operand.java.lang.StringgetOperator()Gets the operator.
-
-
-
Method Detail
-
getOperand1
DynamicOperand getOperand1()
Gets the first operand.- Returns:
- the operand; non-null
-
getOperator
java.lang.String getOperator()
Gets the operator.- Returns:
- either
QueryObjectModelConstants.JCR_OPERATOR_EQUAL_TO,QueryObjectModelConstants.JCR_OPERATOR_NOT_EQUAL_TO,QueryObjectModelConstants.JCR_OPERATOR_LESS_THAN,QueryObjectModelConstants.JCR_OPERATOR_LESS_THAN_OR_EQUAL_TO,QueryObjectModelConstants.JCR_OPERATOR_GREATER_THAN,QueryObjectModelConstants.JCR_OPERATOR_GREATER_THAN_OR_EQUAL_TO, orQueryObjectModelConstants.JCR_OPERATOR_LIKE
-
getOperand2
StaticOperand getOperand2()
Gets the second operand.- Returns:
- the operand; non-null
-
-