import org.opendaylight.mdsal.binding.dom.adapter.query.QueryBuilderState.BoundMethod;
import org.opendaylight.mdsal.dom.api.query.DOMQueryPredicate;
import org.opendaylight.mdsal.dom.api.query.DOMQueryPredicate.Exists;
+import org.opendaylight.mdsal.dom.api.query.DOMQueryPredicate.NotExists;
import org.opendaylight.mdsal.dom.api.query.DOMQueryPredicate.ValueEquals;
import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
return withPredicate(new Exists(relativePath()));
}
+ @Override
+ public final ValueMatch<T> isNull() {
+ return withPredicate(new NotExists(relativePath()));
+ }
+
@Override
public final ValueMatch<T> valueEquals(final V value) {
return withPredicate(new ValueEquals<>(relativePath(), value));
}
}
+ public static final class NotExists extends DOMQueryPredicate {
+ public NotExists(final YangInstanceIdentifier relativePath) {
+ super(relativePath);
+ }
+
+ @Override
+ public boolean test(final Object data) {
+ return data == null;
+ }
+ }
+
public static final class ValueEquals<T> extends AbstractValueDOMQueryPredicate<T> {
public ValueEquals(final YangInstanceIdentifier relativePath, final T value) {
super(relativePath, value);