From 115be8f338b2c0601831e2f3e6be1e57b026d8f4 Mon Sep 17 00:00:00 2001
From: tjc <tjc@ee4ac58c-ac51-4696-9907-e4b3aa274f04>
Date: Wed, 3 Feb 2010 12:39:46 +0000
Subject: [PATCH] add getPartOfFeatures()

git-svn-id: svn+ssh://svn.internal.sanger.ac.uk/repos/svn/pathsoft/artemis/trunk@13166 ee4ac58c-ac51-4696-9907-e4b3aa274f04
---
 .../sanger/artemis/util/DatabaseDocument.java | 25 +++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/uk/ac/sanger/artemis/util/DatabaseDocument.java b/uk/ac/sanger/artemis/util/DatabaseDocument.java
index 1a3d1225e..d809eb368 100644
--- a/uk/ac/sanger/artemis/util/DatabaseDocument.java
+++ b/uk/ac/sanger/artemis/util/DatabaseDocument.java
@@ -2278,6 +2278,31 @@ public class DatabaseDocument extends Document
     return (Feature) dao.getFeatureByUniqueName(uniqueName, null);
   }
   
+  /**
+   * Given a feature uniqueName return the features that are part_of 
+   * that gene
+   * @param geneName
+   * @return
+   */
+  public Vector getPartOfFeatures(final String uniqueName)
+  {
+    Feature feature = getFeatureByUniquename(uniqueName);
+    if(feature == null)
+      return null;
+    
+    Collection frs = feature.getFeatureRelationshipsForObjectId();
+    Iterator it = frs.iterator();
+    Vector partOfFeatures = new Vector(frs.size());
+    while(it.hasNext())
+    {
+      FeatureRelationship fr = (FeatureRelationship)it.next();
+      if(fr.getCvTerm().getName().equalsIgnoreCase("part_of"))
+        partOfFeatures.add(fr.getFeatureBySubjectId());
+    }
+    
+    return partOfFeatures;
+  }
+  
   /**
    * Given a gene unique name return the poplypeptide chado features that belong
    * to that gene
-- 
GitLab