JAL-3401 JAL-3253-applet
[jalview.git] / src / jalview / datamodel / features / FeatureMatcherI.java
index 078f4a4..f1f8585 100644 (file)
@@ -21,11 +21,33 @@ public interface FeatureMatcherI
   boolean matches(SequenceFeature feature);
 
   /**
-   * Answers the value key this matcher operates on
+   * Answers the attribute key this matcher operates on (or null if match is by
+   * Label or Score)
    * 
    * @return
    */
-  String[] getKey();
+  String[] getAttribute();
+
+  /**
+   * Answers true if match is against feature label (description), else false
+   * 
+   * @return
+   */
+  boolean isByLabel();
+
+  /**
+   * Answers true if match is against feature score, else false
+   * 
+   * @return
+   */
+  boolean isByScore();
+
+  /**
+   * Answers true if match is against a feature attribute (text or range)
+   * 
+   * @return
+   */
+  boolean isByAttribute();
 
   /**
    * Answers the match condition that is applied
@@ -33,4 +55,11 @@ public interface FeatureMatcherI
    * @return
    */
   MatcherI getMatcher();
+
+  /**
+   * Answers a string representation of this object suitable for use when
+   * persisting data, in a format that can be reliably read back. Any changes to
+   * the format should be backwards compatible.
+   */
+  String toStableString();
 }