sequenceFeatures = features;\r
}\r
\r
- public void addSequenceFeature(SequenceFeature sf)\r
+ public synchronized void addSequenceFeature(SequenceFeature sf)\r
{\r
if(sequenceFeatures==null)\r
{\r
System.arraycopy(sequenceFeatures, 0, temp, 0, sequenceFeatures.length);\r
temp[sequenceFeatures.length] = sf;\r
\r
-\r
sequenceFeatures = temp;\r
}\r
\r
{\r
this.type = type;\r
this.description = desc;\r
- if(status!=null)\r
- setValue("status", status);\r
-\r
+ setValue("status", status);\r
this.begin = begin;\r
this.end = end;\r
this.featureGroup = featureGroup;\r
\r
public boolean equals(SequenceFeature sf)\r
{\r
- if(begin != sf.begin\r
- || end != sf.end)\r
- return false;\r
-\r
+ if (begin != sf.begin\r
+ || end != sf.end\r
+ || score != sf.score)\r
+ return false;\r
\r
- if(!(type+description).equals\r
- (sf.type+sf.description))\r
+ if(!(type+description+featureGroup).equals\r
+ (sf.type+sf.description+sf.featureGroup))\r
return false;\r
\r
return true;\r
*/\r
public void setValue(String key, Object value)\r
{\r
- if(otherDetails == null)\r
- otherDetails = new Hashtable();\r
+ if(value!=null)\r
+ {\r
+ if (otherDetails == null)\r
+ otherDetails = new Hashtable();\r
+\r
+ otherDetails.put(key, value);\r
+ }\r
+ }\r
+\r
+\r
+ /*\r
+ * The following methods are added to maintain\r
+ * the castor Uniprot mapping file for the moment.\r
+ */\r
+ public void setStatus(String status)\r
+ {\r
+ setValue("status", status);\r
+ }\r
\r
- otherDetails.put(key, value);\r
+ public String getStatus()\r
+ {\r
+ if (otherDetails != null)\r
+ return otherDetails.get("status").toString();\r
+ else\r
+ return null;\r
}\r
\r
+ public void setPosition(int pos)\r
+ {\r
+ begin = pos;\r
+ end = pos;\r
+ }\r
+\r
+ public int getPosition()\r
+ {\r
+ return begin;\r
+ }\r
\r
}\r