pass IS_SET/IS_NOT_SET match to AbstractAttributeFilter
diff --git a/org.eclipse.rmf.reqif10.search/src/org/eclipse/rmf/reqif10/search/filter/AbstractTextFilter.java b/org.eclipse.rmf.reqif10.search/src/org/eclipse/rmf/reqif10/search/filter/AbstractTextFilter.java
index b3305fe..746e8cb 100644
--- a/org.eclipse.rmf.reqif10.search/src/org/eclipse/rmf/reqif10/search/filter/AbstractTextFilter.java
+++ b/org.eclipse.rmf.reqif10.search/src/org/eclipse/rmf/reqif10/search/filter/AbstractTextFilter.java
@@ -111,7 +111,11 @@
@Override
public boolean match(SpecElementWithAttributes element) {
-
+ if (operator == Operator.IS_SET || operator == Operator.IS_NOT_SET){
+ return super.match(element);
+ }
+
+
String theValue;
// retrieve the value to check depending on this is a filter on an
diff --git a/org.eclipse.rmf.reqif10.search/src/org/eclipse/rmf/reqif10/search/filter/BoolFilter.java b/org.eclipse.rmf.reqif10.search/src/org/eclipse/rmf/reqif10/search/filter/BoolFilter.java
index 4df6694..1841666 100644
--- a/org.eclipse.rmf.reqif10.search/src/org/eclipse/rmf/reqif10/search/filter/BoolFilter.java
+++ b/org.eclipse.rmf.reqif10.search/src/org/eclipse/rmf/reqif10/search/filter/BoolFilter.java
@@ -52,7 +52,11 @@
@Override
public boolean match(SpecElementWithAttributes element) {
-
+ if (operator == Operator.IS_SET || operator == Operator.IS_NOT_SET){
+ return super.match(element);
+ }
+
+
Boolean theValue;
AttributeValueBoolean attributeValue = (AttributeValueBoolean) ReqIF10Util.getAttributeValue(element, attributeDefinition);
diff --git a/org.eclipse.rmf.reqif10.search/src/org/eclipse/rmf/reqif10/search/filter/EnumFilter.java b/org.eclipse.rmf.reqif10.search/src/org/eclipse/rmf/reqif10/search/filter/EnumFilter.java
index 9783c34..f570c08 100644
--- a/org.eclipse.rmf.reqif10.search/src/org/eclipse/rmf/reqif10/search/filter/EnumFilter.java
+++ b/org.eclipse.rmf.reqif10.search/src/org/eclipse/rmf/reqif10/search/filter/EnumFilter.java
@@ -56,8 +56,10 @@
this.attributeDefinition = attributeDefinition;
this.operator = operator;
this.filterValues = new HashSet<EnumValue>(value);
- if (attributeDefinition.getDefaultValue() != null) {
+ if (attributeDefinition.getDefaultValue() != null){
this.defaultValues = new HashSet<EnumValue>(attributeDefinition.getDefaultValue().getValues());
+ }else{
+ this.defaultValues = new HashSet<EnumValue>();
}
}
@@ -65,6 +67,10 @@
@Override
public boolean match(SpecElementWithAttributes element) {
+ if (operator == Operator.IS_SET || operator == Operator.IS_NOT_SET){
+ return super.match(element);
+ }
+
AttributeValueEnumeration attributeValue = (AttributeValueEnumeration) ReqIF10Util.getAttributeValue(element, attributeDefinition);
boolean useDefaultValue;
diff --git a/org.eclipse.rmf.reqif10.search/src/org/eclipse/rmf/reqif10/search/filter/NumberFilter.java b/org.eclipse.rmf.reqif10.search/src/org/eclipse/rmf/reqif10/search/filter/NumberFilter.java
index f45aa75..3dd4337 100644
--- a/org.eclipse.rmf.reqif10.search/src/org/eclipse/rmf/reqif10/search/filter/NumberFilter.java
+++ b/org.eclipse.rmf.reqif10.search/src/org/eclipse/rmf/reqif10/search/filter/NumberFilter.java
@@ -101,6 +101,11 @@
@Override
public boolean match(SpecElementWithAttributes element) {
+ if (operator == Operator.IS_SET || operator == Operator.IS_NOT_SET){
+ return super.match(element);
+ }
+
+
Number theValue = getTheValue(element);