- Type Parameters:
R
- the type of resources (e.g.Feature
) to filter.
- All Superinterfaces:
ComparisonOperator<R>
,Filter<R>
,Predicate<R>
@UML(identifier="NilOperator",
specification=ISO_19143)
public interface NilOperator<R>
extends ComparisonOperator<R>
An operator that evaluates if the value of an expression is nil.
The difference with
NullOperator
is that a value should exist
but cannot be provided for the reason given by getNilReason()
.
A nil value is not necessarily null
; implementations are free to use placeholders.- Since:
- 3.1
-
Method Summary
Modifier and TypeMethodDescriptionList<Expression<? super R,
?>> Returns the expression whose value will be checked for nil.Returns the reason why the value is nil.default ComparisonOperatorName
Returns the nature of the comparison.
-
Method Details
-
getOperatorType
Returns the nature of the comparison. The default implementation returnsPROPERTY_IS_NIL
.- Specified by:
getOperatorType
in interfaceComparisonOperator<R>
- Specified by:
getOperatorType
in interfaceFilter<R>
- Returns:
- the nature of the comparison.
-
getExpressions
@UML(identifier="expression", obligation=MANDATORY, specification=ISO_19143) List<Expression<? super R,?>> getExpressions()Returns the expression whose value will be checked for nil.- Specified by:
getExpressions
in interfaceFilter<R>
- Returns:
- a list of size 1 containing the expression to test for nil value.
-
getNilReason
@UML(identifier="nilReason", obligation=OPTIONAL, specification=ISO_19143) default Optional<String> getNilReason()Returns the reason why the value is nil. Possible reasons are:- inapplicable — there is no value.
- template — the value will be available later.
- missing — the correct value is not readily available to the sender of this data. Furthermore, a correct value may not exist.
- unknown — the correct value is not known to, and not computable by, the sender of this data. However, a correct value probably exists..
- withheld — the value is not divulged.
- Other strings at implementation choice.
- Returns:
- the reason why the value is nil, or empty for any reason.
-