JAL-1264 wip
[jalview.git] / src / jalview / datamodel / SequenceGroup.java
index 17348c2..f8fd3ee 100755 (executable)
@@ -1308,4 +1308,28 @@ public class SequenceGroup implements AnnotatedCollectionI
   {
     return context;
   }
+
+  @Override
+  public Iterable<AlignmentAnnotation> findAnnotation(
+          SequenceI datasequence, String calcId, String label)
+  {
+    List<AlignmentAnnotation> result = new ArrayList<AlignmentAnnotation>();
+    for (AlignmentAnnotation ann : getAlignmentAnnotation())
+    {
+      // only sequence-linked annotations can qualify (have a datasequence)
+      if (ann.sequenceRef == null)
+      {
+        continue;
+      }
+      boolean matchDatasequence = (ann.sequenceRef.getDatasetSequence() == datasequence);
+      final String annCalcId = ann.getCalcId();
+      boolean matchCalcId = (annCalcId != null && annCalcId.equals(calcId));
+      boolean matchLabel = (ann.label != null && ann.label.equals(label));
+      if (matchDatasequence && matchCalcId && matchLabel)
+      {
+        result.add(ann);
+      }
+    }
+    return result;
+  }
 }