Skip to content

v0.2.48..v0.2.49 changeset TagContainsCriterion.h

Garret Voltz edited this page Oct 2, 2019 · 1 revision
diff --git a/hoot-core/src/main/cpp/hoot/core/criterion/TagContainsCriterion.h b/hoot-core/src/main/cpp/hoot/core/criterion/TagContainsCriterion.h
index b0ab868..29a8fda 100644
--- a/hoot-core/src/main/cpp/hoot/core/criterion/TagContainsCriterion.h
+++ b/hoot-core/src/main/cpp/hoot/core/criterion/TagContainsCriterion.h
@@ -30,6 +30,7 @@
 
 // hoot
 #include <hoot/core/criterion/ElementCriterion.h>
+#include <hoot/core/util/Configurable.h>
 
 // Qt
 #include <QStringList>
@@ -39,8 +40,10 @@ namespace hoot
 
 /**
  * Identifies elements by tag key and tag value substring
+ *
+ * TODO: handle case sensitivity as an option
  */
-class TagContainsCriterion : public ElementCriterion
+class TagContainsCriterion : public ElementCriterion, public Configurable
 {
 public:
 
@@ -52,6 +55,8 @@ public:
 
   virtual bool isSatisfied(const ConstElementPtr& e) const override;
 
+  void setConfiguration(const Settings& s);
+
  /**
    * Adds an additional pair to the search list. If any one of the pairs matches then it is
    * considered a match.
@@ -63,10 +68,14 @@ public:
   virtual QString getDescription() const
   { return "Identifies elements having a particular tag key and tag value substring"; }
 
+  void setKvps(const QStringList kvps);
+
+  virtual QString toString() const override;
+
 private:
 
-  QStringList _key;
-  QStringList _valueSubstring;
+  QStringList _keys;
+  QStringList _valueSubstrings;
 };
 
 }
Clone this wiki locally