/*
* 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$
*/
//- 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;
/**
* Class Tree.
private java.lang.String _id;
/**
- * Field _modifiable
+ * Field _modifiable.
*/
private java.lang.String _modifiable;
/**
- * Field _title
+ * Field _title.
*/
private java.lang.String _title;
/**
- * Field _newickList
+ * Field _newickList.
*/
private java.util.Vector _newickList;
/**
- * Field _propertyList
+ * node identity and mapping data between tree
+ * representations and vamsas document objects
+ */
+ private java.util.Vector _treenodeList;
+
+ /**
+ * Field _propertyList.
*/
private java.util.Vector _propertyList;
/**
- * Field _provenance
+ * Field _provenance.
*/
private uk.ac.vamsas.objects.core.Provenance _provenance;
//- Constructors -/
//----------------/
- public Tree()
- {
+ public Tree() {
super();
- _newickList = new Vector();
- _propertyList = new Vector();
- } //-- uk.ac.vamsas.objects.core.Tree()
+ this._newickList = new java.util.Vector();
+ this._treenodeList = new java.util.Vector();
+ this._propertyList = new java.util.Vector();
+ }
//-----------/
//-----------/
/**
- * Method addNewick
- *
*
*
* @param vNewick
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
*/
- public void addNewick(uk.ac.vamsas.objects.core.Newick vNewick)
- throws java.lang.IndexOutOfBoundsException
- {
- _newickList.addElement(vNewick);
- } //-- void addNewick(uk.ac.vamsas.objects.core.Newick)
+ public void addNewick(
+ final uk.ac.vamsas.objects.core.Newick vNewick)
+ throws java.lang.IndexOutOfBoundsException {
+ this._newickList.addElement(vNewick);
+ }
/**
- * Method addNewick
- *
*
*
* @param index
* @param vNewick
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
*/
- public void addNewick(int index, uk.ac.vamsas.objects.core.Newick vNewick)
- throws java.lang.IndexOutOfBoundsException
- {
- _newickList.insertElementAt(vNewick, index);
- } //-- void addNewick(int, uk.ac.vamsas.objects.core.Newick)
+ public void addNewick(
+ final int index,
+ final uk.ac.vamsas.objects.core.Newick vNewick)
+ throws java.lang.IndexOutOfBoundsException {
+ this._newickList.add(index, vNewick);
+ }
/**
- * 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 enumerateNewick
*
*
+ * @param vTreenode
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
+ public void addTreenode(
+ final uk.ac.vamsas.objects.core.Treenode vTreenode)
+ throws java.lang.IndexOutOfBoundsException {
+ this._treenodeList.addElement(vTreenode);
+ }
+
+ /**
*
- * @return Enumeration
+ *
+ * @param index
+ * @param vTreenode
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
*/
- public java.util.Enumeration enumerateNewick()
- {
- return _newickList.elements();
- } //-- java.util.Enumeration enumerateNewick()
+ public void addTreenode(
+ final int index,
+ final uk.ac.vamsas.objects.core.Treenode vTreenode)
+ throws java.lang.IndexOutOfBoundsException {
+ this._treenodeList.add(index, vTreenode);
+ }
/**
- * Method enumerateProperty
+ * Method enumerateNewick.
*
+ * @return an Enumeration over all
+ * uk.ac.vamsas.objects.core.Newick elements
+ */
+ public java.util.Enumeration enumerateNewick(
+ ) {
+ return this._newickList.elements();
+ }
+
+ /**
+ * Method enumerateProperty.
*
+ * @return an Enumeration over all
+ * uk.ac.vamsas.objects.core.Property elements
+ */
+ public java.util.Enumeration enumerateProperty(
+ ) {
+ return this._propertyList.elements();
+ }
+
+ /**
+ * Method enumerateTreenode.
*
- * @return Enumeration
+ * @return an Enumeration over all
+ * uk.ac.vamsas.objects.core.Treenode elements
*/
- public java.util.Enumeration enumerateProperty()
- {
- return _propertyList.elements();
- } //-- java.util.Enumeration enumerateProperty()
+ public java.util.Enumeration enumerateTreenode(
+ ) {
+ return this._treenodeList.elements();
+ }
/**
- * 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 Tree) {
Tree temp = (Tree)obj;
+ boolean thcycle;
+ boolean tmcycle;
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._modifiable != null) {
if (temp._modifiable == null) return false;
- else if (!(this._modifiable.equals(temp._modifiable)))
- return false;
- }
- else if (temp._modifiable != null)
+ if (this._modifiable != temp._modifiable) {
+ thcycle=org.castor.util.CycleBreaker.startingToCycle(this._modifiable);
+ tmcycle=org.castor.util.CycleBreaker.startingToCycle(temp._modifiable);
+ if (thcycle!=tmcycle) {
+ if (!thcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(this._modifiable); };
+ if (!tmcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(temp._modifiable); };
+ return false;
+ }
+ if (!thcycle) {
+ if (!this._modifiable.equals(temp._modifiable)) {
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._modifiable);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._modifiable);
+ return false;
+ }
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._modifiable);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._modifiable);
+ }
+ }
+ } else if (temp._modifiable != null)
return false;
if (this._title != null) {
if (temp._title == null) return false;
- else if (!(this._title.equals(temp._title)))
- return false;
- }
- else if (temp._title != null)
+ if (this._title != temp._title) {
+ thcycle=org.castor.util.CycleBreaker.startingToCycle(this._title);
+ tmcycle=org.castor.util.CycleBreaker.startingToCycle(temp._title);
+ if (thcycle!=tmcycle) {
+ if (!thcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(this._title); };
+ if (!tmcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(temp._title); };
+ return false;
+ }
+ if (!thcycle) {
+ if (!this._title.equals(temp._title)) {
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._title);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._title);
+ return false;
+ }
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._title);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._title);
+ }
+ }
+ } else if (temp._title != null)
return false;
if (this._newickList != null) {
if (temp._newickList == null) return false;
- else if (!(this._newickList.equals(temp._newickList)))
- return false;
- }
- else if (temp._newickList != null)
+ if (this._newickList != temp._newickList) {
+ thcycle=org.castor.util.CycleBreaker.startingToCycle(this._newickList);
+ tmcycle=org.castor.util.CycleBreaker.startingToCycle(temp._newickList);
+ if (thcycle!=tmcycle) {
+ if (!thcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(this._newickList); };
+ if (!tmcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(temp._newickList); };
+ return false;
+ }
+ if (!thcycle) {
+ if (!this._newickList.equals(temp._newickList)) {
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._newickList);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._newickList);
+ return false;
+ }
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._newickList);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._newickList);
+ }
+ }
+ } else if (temp._newickList != null)
+ return false;
+ if (this._treenodeList != null) {
+ if (temp._treenodeList == null) return false;
+ if (this._treenodeList != temp._treenodeList) {
+ thcycle=org.castor.util.CycleBreaker.startingToCycle(this._treenodeList);
+ tmcycle=org.castor.util.CycleBreaker.startingToCycle(temp._treenodeList);
+ if (thcycle!=tmcycle) {
+ if (!thcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(this._treenodeList); };
+ if (!tmcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(temp._treenodeList); };
+ return false;
+ }
+ if (!thcycle) {
+ if (!this._treenodeList.equals(temp._treenodeList)) {
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._treenodeList);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._treenodeList);
+ return false;
+ }
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._treenodeList);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._treenodeList);
+ }
+ }
+ } else if (temp._treenodeList != 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;
if (this._provenance != null) {
if (temp._provenance == null) return false;
- else if (!(this._provenance.equals(temp._provenance)))
- return false;
- }
- else if (temp._provenance != null)
+ if (this._provenance != temp._provenance) {
+ thcycle=org.castor.util.CycleBreaker.startingToCycle(this._provenance);
+ tmcycle=org.castor.util.CycleBreaker.startingToCycle(temp._provenance);
+ if (thcycle!=tmcycle) {
+ if (!thcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(this._provenance); };
+ if (!tmcycle) { org.castor.util.CycleBreaker.releaseCycleHandle(temp._provenance); };
+ return false;
+ }
+ if (!thcycle) {
+ if (!this._provenance.equals(temp._provenance)) {
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._provenance);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._provenance);
+ return false;
+ }
+ org.castor.util.CycleBreaker.releaseCycleHandle(this._provenance);
+ org.castor.util.CycleBreaker.releaseCycleHandle(temp._provenance);
+ }
+ }
+ } else if (temp._provenance != null)
return false;
return true;
}
return false;
- } //-- boolean equals(java.lang.Object)
+ }
/**
* 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()
+ }
/**
* Returns the value of field 'modifiable'.
*
- * @return String
- * @return the value of field 'modifiable'.
+ * @return the value of field 'Modifiable'.
*/
- public java.lang.String getModifiable()
- {
+ public java.lang.String getModifiable(
+ ) {
return this._modifiable;
- } //-- java.lang.String getModifiable()
+ }
/**
- * Method getNewick
- *
- *
+ * Method getNewick.
*
* @param index
- * @return Newick
- */
- public uk.ac.vamsas.objects.core.Newick getNewick(int index)
- throws java.lang.IndexOutOfBoundsException
- {
- //-- check bounds for index
- if ((index < 0) || (index > _newickList.size())) {
- throw new IndexOutOfBoundsException("getNewick: Index value '"+index+"' not in range [0.."+_newickList.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.Newick at
+ * the given index
+ */
+ public uk.ac.vamsas.objects.core.Newick getNewick(
+ final int index)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
+ if (index < 0 || index >= this._newickList.size()) {
+ throw new IndexOutOfBoundsException("getNewick: Index value '" + index + "' not in range [0.." + (this._newickList.size() - 1) + "]");
}
- return (uk.ac.vamsas.objects.core.Newick) _newickList.elementAt(index);
- } //-- uk.ac.vamsas.objects.core.Newick getNewick(int)
+ return (uk.ac.vamsas.objects.core.Newick) _newickList.get(index);
+ }
/**
- * Method getNewick
- *
- *
+ * Method getNewick.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 Newick
+ * @return this collection as an Array
*/
- public uk.ac.vamsas.objects.core.Newick[] getNewick()
- {
- int size = _newickList.size();
- uk.ac.vamsas.objects.core.Newick[] mArray = new uk.ac.vamsas.objects.core.Newick[size];
- for (int index = 0; index < size; index++) {
- mArray[index] = (uk.ac.vamsas.objects.core.Newick) _newickList.elementAt(index);
- }
- return mArray;
- } //-- uk.ac.vamsas.objects.core.Newick[] getNewick()
+ public uk.ac.vamsas.objects.core.Newick[] getNewick(
+ ) {
+ uk.ac.vamsas.objects.core.Newick[] array = new uk.ac.vamsas.objects.core.Newick[0];
+ return (uk.ac.vamsas.objects.core.Newick[]) this._newickList.toArray(array);
+ }
/**
- * Method getNewickCount
- *
+ * Method getNewickAsReference.Returns a reference to
+ * '_newickList'. No type checking is performed on any
+ * modifications to the Vector.
*
- *
- * @return int
+ * @return a reference to the Vector backing this class
*/
- public int getNewickCount()
- {
- return _newickList.size();
- } //-- int getNewickCount()
+ public java.util.Vector getNewickAsReference(
+ ) {
+ return this._newickList;
+ }
/**
- * Method getProperty
- *
+ * Method getNewickCount.
*
+ * @return the size of this collection
+ */
+ public int getNewickCount(
+ ) {
+ return this._newickList.size();
+ }
+
+ /**
+ * 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 'provenance'.
*
- * @return Provenance
- * @return the value of field 'provenance'.
+ * @return the value of field 'Provenance'.
*/
- public uk.ac.vamsas.objects.core.Provenance getProvenance()
- {
+ public uk.ac.vamsas.objects.core.Provenance getProvenance(
+ ) {
return this._provenance;
- } //-- uk.ac.vamsas.objects.core.Provenance getProvenance()
+ }
/**
* Returns the value of field 'title'.
*
- * @return String
- * @return the value of field 'title'.
+ * @return the value of field 'Title'.
*/
- public java.lang.String getTitle()
- {
+ public java.lang.String getTitle(
+ ) {
return this._title;
- } //-- java.lang.String getTitle()
+ }
+
+ /**
+ * Method getTreenode.
+ *
+ * @param index
+ * @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.Treenode
+ * at the given index
+ */
+ public uk.ac.vamsas.objects.core.Treenode getTreenode(
+ final int index)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
+ if (index < 0 || index >= this._treenodeList.size()) {
+ throw new IndexOutOfBoundsException("getTreenode: Index value '" + index + "' not in range [0.." + (this._treenodeList.size() - 1) + "]");
+ }
+
+ return (uk.ac.vamsas.objects.core.Treenode) _treenodeList.get(index);
+ }
/**
- * Method isValid
+ * Method getTreenode.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 this collection as an Array
+ */
+ public uk.ac.vamsas.objects.core.Treenode[] getTreenode(
+ ) {
+ uk.ac.vamsas.objects.core.Treenode[] array = new uk.ac.vamsas.objects.core.Treenode[0];
+ return (uk.ac.vamsas.objects.core.Treenode[]) this._treenodeList.toArray(array);
+ }
+
+ /**
+ * Method getTreenodeAsReference.Returns a reference to
+ * '_treenodeList'. No type checking is performed on any
+ * modifications to the Vector.
+ *
+ * @return a reference to the Vector backing this class
+ */
+ public java.util.Vector getTreenodeAsReference(
+ ) {
+ return this._treenodeList;
+ }
+
+ /**
+ * Method getTreenodeCount.
+ *
+ * @return the size of this collection
+ */
+ public int getTreenodeCount(
+ ) {
+ return this._treenodeList.size();
+ }
+
+ /**
+ * 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 (_id != null
+ && !org.castor.util.CycleBreaker.startingToCycle(_id)) {
+ result = 37 * result + _id.hashCode();
+ org.castor.util.CycleBreaker.releaseCycleHandle(_id);
+ }
+ if (_modifiable != null
+ && !org.castor.util.CycleBreaker.startingToCycle(_modifiable)) {
+ result = 37 * result + _modifiable.hashCode();
+ org.castor.util.CycleBreaker.releaseCycleHandle(_modifiable);
+ }
+ if (_title != null
+ && !org.castor.util.CycleBreaker.startingToCycle(_title)) {
+ result = 37 * result + _title.hashCode();
+ org.castor.util.CycleBreaker.releaseCycleHandle(_title);
+ }
+ if (_newickList != null
+ && !org.castor.util.CycleBreaker.startingToCycle(_newickList)) {
+ result = 37 * result + _newickList.hashCode();
+ org.castor.util.CycleBreaker.releaseCycleHandle(_newickList);
+ }
+ if (_treenodeList != null
+ && !org.castor.util.CycleBreaker.startingToCycle(_treenodeList)) {
+ result = 37 * result + _treenodeList.hashCode();
+ org.castor.util.CycleBreaker.releaseCycleHandle(_treenodeList);
+ }
+ if (_propertyList != null
+ && !org.castor.util.CycleBreaker.startingToCycle(_propertyList)) {
+ result = 37 * result + _propertyList.hashCode();
+ org.castor.util.CycleBreaker.releaseCycleHandle(_propertyList);
+ }
+ if (_provenance != null
+ && !org.castor.util.CycleBreaker.startingToCycle(_provenance)) {
+ result = 37 * result + _provenance.hashCode();
+ org.castor.util.CycleBreaker.releaseCycleHandle(_provenance);
+ }
+
+ 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
+ * @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(java.io.Writer out)
- throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException
- {
-
+ 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
+ * @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(org.xml.sax.ContentHandler handler)
- throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException
- {
-
+ 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 removeAllNewick
- *
*/
- public void removeAllNewick()
- {
- _newickList.removeAllElements();
- } //-- void removeAllNewick()
+ public void removeAllNewick(
+ ) {
+ this._newickList.clear();
+ }
/**
- * Method removeAllProperty
- *
*/
- public void removeAllProperty()
- {
- _propertyList.removeAllElements();
- } //-- void removeAllProperty()
+ public void removeAllProperty(
+ ) {
+ this._propertyList.clear();
+ }
/**
- * Method removeNewick
- *
+ */
+ public void removeAllTreenode(
+ ) {
+ this._treenodeList.clear();
+ }
+
+ /**
+ * Method removeNewick.
*
+ * @param vNewick
+ * @return true if the object was removed from the collection.
+ */
+ public boolean removeNewick(
+ final uk.ac.vamsas.objects.core.Newick vNewick) {
+ boolean removed = _newickList.remove(vNewick);
+ return removed;
+ }
+
+ /**
+ * Method removeNewickAt.
*
* @param index
- * @return Newick
+ * @return the element removed from the collection
*/
- public uk.ac.vamsas.objects.core.Newick removeNewick(int index)
- {
- java.lang.Object obj = _newickList.elementAt(index);
- _newickList.removeElementAt(index);
+ public uk.ac.vamsas.objects.core.Newick removeNewickAt(
+ final int index) {
+ java.lang.Object obj = this._newickList.remove(index);
return (uk.ac.vamsas.objects.core.Newick) obj;
- } //-- uk.ac.vamsas.objects.core.Newick removeNewick(int)
+ }
/**
- * Method removeProperty
- *
+ * Method removeProperty.
*
+ * @param vProperty
+ * @return true if the object was removed from the collection.
+ */
+ public boolean removeProperty(
+ final uk.ac.vamsas.objects.core.Property vProperty) {
+ boolean removed = _propertyList.remove(vProperty);
+ return removed;
+ }
+
+ /**
+ * 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)
+ }
+
+ /**
+ * Method removeTreenode.
+ *
+ * @param vTreenode
+ * @return true if the object was removed from the collection.
+ */
+ public boolean removeTreenode(
+ final uk.ac.vamsas.objects.core.Treenode vTreenode) {
+ boolean removed = _treenodeList.remove(vTreenode);
+ return removed;
+ }
+
+ /**
+ * Method removeTreenodeAt.
+ *
+ * @param index
+ * @return the element removed from the collection
+ */
+ public uk.ac.vamsas.objects.core.Treenode removeTreenodeAt(
+ final int index) {
+ java.lang.Object obj = this._treenodeList.remove(index);
+ return (uk.ac.vamsas.objects.core.Treenode) obj;
+ }
/**
* 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)
+ }
/**
* Sets the value of field 'modifiable'.
*
* @param modifiable the value of field 'modifiable'.
*/
- public void setModifiable(java.lang.String modifiable)
- {
+ public void setModifiable(
+ final java.lang.String modifiable) {
this._modifiable = modifiable;
- } //-- void setModifiable(java.lang.String)
+ }
/**
- * Method setNewick
- *
*
*
* @param index
* @param vNewick
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
*/
- public void setNewick(int index, uk.ac.vamsas.objects.core.Newick vNewick)
- throws java.lang.IndexOutOfBoundsException
- {
- //-- check bounds for index
- if ((index < 0) || (index > _newickList.size())) {
- throw new IndexOutOfBoundsException("setNewick: Index value '"+index+"' not in range [0.."+_newickList.size()+ "]");
+ public void setNewick(
+ final int index,
+ final uk.ac.vamsas.objects.core.Newick vNewick)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
+ if (index < 0 || index >= this._newickList.size()) {
+ throw new IndexOutOfBoundsException("setNewick: Index value '" + index + "' not in range [0.." + (this._newickList.size() - 1) + "]");
}
- _newickList.setElementAt(vNewick, index);
- } //-- void setNewick(int, uk.ac.vamsas.objects.core.Newick)
+
+ this._newickList.set(index, vNewick);
+ }
/**
- * Method setNewick
- *
*
*
- * @param newickArray
+ * @param vNewickArray
*/
- public void setNewick(uk.ac.vamsas.objects.core.Newick[] newickArray)
- {
+ public void setNewick(
+ final uk.ac.vamsas.objects.core.Newick[] vNewickArray) {
//-- copy array
- _newickList.removeAllElements();
- for (int i = 0; i < newickArray.length; i++) {
- _newickList.addElement(newickArray[i]);
+ _newickList.clear();
+
+ for (int i = 0; i < vNewickArray.length; i++) {
+ this._newickList.add(vNewickArray[i]);
}
- } //-- void setNewick(uk.ac.vamsas.objects.core.Newick)
+ }
/**
- * Method setProperty
+ * Sets the value of '_newickList' by copying the given Vector.
+ * All elements will be checked for type safety.
*
+ * @param vNewickList the Vector to copy.
+ */
+ public void setNewick(
+ final java.util.Vector vNewickList) {
+ // copy vector
+ this._newickList.clear();
+
+ this._newickList.addAll(vNewickList);
+ }
+
+ /**
+ * Sets the value of '_newickList' by setting it to the given
+ * Vector. No type checking is performed.
+ * @deprecated
+ *
+ * @param newickVector the Vector to set.
+ */
+ public void setNewickAsReference(
+ final java.util.Vector newickVector) {
+ this._newickList = newickVector;
+ }
+
+ /**
*
*
* @param index
* @param vProperty
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
*/
- 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()+ "]");
+ 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) + "]");
}
- _propertyList.setElementAt(vProperty, index);
- } //-- void setProperty(int, uk.ac.vamsas.objects.core.Property)
+
+ this._propertyList.set(index, vProperty);
+ }
/**
- * Method setProperty
- *
*
*
- * @param propertyArray
+ * @param vPropertyArray
*/
- public void setProperty(uk.ac.vamsas.objects.core.Property[] propertyArray)
- {
+ public void setProperty(
+ final uk.ac.vamsas.objects.core.Property[] vPropertyArray) {
//-- copy array
- _propertyList.removeAllElements();
- for (int i = 0; i < propertyArray.length; i++) {
- _propertyList.addElement(propertyArray[i]);
+ _propertyList.clear();
+
+ for (int i = 0; i < vPropertyArray.length; i++) {
+ this._propertyList.add(vPropertyArray[i]);
}
- } //-- void setProperty(uk.ac.vamsas.objects.core.Property)
+ }
+
+ /**
+ * Sets the value of '_propertyList' by copying the given
+ * Vector. All elements will be checked for type safety.
+ *
+ * @param vPropertyList the Vector to copy.
+ */
+ public void setProperty(
+ final java.util.Vector vPropertyList) {
+ // copy vector
+ this._propertyList.clear();
+
+ this._propertyList.addAll(vPropertyList);
+ }
+
+ /**
+ * Sets the value of '_propertyList' by setting it to the given
+ * Vector. No type checking is performed.
+ * @deprecated
+ *
+ * @param propertyVector the Vector to set.
+ */
+ public void setPropertyAsReference(
+ final java.util.Vector propertyVector) {
+ this._propertyList = propertyVector;
+ }
/**
* Sets the value of field 'provenance'.
*
* @param provenance the value of field 'provenance'.
*/
- public void setProvenance(uk.ac.vamsas.objects.core.Provenance provenance)
- {
+ public void setProvenance(
+ final uk.ac.vamsas.objects.core.Provenance provenance) {
this._provenance = provenance;
- } //-- void setProvenance(uk.ac.vamsas.objects.core.Provenance)
+ }
/**
* Sets the value of field 'title'.
*
* @param title the value of field 'title'.
*/
- public void setTitle(java.lang.String title)
- {
+ public void setTitle(
+ final java.lang.String title) {
this._title = title;
- } //-- void setTitle(java.lang.String)
+ }
+
+ /**
+ *
+ *
+ * @param index
+ * @param vTreenode
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
+ public void setTreenode(
+ final int index,
+ final uk.ac.vamsas.objects.core.Treenode vTreenode)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
+ if (index < 0 || index >= this._treenodeList.size()) {
+ throw new IndexOutOfBoundsException("setTreenode: Index value '" + index + "' not in range [0.." + (this._treenodeList.size() - 1) + "]");
+ }
+
+ this._treenodeList.set(index, vTreenode);
+ }
+
+ /**
+ *
+ *
+ * @param vTreenodeArray
+ */
+ public void setTreenode(
+ final uk.ac.vamsas.objects.core.Treenode[] vTreenodeArray) {
+ //-- copy array
+ _treenodeList.clear();
+
+ for (int i = 0; i < vTreenodeArray.length; i++) {
+ this._treenodeList.add(vTreenodeArray[i]);
+ }
+ }
/**
- * Method unmarshal
+ * Sets the value of '_treenodeList' by copying the given
+ * Vector. All elements will be checked for type safety.
*
+ * @param vTreenodeList the Vector to copy.
+ */
+ public void setTreenode(
+ final java.util.Vector vTreenodeList) {
+ // copy vector
+ this._treenodeList.clear();
+
+ this._treenodeList.addAll(vTreenodeList);
+ }
+
+ /**
+ * Sets the value of '_treenodeList' by setting it to the given
+ * Vector. No type checking is performed.
+ * @deprecated
*
+ * @param treenodeVector the Vector to set.
+ */
+ public void setTreenodeAsReference(
+ final java.util.Vector treenodeVector) {
+ this._treenodeList = treenodeVector;
+ }
+
+ /**
+ * Method unmarshal.
*
* @param reader
- * @return Tree
+ * @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.Tree
*/
- public static uk.ac.vamsas.objects.core.Tree unmarshal(java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException
- {
+ public static uk.ac.vamsas.objects.core.Tree unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
return (uk.ac.vamsas.objects.core.Tree) Unmarshaller.unmarshal(uk.ac.vamsas.objects.core.Tree.class, reader);
- } //-- uk.ac.vamsas.objects.core.Tree 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()
+ }
}