/*
* This class was automatically generated with
- * <a href="http://www.castor.org">Castor 0.9.9M2</a>, using an XML
+ * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
* Schema.
- * $Id:DbRef.java 264 2006-12-14 17:42:54Z JimP $
+ * $Id$
*/
package uk.ac.vamsas.objects.core;
//- Imported classes and packages -/
//---------------------------------/
-import java.io.IOException;
-import java.io.Reader;
-import java.io.Serializable;
-import java.io.Writer;
-import java.util.Enumeration;
-import java.util.Vector;
-import org.exolab.castor.xml.MarshalException;
import org.exolab.castor.xml.Marshaller;
import org.exolab.castor.xml.Unmarshaller;
-import org.exolab.castor.xml.ValidationException;
-import org.xml.sax.ContentHandler;
/**
* Store a list of database references
* for this sequence record - with optional mapping
* from database sequence to the given sequence record
*
- * @version $Revision:264 $ $Date:2006-12-14 17:42:54 +0000 (Thu, 14 Dec 2006) $
+ * @version $Revision$ $Date$
*/
public class DbRef extends uk.ac.vamsas.client.Vobject
implements java.io.Serializable
private java.lang.String _id;
/**
- * From: Offset to first
- * position in dataset sequence record that
- * this database entry maps to To: Offset
- * to last position in dataset sequence
- * record that this database entry maps to
- * Start: Offset to first last position in
- * database entry that first (or offset)
- * position in sequence maps to End: Offset
- * to last position in database entry that
- * last (offset) position in sequence maps
- * to
+ * the local mapType maps from the parent
+ * sequence coordinate frame to the reference
+ * frame defined by the dbRef element.
+ * The mapped mapType is the mapped range defined
+ * on the dbRef element's reference frame.
+ * Conventionally, the unit attribute defaults to 1, or
+ * will be inferred from the local sequence's
+ * dictionary type and any dictionary type associated
+ * with the database being mapped to.
+ * However, it may be used to avoid ambiguity.
+ *
*/
- private java.util.Vector _mapList;
+ private uk.ac.vamsas.objects.core.Map _map;
/**
- * Field _linkList
+ * Field _linkList.
*/
private java.util.Vector _linkList;
/**
- * Field _propertyList
+ * Field _propertyList.
*/
private java.util.Vector _propertyList;
//- Constructors -/
//----------------/
- public DbRef()
- {
+ public DbRef() {
super();
- _mapList = new Vector();
- _linkList = new Vector();
- _propertyList = new Vector();
- } //-- uk.ac.vamsas.objects.core.DbRef()
+ this._linkList = new java.util.Vector();
+ this._propertyList = new java.util.Vector();
+ }
//-----------/
//-----------/
/**
- * Method addLink
- *
*
*
* @param vLink
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
*/
- public void addLink(uk.ac.vamsas.objects.core.Link vLink)
- throws java.lang.IndexOutOfBoundsException
- {
- _linkList.addElement(vLink);
- } //-- void addLink(uk.ac.vamsas.objects.core.Link)
+ public void addLink(
+ final uk.ac.vamsas.objects.core.Link vLink)
+ throws java.lang.IndexOutOfBoundsException {
+ this._linkList.addElement(vLink);
+ }
/**
- * Method addLink
- *
*
*
* @param index
* @param vLink
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
*/
- public void addLink(int index, uk.ac.vamsas.objects.core.Link vLink)
- throws java.lang.IndexOutOfBoundsException
- {
- _linkList.insertElementAt(vLink, index);
- } //-- void addLink(int, uk.ac.vamsas.objects.core.Link)
-
- /**
- * Method addMap
- *
- *
- *
- * @param vMap
- */
- public void addMap(uk.ac.vamsas.objects.core.Map vMap)
- throws java.lang.IndexOutOfBoundsException
- {
- _mapList.addElement(vMap);
- } //-- void addMap(uk.ac.vamsas.objects.core.Map)
-
- /**
- * Method addMap
- *
- *
- *
- * @param index
- * @param vMap
- */
- public void addMap(int index, uk.ac.vamsas.objects.core.Map vMap)
- throws java.lang.IndexOutOfBoundsException
- {
- _mapList.insertElementAt(vMap, index);
- } //-- void addMap(int, uk.ac.vamsas.objects.core.Map)
+ public void addLink(
+ final int index,
+ final uk.ac.vamsas.objects.core.Link vLink)
+ throws java.lang.IndexOutOfBoundsException {
+ this._linkList.add(index, vLink);
+ }
/**
- * Method addProperty
- *
*
*
* @param vProperty
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
*/
- public void addProperty(uk.ac.vamsas.objects.core.Property vProperty)
- throws java.lang.IndexOutOfBoundsException
- {
- _propertyList.addElement(vProperty);
- } //-- void addProperty(uk.ac.vamsas.objects.core.Property)
+ public void addProperty(
+ final uk.ac.vamsas.objects.core.Property vProperty)
+ throws java.lang.IndexOutOfBoundsException {
+ this._propertyList.addElement(vProperty);
+ }
/**
- * Method addProperty
- *
*
*
* @param index
* @param vProperty
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
*/
- public void addProperty(int index, uk.ac.vamsas.objects.core.Property vProperty)
- throws java.lang.IndexOutOfBoundsException
- {
- _propertyList.insertElementAt(vProperty, index);
- } //-- void addProperty(int, uk.ac.vamsas.objects.core.Property)
+ public void addProperty(
+ final int index,
+ final uk.ac.vamsas.objects.core.Property vProperty)
+ throws java.lang.IndexOutOfBoundsException {
+ this._propertyList.add(index, vProperty);
+ }
/**
- * Method enumerateLink
- *
+ * Method enumerateLink.
*
- *
- * @return Enumeration
+ * @return an Enumeration over all
+ * uk.ac.vamsas.objects.core.Link elements
*/
- public java.util.Enumeration enumerateLink()
- {
- return _linkList.elements();
- } //-- java.util.Enumeration enumerateLink()
+ public java.util.Enumeration enumerateLink(
+ ) {
+ return this._linkList.elements();
+ }
/**
- * Method enumerateMap
- *
+ * Method enumerateProperty.
*
- *
- * @return Enumeration
+ * @return an Enumeration over all
+ * uk.ac.vamsas.objects.core.Property elements
*/
- public java.util.Enumeration enumerateMap()
- {
- return _mapList.elements();
- } //-- java.util.Enumeration enumerateMap()
+ public java.util.Enumeration enumerateProperty(
+ ) {
+ return this._propertyList.elements();
+ }
/**
- * Method enumerateProperty
- *
- *
- *
- * @return Enumeration
- */
- public java.util.Enumeration enumerateProperty()
- {
- return _propertyList.elements();
- } //-- java.util.Enumeration enumerateProperty()
-
- /**
- * Note: hashCode() has not been overriden
+ * Overrides the java.lang.Object.equals method.
*
* @param obj
- * @return boolean
+ * @return true if the objects are equal.
*/
- public boolean equals(java.lang.Object obj)
- {
+ public boolean equals(
+ final java.lang.Object obj) {
if ( this == obj )
return true;
if (obj instanceof DbRef) {
DbRef temp = (DbRef)obj;
+ boolean thcycle;
+ boolean tmcycle;
if (this._source != null) {
if (temp._source == null) return false;
- else if (!(this._source.equals(temp._source)))
- return false;
- }
- else if (temp._source != null)
+ if (this._source != temp._source) {
+ thcycle=org.castor.util.CycleBreaker.startingToCycle(this._source);
+ tmcycle=org.castor.util.CycleBreaker.startingToCycle(temp._source);
+ if (thcycle!=tmcycle) {
+ if (!thcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(this._source); };
+ if (!tmcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(temp._source); };
+ return false;
+ }
+ if (!thcycle) {
+ if (!this._source.equals(temp._source)) {
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._source);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._source);
+ return false;
+ }
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._source);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._source);
+ }
+ }
+ } else if (temp._source != null)
return false;
if (this._version != null) {
if (temp._version == null) return false;
- else if (!(this._version.equals(temp._version)))
- return false;
- }
- else if (temp._version != null)
+ if (this._version != temp._version) {
+ thcycle=org.castor.util.CycleBreaker.startingToCycle(this._version);
+ tmcycle=org.castor.util.CycleBreaker.startingToCycle(temp._version);
+ if (thcycle!=tmcycle) {
+ if (!thcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(this._version); };
+ if (!tmcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(temp._version); };
+ return false;
+ }
+ if (!thcycle) {
+ if (!this._version.equals(temp._version)) {
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._version);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._version);
+ return false;
+ }
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._version);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._version);
+ }
+ }
+ } else if (temp._version != null)
return false;
if (this._accessionId != null) {
if (temp._accessionId == null) return false;
- else if (!(this._accessionId.equals(temp._accessionId)))
- return false;
- }
- else if (temp._accessionId != null)
+ if (this._accessionId != temp._accessionId) {
+ thcycle=org.castor.util.CycleBreaker.startingToCycle(this._accessionId);
+ tmcycle=org.castor.util.CycleBreaker.startingToCycle(temp._accessionId);
+ if (thcycle!=tmcycle) {
+ if (!thcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(this._accessionId); };
+ if (!tmcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(temp._accessionId); };
+ return false;
+ }
+ if (!thcycle) {
+ if (!this._accessionId.equals(temp._accessionId)) {
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._accessionId);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._accessionId);
+ return false;
+ }
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._accessionId);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._accessionId);
+ }
+ }
+ } else if (temp._accessionId != null)
return false;
if (this._id != null) {
if (temp._id == null) return false;
- else if (!(this._id.equals(temp._id)))
- return false;
- }
- else if (temp._id != null)
+ if (this._id != temp._id) {
+ thcycle=org.castor.util.CycleBreaker.startingToCycle(this._id);
+ tmcycle=org.castor.util.CycleBreaker.startingToCycle(temp._id);
+ if (thcycle!=tmcycle) {
+ if (!thcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(this._id); };
+ if (!tmcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(temp._id); };
+ return false;
+ }
+ if (!thcycle) {
+ if (!this._id.equals(temp._id)) {
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._id);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._id);
+ return false;
+ }
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._id);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._id);
+ }
+ }
+ } else if (temp._id != null)
return false;
- if (this._mapList != null) {
- if (temp._mapList == null) return false;
- else if (!(this._mapList.equals(temp._mapList)))
- return false;
- }
- else if (temp._mapList != null)
+ if (this._map != null) {
+ if (temp._map == null) return false;
+ if (this._map != temp._map) {
+ thcycle=org.castor.util.CycleBreaker.startingToCycle(this._map);
+ tmcycle=org.castor.util.CycleBreaker.startingToCycle(temp._map);
+ if (thcycle!=tmcycle) {
+ if (!thcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(this._map); };
+ if (!tmcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(temp._map); };
+ return false;
+ }
+ if (!thcycle) {
+ if (!this._map.equals(temp._map)) {
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._map);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._map);
+ return false;
+ }
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._map);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._map);
+ }
+ }
+ } else if (temp._map != null)
return false;
if (this._linkList != null) {
if (temp._linkList == null) return false;
- else if (!(this._linkList.equals(temp._linkList)))
- return false;
- }
- else if (temp._linkList != null)
+ if (this._linkList != temp._linkList) {
+ thcycle=org.castor.util.CycleBreaker.startingToCycle(this._linkList);
+ tmcycle=org.castor.util.CycleBreaker.startingToCycle(temp._linkList);
+ if (thcycle!=tmcycle) {
+ if (!thcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(this._linkList); };
+ if (!tmcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(temp._linkList); };
+ return false;
+ }
+ if (!thcycle) {
+ if (!this._linkList.equals(temp._linkList)) {
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._linkList);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._linkList);
+ return false;
+ }
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._linkList);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._linkList);
+ }
+ }
+ } else if (temp._linkList != null)
return false;
if (this._propertyList != null) {
if (temp._propertyList == null) return false;
- else if (!(this._propertyList.equals(temp._propertyList)))
- return false;
- }
- else if (temp._propertyList != null)
+ if (this._propertyList != temp._propertyList) {
+ thcycle=org.castor.util.CycleBreaker.startingToCycle(this._propertyList);
+ tmcycle=org.castor.util.CycleBreaker.startingToCycle(temp._propertyList);
+ if (thcycle!=tmcycle) {
+ if (!thcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(this._propertyList); };
+ if (!tmcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(temp._propertyList); };
+ return false;
+ }
+ if (!thcycle) {
+ if (!this._propertyList.equals(temp._propertyList)) {
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._propertyList);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._propertyList);
+ return false;
+ }
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._propertyList);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._propertyList);
+ }
+ }
+ } else if (temp._propertyList != null)
return false;
return true;
}
return false;
- } //-- boolean equals(java.lang.Object)
+ }
/**
* Returns the value of field 'accessionId'. The field
* special property of the dbRef object ?
*
*
- * @return String
- * @return the value of field 'accessionId'.
+ * @return the value of field 'AccessionId'.
*/
- public java.lang.String getAccessionId()
- {
+ public java.lang.String getAccessionId(
+ ) {
return this._accessionId;
- } //-- java.lang.String getAccessionId()
+ }
/**
* Returns the value of field 'id'. The field 'id' has the
* following description: Primary Key for vamsas object
* referencing
*
- * @return String
- * @return the value of field 'id'.
+ * @return the value of field 'Id'.
*/
- public java.lang.String getId()
- {
+ public java.lang.String getId(
+ ) {
return this._id;
- } //-- java.lang.String getId()
+ }
/**
- * Method getLink
- *
- *
+ * Method getLink.
*
* @param index
- * @return Link
- */
- public uk.ac.vamsas.objects.core.Link getLink(int index)
- throws java.lang.IndexOutOfBoundsException
- {
- //-- check bounds for index
- if ((index < 0) || (index > _linkList.size())) {
- throw new IndexOutOfBoundsException("getLink: Index value '"+index+"' not in range [0.."+_linkList.size()+ "]");
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ * @return the value of the uk.ac.vamsas.objects.core.Link at
+ * the given index
+ */
+ public uk.ac.vamsas.objects.core.Link getLink(
+ final int index)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
+ if (index < 0 || index >= this._linkList.size()) {
+ throw new IndexOutOfBoundsException("getLink: Index value '" + index + "' not in range [0.." + (this._linkList.size() - 1) + "]");
}
- return (uk.ac.vamsas.objects.core.Link) _linkList.elementAt(index);
- } //-- uk.ac.vamsas.objects.core.Link getLink(int)
+ return (uk.ac.vamsas.objects.core.Link) _linkList.get(index);
+ }
/**
- * Method getLink
+ * Method getLink.Returns the contents of the collection in an
+ * Array. <p>Note: Just in case the collection contents are
+ * changing in another thread, we pass a 0-length Array of the
+ * correct type into the API call. This way we <i>know</i>
+ * that the Array returned is of exactly the correct length.
*
- *
- *
- * @return Link
+ * @return this collection as an Array
*/
- public uk.ac.vamsas.objects.core.Link[] getLink()
- {
- int size = _linkList.size();
- uk.ac.vamsas.objects.core.Link[] mArray = new uk.ac.vamsas.objects.core.Link[size];
- for (int index = 0; index < size; index++) {
- mArray[index] = (uk.ac.vamsas.objects.core.Link) _linkList.elementAt(index);
- }
- return mArray;
- } //-- uk.ac.vamsas.objects.core.Link[] getLink()
+ public uk.ac.vamsas.objects.core.Link[] getLink(
+ ) {
+ uk.ac.vamsas.objects.core.Link[] array = new uk.ac.vamsas.objects.core.Link[0];
+ return (uk.ac.vamsas.objects.core.Link[]) this._linkList.toArray(array);
+ }
/**
- * Method getLinkCount
- *
+ * Method getLinkAsReference.Returns a reference to
+ * '_linkList'. No type checking is performed on any
+ * modifications to the Vector.
*
- *
- * @return int
+ * @return a reference to the Vector backing this class
*/
- public int getLinkCount()
- {
- return _linkList.size();
- } //-- int getLinkCount()
+ public java.util.Vector getLinkAsReference(
+ ) {
+ return this._linkList;
+ }
/**
- * Method getMap
- *
- *
- *
- * @param index
- * @return Map
- */
- public uk.ac.vamsas.objects.core.Map getMap(int index)
- throws java.lang.IndexOutOfBoundsException
- {
- //-- check bounds for index
- if ((index < 0) || (index > _mapList.size())) {
- throw new IndexOutOfBoundsException("getMap: Index value '"+index+"' not in range [0.."+_mapList.size()+ "]");
- }
-
- return (uk.ac.vamsas.objects.core.Map) _mapList.elementAt(index);
- } //-- uk.ac.vamsas.objects.core.Map getMap(int)
-
- /**
- * Method getMap
- *
- *
+ * Method getLinkCount.
*
- * @return Map
+ * @return the size of this collection
*/
- public uk.ac.vamsas.objects.core.Map[] getMap()
- {
- int size = _mapList.size();
- uk.ac.vamsas.objects.core.Map[] mArray = new uk.ac.vamsas.objects.core.Map[size];
- for (int index = 0; index < size; index++) {
- mArray[index] = (uk.ac.vamsas.objects.core.Map) _mapList.elementAt(index);
- }
- return mArray;
- } //-- uk.ac.vamsas.objects.core.Map[] getMap()
+ public int getLinkCount(
+ ) {
+ return this._linkList.size();
+ }
/**
- * Method getMapCount
- *
- *
+ * Returns the value of field 'map'. The field 'map' has the
+ * following description: the local mapType maps from the
+ * parent
+ * sequence coordinate frame to the reference
+ * frame defined by the dbRef element.
+ * The mapped mapType is the mapped range defined
+ * on the dbRef element's reference frame.
+ * Conventionally, the unit attribute defaults to 1, or
+ * will be inferred from the local sequence's
+ * dictionary type and any dictionary type associated
+ * with the database being mapped to.
+ * However, it may be used to avoid ambiguity.
+ *
*
- * @return int
+ * @return the value of field 'Map'.
*/
- public int getMapCount()
- {
- return _mapList.size();
- } //-- int getMapCount()
+ public uk.ac.vamsas.objects.core.Map getMap(
+ ) {
+ return this._map;
+ }
/**
- * Method getProperty
- *
- *
+ * Method getProperty.
*
* @param index
- * @return Property
- */
- public uk.ac.vamsas.objects.core.Property getProperty(int index)
- throws java.lang.IndexOutOfBoundsException
- {
- //-- check bounds for index
- if ((index < 0) || (index > _propertyList.size())) {
- throw new IndexOutOfBoundsException("getProperty: Index value '"+index+"' not in range [0.."+_propertyList.size()+ "]");
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ * @return the value of the uk.ac.vamsas.objects.core.Property
+ * at the given index
+ */
+ public uk.ac.vamsas.objects.core.Property getProperty(
+ final int index)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
+ if (index < 0 || index >= this._propertyList.size()) {
+ throw new IndexOutOfBoundsException("getProperty: Index value '" + index + "' not in range [0.." + (this._propertyList.size() - 1) + "]");
}
- return (uk.ac.vamsas.objects.core.Property) _propertyList.elementAt(index);
- } //-- uk.ac.vamsas.objects.core.Property getProperty(int)
+ return (uk.ac.vamsas.objects.core.Property) _propertyList.get(index);
+ }
/**
- * Method getProperty
- *
- *
+ * Method getProperty.Returns the contents of the collection in
+ * an Array. <p>Note: Just in case the collection contents
+ * are changing in another thread, we pass a 0-length Array of
+ * the correct type into the API call. This way we <i>know</i>
+ * that the Array returned is of exactly the correct length.
*
- * @return Property
+ * @return this collection as an Array
*/
- public uk.ac.vamsas.objects.core.Property[] getProperty()
- {
- int size = _propertyList.size();
- uk.ac.vamsas.objects.core.Property[] mArray = new uk.ac.vamsas.objects.core.Property[size];
- for (int index = 0; index < size; index++) {
- mArray[index] = (uk.ac.vamsas.objects.core.Property) _propertyList.elementAt(index);
- }
- return mArray;
- } //-- uk.ac.vamsas.objects.core.Property[] getProperty()
+ public uk.ac.vamsas.objects.core.Property[] getProperty(
+ ) {
+ uk.ac.vamsas.objects.core.Property[] array = new uk.ac.vamsas.objects.core.Property[0];
+ return (uk.ac.vamsas.objects.core.Property[]) this._propertyList.toArray(array);
+ }
/**
- * Method getPropertyCount
- *
+ * Method getPropertyAsReference.Returns a reference to
+ * '_propertyList'. No type checking is performed on any
+ * modifications to the Vector.
*
+ * @return a reference to the Vector backing this class
+ */
+ public java.util.Vector getPropertyAsReference(
+ ) {
+ return this._propertyList;
+ }
+
+ /**
+ * Method getPropertyCount.
*
- * @return int
+ * @return the size of this collection
*/
- public int getPropertyCount()
- {
- return _propertyList.size();
- } //-- int getPropertyCount()
+ public int getPropertyCount(
+ ) {
+ return this._propertyList.size();
+ }
/**
* Returns the value of field 'source'. The field 'source' has
* uncontrolled/unspecified string ID
*
*
- * @return String
- * @return the value of field 'source'.
+ * @return the value of field 'Source'.
*/
- public java.lang.String getSource()
- {
+ public java.lang.String getSource(
+ ) {
return this._source;
- } //-- java.lang.String getSource()
+ }
/**
* Returns the value of field 'version'. The field 'version'
* has the following description: Version must be specified -
*
*
- * @return String
- * @return the value of field 'version'.
+ * @return the value of field 'Version'.
*/
- public java.lang.String getVersion()
- {
+ public java.lang.String getVersion(
+ ) {
return this._version;
- } //-- java.lang.String getVersion()
+ }
/**
- * Method isValid
- *
+ * Overrides the java.lang.Object.hashCode method.
+ * <p>
+ * The following steps came from <b>Effective Java Programming
+ * Language Guide</b> by Joshua Bloch, Chapter 3
*
+ * @return a hash code value for the object.
+ */
+ public int hashCode(
+ ) {
+ int result = super.hashCode();
+
+ long tmp;
+ if (_source != null
+ && !org.castor.util.CycleBreaker.startingToCycle(_source)) {
+ result = 37 * result + _source.hashCode();
+ org.castor.util.CycleBreaker.releaseCycleHandle(_source);
+ }
+ if (_version != null
+ && !org.castor.util.CycleBreaker.startingToCycle(_version)) {
+ result = 37 * result + _version.hashCode();
+ org.castor.util.CycleBreaker.releaseCycleHandle(_version);
+ }
+ if (_accessionId != null
+ && !org.castor.util.CycleBreaker.startingToCycle(_accessionId)) {
+ result = 37 * result + _accessionId.hashCode();
+ org.castor.util.CycleBreaker.releaseCycleHandle(_accessionId);
+ }
+ if (_id != null
+ && !org.castor.util.CycleBreaker.startingToCycle(_id)) {
+ result = 37 * result + _id.hashCode();
+ org.castor.util.CycleBreaker.releaseCycleHandle(_id);
+ }
+ if (_map != null
+ && !org.castor.util.CycleBreaker.startingToCycle(_map)) {
+ result = 37 * result + _map.hashCode();
+ org.castor.util.CycleBreaker.releaseCycleHandle(_map);
+ }
+ if (_linkList != null
+ && !org.castor.util.CycleBreaker.startingToCycle(_linkList)) {
+ result = 37 * result + _linkList.hashCode();
+ org.castor.util.CycleBreaker.releaseCycleHandle(_linkList);
+ }
+ if (_propertyList != null
+ && !org.castor.util.CycleBreaker.startingToCycle(_propertyList)) {
+ result = 37 * result + _propertyList.hashCode();
+ org.castor.util.CycleBreaker.releaseCycleHandle(_propertyList);
+ }
+
+ return result;
+ }
+
+ /**
+ * Method isValid.
*
- * @return boolean
+ * @return true if this object is valid according to the schema
*/
- public boolean isValid()
- {
+ public boolean isValid(
+ ) {
try {
validate();
- }
- catch (org.exolab.castor.xml.ValidationException vex) {
+ } catch (org.exolab.castor.xml.ValidationException vex) {
return false;
}
return true;
- } //-- boolean isValid()
+ }
/**
- * Method marshal
- *
*
*
* @param out
- */
- public void marshal(java.io.Writer out)
- throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException
- {
-
+ * @throws org.exolab.castor.xml.MarshalException if object is
+ * null or if any SAXException is thrown during marshaling
+ * @throws org.exolab.castor.xml.ValidationException if this
+ * object is an invalid instance according to the schema
+ */
+ public void marshal(
+ final java.io.Writer out)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
Marshaller.marshal(this, out);
- } //-- void marshal(java.io.Writer)
+ }
/**
- * Method marshal
- *
*
*
* @param handler
- */
- public void marshal(org.xml.sax.ContentHandler handler)
- throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException
- {
-
+ * @throws java.io.IOException if an IOException occurs during
+ * marshaling
+ * @throws org.exolab.castor.xml.ValidationException if this
+ * object is an invalid instance according to the schema
+ * @throws org.exolab.castor.xml.MarshalException if object is
+ * null or if any SAXException is thrown during marshaling
+ */
+ public void marshal(
+ final org.xml.sax.ContentHandler handler)
+ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
Marshaller.marshal(this, handler);
- } //-- void marshal(org.xml.sax.ContentHandler)
+ }
/**
- * Method removeAllLink
- *
*/
- public void removeAllLink()
- {
- _linkList.removeAllElements();
- } //-- void removeAllLink()
+ public void removeAllLink(
+ ) {
+ this._linkList.clear();
+ }
/**
- * Method removeAllMap
- *
*/
- public void removeAllMap()
- {
- _mapList.removeAllElements();
- } //-- void removeAllMap()
+ public void removeAllProperty(
+ ) {
+ this._propertyList.clear();
+ }
/**
- * Method removeAllProperty
+ * Method removeLink.
*
+ * @param vLink
+ * @return true if the object was removed from the collection.
*/
- public void removeAllProperty()
- {
- _propertyList.removeAllElements();
- } //-- void removeAllProperty()
+ public boolean removeLink(
+ final uk.ac.vamsas.objects.core.Link vLink) {
+ boolean removed = _linkList.remove(vLink);
+ return removed;
+ }
/**
- * Method removeLink
- *
- *
+ * Method removeLinkAt.
*
* @param index
- * @return Link
+ * @return the element removed from the collection
*/
- public uk.ac.vamsas.objects.core.Link removeLink(int index)
- {
- java.lang.Object obj = _linkList.elementAt(index);
- _linkList.removeElementAt(index);
+ public uk.ac.vamsas.objects.core.Link removeLinkAt(
+ final int index) {
+ java.lang.Object obj = this._linkList.remove(index);
return (uk.ac.vamsas.objects.core.Link) obj;
- } //-- uk.ac.vamsas.objects.core.Link removeLink(int)
+ }
/**
- * Method removeMap
+ * Method removeProperty.
*
- *
- *
- * @param index
- * @return Map
+ * @param vProperty
+ * @return true if the object was removed from the collection.
*/
- public uk.ac.vamsas.objects.core.Map removeMap(int index)
- {
- java.lang.Object obj = _mapList.elementAt(index);
- _mapList.removeElementAt(index);
- return (uk.ac.vamsas.objects.core.Map) obj;
- } //-- uk.ac.vamsas.objects.core.Map removeMap(int)
+ public boolean removeProperty(
+ final uk.ac.vamsas.objects.core.Property vProperty) {
+ boolean removed = _propertyList.remove(vProperty);
+ return removed;
+ }
/**
- * Method removeProperty
- *
- *
+ * Method removePropertyAt.
*
* @param index
- * @return Property
+ * @return the element removed from the collection
*/
- public uk.ac.vamsas.objects.core.Property removeProperty(int index)
- {
- java.lang.Object obj = _propertyList.elementAt(index);
- _propertyList.removeElementAt(index);
+ public uk.ac.vamsas.objects.core.Property removePropertyAt(
+ final int index) {
+ java.lang.Object obj = this._propertyList.remove(index);
return (uk.ac.vamsas.objects.core.Property) obj;
- } //-- uk.ac.vamsas.objects.core.Property removeProperty(int)
+ }
/**
* Sets the value of field 'accessionId'. The field
*
* @param accessionId the value of field 'accessionId'.
*/
- public void setAccessionId(java.lang.String accessionId)
- {
+ public void setAccessionId(
+ final java.lang.String accessionId) {
this._accessionId = accessionId;
- } //-- void setAccessionId(java.lang.String)
+ }
/**
* Sets the value of field 'id'. The field 'id' has the
*
* @param id the value of field 'id'.
*/
- public void setId(java.lang.String id)
- {
+ public void setId(
+ final java.lang.String id) {
this._id = id;
- } //-- void setId(java.lang.String)
+ }
/**
- * Method setLink
- *
*
*
* @param index
* @param vLink
- */
- public void setLink(int index, uk.ac.vamsas.objects.core.Link vLink)
- throws java.lang.IndexOutOfBoundsException
- {
- //-- check bounds for index
- if ((index < 0) || (index > _linkList.size())) {
- throw new IndexOutOfBoundsException("setLink: Index value '"+index+"' not in range [0.."+_linkList.size()+ "]");
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
+ public void setLink(
+ final int index,
+ final uk.ac.vamsas.objects.core.Link vLink)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
+ if (index < 0 || index >= this._linkList.size()) {
+ throw new IndexOutOfBoundsException("setLink: Index value '" + index + "' not in range [0.." + (this._linkList.size() - 1) + "]");
}
- _linkList.setElementAt(vLink, index);
- } //-- void setLink(int, uk.ac.vamsas.objects.core.Link)
+
+ this._linkList.set(index, vLink);
+ }
/**
- * Method setLink
*
*
- *
- * @param linkArray
+ * @param vLinkArray
*/
- public void setLink(uk.ac.vamsas.objects.core.Link[] linkArray)
- {
+ public void setLink(
+ final uk.ac.vamsas.objects.core.Link[] vLinkArray) {
//-- copy array
- _linkList.removeAllElements();
- for (int i = 0; i < linkArray.length; i++) {
- _linkList.addElement(linkArray[i]);
+ _linkList.clear();
+
+ for (int i = 0; i < vLinkArray.length; i++) {
+ this._linkList.add(vLinkArray[i]);
}
- } //-- void setLink(uk.ac.vamsas.objects.core.Link)
+ }
/**
- * Method setMap
+ * Sets the value of '_linkList' by copying the given Vector.
+ * All elements will be checked for type safety.
*
+ * @param vLinkList the Vector to copy.
+ */
+ public void setLink(
+ final java.util.Vector vLinkList) {
+ // copy vector
+ this._linkList.clear();
+
+ this._linkList.addAll(vLinkList);
+ }
+
+ /**
+ * Sets the value of '_linkList' by setting it to the given
+ * Vector. No type checking is performed.
+ * @deprecated
+ *
+ * @param linkVector the Vector to set.
+ */
+ public void setLinkAsReference(
+ final java.util.Vector linkVector) {
+ this._linkList = linkVector;
+ }
+
+ /**
+ * Sets the value of field 'map'. The field 'map' has the
+ * following description: the local mapType maps from the
+ * parent
+ * sequence coordinate frame to the reference
+ * frame defined by the dbRef element.
+ * The mapped mapType is the mapped range defined
+ * on the dbRef element's reference frame.
+ * Conventionally, the unit attribute defaults to 1, or
+ * will be inferred from the local sequence's
+ * dictionary type and any dictionary type associated
+ * with the database being mapped to.
+ * However, it may be used to avoid ambiguity.
+ *
+ *
+ * @param map the value of field 'map'.
+ */
+ public void setMap(
+ final uk.ac.vamsas.objects.core.Map map) {
+ this._map = map;
+ }
+
+ /**
*
*
* @param index
- * @param vMap
- */
- public void setMap(int index, uk.ac.vamsas.objects.core.Map vMap)
- throws java.lang.IndexOutOfBoundsException
- {
- //-- check bounds for index
- if ((index < 0) || (index > _mapList.size())) {
- throw new IndexOutOfBoundsException("setMap: Index value '"+index+"' not in range [0.."+_mapList.size()+ "]");
+ * @param vProperty
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
+ public void setProperty(
+ final int index,
+ final uk.ac.vamsas.objects.core.Property vProperty)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
+ if (index < 0 || index >= this._propertyList.size()) {
+ throw new IndexOutOfBoundsException("setProperty: Index value '" + index + "' not in range [0.." + (this._propertyList.size() - 1) + "]");
}
- _mapList.setElementAt(vMap, index);
- } //-- void setMap(int, uk.ac.vamsas.objects.core.Map)
+
+ this._propertyList.set(index, vProperty);
+ }
/**
- * Method setMap
- *
*
*
- * @param mapArray
+ * @param vPropertyArray
*/
- public void setMap(uk.ac.vamsas.objects.core.Map[] mapArray)
- {
+ public void setProperty(
+ final uk.ac.vamsas.objects.core.Property[] vPropertyArray) {
//-- copy array
- _mapList.removeAllElements();
- for (int i = 0; i < mapArray.length; i++) {
- _mapList.addElement(mapArray[i]);
+ _propertyList.clear();
+
+ for (int i = 0; i < vPropertyArray.length; i++) {
+ this._propertyList.add(vPropertyArray[i]);
}
- } //-- void setMap(uk.ac.vamsas.objects.core.Map)
+ }
/**
- * Method setProperty
+ * Sets the value of '_propertyList' by copying the given
+ * Vector. All elements will be checked for type safety.
*
- *
- *
- * @param index
- * @param vProperty
+ * @param vPropertyList the Vector to copy.
*/
- public void setProperty(int index, uk.ac.vamsas.objects.core.Property vProperty)
- throws java.lang.IndexOutOfBoundsException
- {
- //-- check bounds for index
- if ((index < 0) || (index > _propertyList.size())) {
- throw new IndexOutOfBoundsException("setProperty: Index value '"+index+"' not in range [0.."+_propertyList.size()+ "]");
- }
- _propertyList.setElementAt(vProperty, index);
- } //-- void setProperty(int, uk.ac.vamsas.objects.core.Property)
+ public void setProperty(
+ final java.util.Vector vPropertyList) {
+ // copy vector
+ this._propertyList.clear();
+
+ this._propertyList.addAll(vPropertyList);
+ }
/**
- * Method setProperty
- *
+ * Sets the value of '_propertyList' by setting it to the given
+ * Vector. No type checking is performed.
+ * @deprecated
*
- *
- * @param propertyArray
+ * @param propertyVector the Vector to set.
*/
- public void setProperty(uk.ac.vamsas.objects.core.Property[] propertyArray)
- {
- //-- copy array
- _propertyList.removeAllElements();
- for (int i = 0; i < propertyArray.length; i++) {
- _propertyList.addElement(propertyArray[i]);
- }
- } //-- void setProperty(uk.ac.vamsas.objects.core.Property)
+ public void setPropertyAsReference(
+ final java.util.Vector propertyVector) {
+ this._propertyList = propertyVector;
+ }
/**
* Sets the value of field 'source'. The field 'source' has the
*
* @param source the value of field 'source'.
*/
- public void setSource(java.lang.String source)
- {
+ public void setSource(
+ final java.lang.String source) {
this._source = source;
- } //-- void setSource(java.lang.String)
+ }
/**
* Sets the value of field 'version'. The field 'version' has
*
* @param version the value of field 'version'.
*/
- public void setVersion(java.lang.String version)
- {
+ public void setVersion(
+ final java.lang.String version) {
this._version = version;
- } //-- void setVersion(java.lang.String)
+ }
/**
- * Method unmarshal
- *
- *
+ * Method unmarshal.
*
* @param reader
- * @return DbRef
- */
- public static uk.ac.vamsas.objects.core.DbRef unmarshal(java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException
- {
+ * @throws org.exolab.castor.xml.MarshalException if object is
+ * null or if any SAXException is thrown during marshaling
+ * @throws org.exolab.castor.xml.ValidationException if this
+ * object is an invalid instance according to the schema
+ * @return the unmarshaled uk.ac.vamsas.objects.core.DbRef
+ */
+ public static uk.ac.vamsas.objects.core.DbRef unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
return (uk.ac.vamsas.objects.core.DbRef) Unmarshaller.unmarshal(uk.ac.vamsas.objects.core.DbRef.class, reader);
- } //-- uk.ac.vamsas.objects.core.DbRef unmarshal(java.io.Reader)
+ }
/**
- * Method validate
*
+ *
+ * @throws org.exolab.castor.xml.ValidationException if this
+ * object is an invalid instance according to the schema
*/
- public void validate()
- throws org.exolab.castor.xml.ValidationException
- {
+ public void validate(
+ )
+ throws org.exolab.castor.xml.ValidationException {
org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
validator.validate(this);
- } //-- void validate()
+ }
}