diff options
author | Eduardo Pedroni <e.pedroni91@gmail.com> | 2016-08-11 23:59:10 +0200 |
---|---|---|
committer | Eduardo Pedroni <e.pedroni91@gmail.com> | 2016-08-11 23:59:10 +0200 |
commit | c07d860f1d90dc3961b31c87dbe637dbcd87da76 (patch) | |
tree | e31997581287fd5d021aebc60ea7c5ad08539bbc /src/eu/equalparts/cardbase/cardfield/StringCardField.java | |
parent | f7fe057b745d3f0e19b5dd6bd1819b11fc89c551 (diff) |
Refactored the Card data structure to be able to do filtering properly
Diffstat (limited to 'src/eu/equalparts/cardbase/cardfield/StringCardField.java')
-rw-r--r-- | src/eu/equalparts/cardbase/cardfield/StringCardField.java | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/eu/equalparts/cardbase/cardfield/StringCardField.java b/src/eu/equalparts/cardbase/cardfield/StringCardField.java new file mode 100644 index 0000000..059a45d --- /dev/null +++ b/src/eu/equalparts/cardbase/cardfield/StringCardField.java @@ -0,0 +1,23 @@ +package eu.equalparts.cardbase.cardfield; +import eu.equalparts.cardbase.filtering.CardFiltering.Filter; + +public class StringCardField extends CardField<String> { + + public StringCardField(String name, String value) { + super(name, value); + } + + @Override + public boolean filter(Filter filter, String s) { + switch (filter) { + case CONTAINS: + return get().toLowerCase().contains(s.toLowerCase()); + case EQUALS: + return get().equalsIgnoreCase(s); + case REGEX: + return get().matches(s); + default: + return false; + } + } +} |