aboutsummaryrefslogtreecommitdiffstats
path: root/src/eu/equalparts/cardbase/cardfield/IntegerCardField.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/eu/equalparts/cardbase/cardfield/IntegerCardField.java')
-rw-r--r--src/eu/equalparts/cardbase/cardfield/IntegerCardField.java28
1 files changed, 16 insertions, 12 deletions
diff --git a/src/eu/equalparts/cardbase/cardfield/IntegerCardField.java b/src/eu/equalparts/cardbase/cardfield/IntegerCardField.java
index 8526640..604880a 100644
--- a/src/eu/equalparts/cardbase/cardfield/IntegerCardField.java
+++ b/src/eu/equalparts/cardbase/cardfield/IntegerCardField.java
@@ -9,18 +9,22 @@ public class IntegerCardField extends CardField<Integer> {
@Override
public boolean filter(Filter filter) throws NumberFormatException {
- switch (filter.type) {
- case CONTAINS:
- return get().toString().contains(filter.value);
- case EQUALS:
- return get().toString().equalsIgnoreCase(filter.value);
- case REGEX:
- return get().toString().matches(filter.value);
- case GREATER_THAN:
- return get() > Integer.parseInt(filter.value);
- case SMALLER_THAN:
- return get() < Integer.parseInt(filter.value);
- default:
+ if (get() != null) {
+ switch (filter.type) {
+ case CONTAINS:
+ return get().toString().contains(filter.value);
+ case EQUALS:
+ return get().toString().equalsIgnoreCase(filter.value);
+ case REGEX:
+ return get().toString().matches(filter.value);
+ case GREATER_THAN:
+ return get() > Integer.parseInt(filter.value);
+ case SMALLER_THAN:
+ return get() < Integer.parseInt(filter.value);
+ default:
+ return false;
+ }
+ } else {
return false;
}
}