/*\r
* This class was automatically generated with \r
- * <a href="http://www.castor.org">Castor 0.9.9M2</a>, using an XML\r
+ * <a href="http://www.castor.org">Castor 1.1</a>, using an XML\r
* Schema.\r
* $Id$\r
*/\r
//- Imported classes and packages -/\r
//---------------------------------/\r
\r
-import java.io.IOException;\r
-import java.io.Reader;\r
-import java.io.Serializable;\r
-import java.io.Writer;\r
-import org.exolab.castor.xml.MarshalException;\r
import org.exolab.castor.xml.Marshaller;\r
import org.exolab.castor.xml.Unmarshaller;\r
-import org.exolab.castor.xml.ValidationException;\r
-import org.xml.sax.ContentHandler;\r
\r
/**\r
- * From: Offset to first\r
- * position in dataset sequence record that\r
- * this database entry maps to To: Offset\r
- * to last position in dataset sequence\r
- * record that this database entry maps to\r
- * Start: Offset to first last position in\r
- * database entry that first (or offset)\r
- * position in sequence maps to End: Offset\r
- * to last position in database entry that\r
- * last (offset) position in sequence maps\r
- * to \r
+ * the local mapType maps from the parent\r
+ * sequence coordinate frame to the reference\r
+ * frame defined by the dbRef element.\r
+ * The mapped mapType is the mapped range defined\r
+ * on the dbRef element's reference frame.\r
+ * Conventionally, the unit attribute defaults to 1, or\r
+ * will be inferred from the local sequence's\r
+ * dictionary type and any dictionary type associated\r
+ * with the database being mapped to. \r
+ * However, it may be used to avoid ambiguity.\r
+ * \r
* \r
* @version $Revision$ $Date$\r
*/\r
-public class Map extends uk.ac.vamsas.objects.core.MapList \r
+public class Map extends uk.ac.vamsas.objects.core.MapType \r
implements java.io.Serializable\r
{\r
\r
\r
+ //--------------------------/\r
+ //- Class/Member Variables -/\r
+ //--------------------------/\r
+\r
+ /**\r
+ * Field _id.\r
+ */\r
+ private java.lang.String _id;\r
+\r
+\r
//----------------/\r
//- Constructors -/\r
//----------------/\r
\r
- public Map() \r
- {\r
+ public Map() {\r
super();\r
- } //-- uk.ac.vamsas.objects.core.Map()\r
+ }\r
\r
\r
//-----------/\r
//-----------/\r
\r
/**\r
- * Note: hashCode() has not been overriden\r
+ * Overrides the java.lang.Object.equals method.\r
* \r
* @param obj\r
- * @return boolean\r
+ * @return true if the objects are equal.\r
*/\r
- public boolean equals(java.lang.Object obj)\r
- {\r
+ public boolean equals(\r
+ final java.lang.Object obj) {\r
if ( this == obj )\r
return true;\r
\r
if (obj instanceof Map) {\r
\r
Map temp = (Map)obj;\r
+ boolean thcycle;\r
+ boolean tmcycle;\r
+ if (this._id != null) {\r
+ if (temp._id == null) return false;\r
+ if (this._id != temp._id) {\r
+ thcycle=org.castor.util.CycleBreaker.startingToCycle(this._id);\r
+ tmcycle=org.castor.util.CycleBreaker.startingToCycle(temp._id);\r
+ if (thcycle!=tmcycle) {\r
+ if (!thcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(this._id); };\r
+ if (!tmcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(temp._id); };\r
+ return false;\r
+ }\r
+ if (!thcycle) {\r
+ if (!this._id.equals(temp._id)) {\r
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._id);\r
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._id);\r
+ return false;\r
+ }\r
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._id);\r
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._id);\r
+ }\r
+ }\r
+ } else if (temp._id != null)\r
+ return false;\r
return true;\r
}\r
return false;\r
- } //-- boolean equals(java.lang.Object) \r
+ }\r
\r
/**\r
- * Method isValid\r
+ * Returns the value of field 'id'.\r
* \r
+ * @return the value of field 'Id'.\r
+ */\r
+ public java.lang.String getId(\r
+ ) {\r
+ return this._id;\r
+ }\r
+\r
+ /**\r
+ * Overrides the java.lang.Object.hashCode method.\r
+ * <p>\r
+ * The following steps came from <b>Effective Java Programming\r
+ * Language Guide</b> by Joshua Bloch, Chapter 3\r
* \r
+ * @return a hash code value for the object.\r
+ */\r
+ public int hashCode(\r
+ ) {\r
+ int result = super.hashCode();\r
+ \r
+ long tmp;\r
+ if (_id != null\r
+ && !org.castor.util.CycleBreaker.startingToCycle(_id)) {\r
+ result = 37 * result + _id.hashCode();\r
+ org.castor.util.CycleBreaker.releaseCycleHandle(_id);\r
+ }\r
+ \r
+ return result;\r
+ }\r
+\r
+ /**\r
+ * Method isValid.\r
* \r
- * @return boolean\r
+ * @return true if this object is valid according to the schema\r
*/\r
- public boolean isValid()\r
- {\r
+ public boolean isValid(\r
+ ) {\r
try {\r
validate();\r
- }\r
- catch (org.exolab.castor.xml.ValidationException vex) {\r
+ } catch (org.exolab.castor.xml.ValidationException vex) {\r
return false;\r
}\r
return true;\r
- } //-- boolean isValid() \r
+ }\r
\r
/**\r
- * Method marshal\r
- * \r
* \r
* \r
* @param out\r
+ * @throws org.exolab.castor.xml.MarshalException if object is\r
+ * null or if any SAXException is thrown during marshaling\r
+ * @throws org.exolab.castor.xml.ValidationException if this\r
+ * object is an invalid instance according to the schema\r
*/\r
- public void marshal(java.io.Writer out)\r
- throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
- {\r
- \r
+ public void marshal(\r
+ final java.io.Writer out)\r
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {\r
Marshaller.marshal(this, out);\r
- } //-- void marshal(java.io.Writer) \r
+ }\r
\r
/**\r
- * Method marshal\r
- * \r
* \r
* \r
* @param handler\r
+ * @throws java.io.IOException if an IOException occurs during\r
+ * marshaling\r
+ * @throws org.exolab.castor.xml.ValidationException if this\r
+ * object is an invalid instance according to the schema\r
+ * @throws org.exolab.castor.xml.MarshalException if object is\r
+ * null or if any SAXException is thrown during marshaling\r
*/\r
- public void marshal(org.xml.sax.ContentHandler handler)\r
- throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
- {\r
- \r
+ public void marshal(\r
+ final org.xml.sax.ContentHandler handler)\r
+ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {\r
Marshaller.marshal(this, handler);\r
- } //-- void marshal(org.xml.sax.ContentHandler) \r
+ }\r
\r
/**\r
- * Method unmarshal\r
- * \r
+ * Sets the value of field 'id'.\r
* \r
+ * @param id the value of field 'id'.\r
+ */\r
+ public void setId(\r
+ final java.lang.String id) {\r
+ this._id = id;\r
+ }\r
+\r
+ /**\r
+ * Method unmarshal.\r
* \r
* @param reader\r
- * @return MapList\r
+ * @throws org.exolab.castor.xml.MarshalException if object is\r
+ * null or if any SAXException is thrown during marshaling\r
+ * @throws org.exolab.castor.xml.ValidationException if this\r
+ * object is an invalid instance according to the schema\r
+ * @return the unmarshaled uk.ac.vamsas.objects.core.MapType\r
*/\r
- public static uk.ac.vamsas.objects.core.MapList unmarshal(java.io.Reader reader)\r
- throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
- {\r
- return (uk.ac.vamsas.objects.core.Map) Unmarshaller.unmarshal(uk.ac.vamsas.objects.core.Map.class, reader);\r
- } //-- uk.ac.vamsas.objects.core.MapList unmarshal(java.io.Reader) \r
+ public static uk.ac.vamsas.objects.core.MapType unmarshal(\r
+ final java.io.Reader reader)\r
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {\r
+ return (uk.ac.vamsas.objects.core.MapType) Unmarshaller.unmarshal(uk.ac.vamsas.objects.core.Map.class, reader);\r
+ }\r
\r
/**\r
- * Method validate\r
* \r
+ * \r
+ * @throws org.exolab.castor.xml.ValidationException if this\r
+ * object is an invalid instance according to the schema\r
*/\r
- public void validate()\r
- throws org.exolab.castor.xml.ValidationException\r
- {\r
+ public void validate(\r
+ )\r
+ throws org.exolab.castor.xml.ValidationException {\r
org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
validator.validate(this);\r
- } //-- void validate() \r
+ }\r
\r
}\r