merge from 2_4_Release branch
[jalview.git] / src / jalview / datamodel / SequenceFeature.java
index 1f34b8b..0686419 100755 (executable)
@@ -1,17 +1,17 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer
- * Copyright (C) 2007 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle
- *
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.4)
+ * Copyright (C) 2008 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle
+ * 
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License
  * as published by the Free Software Foundation; either version 2
  * of the License, or (at your option) any later version.
- *
+ * 
  * This program is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
- *
+ * 
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
@@ -22,18 +22,24 @@ import java.util.*;
 
 /**
  * DOCUMENT ME!
- *
+ * 
  * @author $author$
  * @version $Revision$
  */
 public class SequenceFeature
 {
   public int begin;
+
   public int end;
+
   public float score;
+
   public String type;
+
   public String description;
+
   public Hashtable otherDetails;
+
   public java.util.Vector links;
 
   // Feature group can be set from a features file
@@ -41,13 +47,14 @@ public class SequenceFeature
   public String featureGroup;
 
   public SequenceFeature()
-  {}
+  {
+  }
 
   /**
-   * Constructs a duplicate feature.
-   * Note: Uses clone on the otherDetails so only shallow copies are made
-   * of additional properties and method will silently fail if unclonable
-   * objects are found in the hash.
+   * Constructs a duplicate feature. Note: Uses clone on the otherDetails so
+   * only shallow copies are made of additional properties and method will
+   * silently fail if unclonable objects are found in the hash.
+   * 
    * @param cpy
    */
   public SequenceFeature(SequenceFeature cpy)
@@ -74,8 +81,7 @@ public class SequenceFeature
         try
         {
           otherDetails = (Hashtable) cpy.otherDetails.clone();
-        }
-        catch (Exception e)
+        } catch (Exception e)
         {
           // Uncloneable objects in the otherDetails - don't complain
         }
@@ -91,11 +97,8 @@ public class SequenceFeature
     }
   }
 
-  public SequenceFeature(String type,
-                         String desc,
-                         String status,
-                         int begin, int end,
-                         String featureGroup)
+  public SequenceFeature(String type, String desc, String status,
+          int begin, int end, String featureGroup)
   {
     this.type = type;
     this.description = desc;
@@ -105,11 +108,8 @@ public class SequenceFeature
     this.featureGroup = featureGroup;
   }
 
-  public SequenceFeature(String type,
-                         String desc,
-                         int begin, int end,
-                         float score,
-                         String featureGroup)
+  public SequenceFeature(String type, String desc, int begin, int end,
+          float score, String featureGroup)
   {
     this.type = type;
     this.description = desc;
@@ -121,15 +121,13 @@ public class SequenceFeature
 
   public boolean equals(SequenceFeature sf)
   {
-    if (begin != sf.begin
-        || end != sf.end
-        || score != sf.score)
+    if (begin != sf.begin || end != sf.end || score != sf.score)
     {
       return false;
     }
 
-    if (! (type + description + featureGroup).equals
-        (sf.type + sf.description + sf.featureGroup))
+    if (!(type + description + featureGroup).equals(sf.type
+            + sf.description + sf.featureGroup))
     {
       return false;
     }
@@ -139,7 +137,7 @@ public class SequenceFeature
 
   /**
    * DOCUMENT ME!
-   *
+   * 
    * @return DOCUMENT ME!
    */
   public int getBegin()
@@ -154,7 +152,7 @@ public class SequenceFeature
 
   /**
    * DOCUMENT ME!
-   *
+   * 
    * @return DOCUMENT ME!
    */
   public int getEnd()
@@ -169,7 +167,7 @@ public class SequenceFeature
 
   /**
    * DOCUMENT ME!
-   *
+   * 
    * @return DOCUMENT ME!
    */
   public String getType()
@@ -184,7 +182,7 @@ public class SequenceFeature
 
   /**
    * DOCUMENT ME!
-   *
+   * 
    * @return DOCUMENT ME!
    */
   public String getDescription()
@@ -228,9 +226,11 @@ public class SequenceFeature
   }
 
   /**
-   * Used for getting values which are not in the
-   * basic set. eg STRAND, FRAME for GFF file
-   * @param key String
+   * Used for getting values which are not in the basic set. eg STRAND, FRAME
+   * for GFF file
+   * 
+   * @param key
+   *                String
    */
   public Object getValue(String key)
   {
@@ -245,10 +245,13 @@ public class SequenceFeature
   }
 
   /**
-   * Used for setting values which are not in the
-   * basic set. eg STRAND, FRAME for GFF file
-   * @param key   eg STRAND
-   * @param value eg +
+   * Used for setting values which are not in the basic set. eg STRAND, FRAME
+   * for GFF file
+   * 
+   * @param key
+   *                eg STRAND
+   * @param value
+   *                eg +
    */
   public void setValue(String key, Object value)
   {
@@ -264,8 +267,8 @@ public class SequenceFeature
   }
 
   /*
-   * The following methods are added to maintain
-   * the castor Uniprot mapping file for the moment.
+   * The following methods are added to maintain the castor Uniprot mapping file
+   * for the moment.
    */
   public void setStatus(String status)
   {
@@ -277,7 +280,7 @@ public class SequenceFeature
     if (otherDetails != null)
     {
       String stat = (String) otherDetails.get("status");
-      if (stat!=null)
+      if (stat != null)
         return new String(stat);
     }
     return null;