-/*\r
- * This class was automatically generated with\r
- * <a href="http://www.castor.org">Castor 0.9.6</a>, using an XML\r
- * Schema.\r
- * $Id$\r
- */\r
-/*\r
-* Jalview - A Sequence Alignment Editor and Viewer\r
-* Copyright (C) 2005 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
-*\r
-* This program is free software; you can redistribute it and/or\r
-* modify it under the terms of the GNU General Public License\r
-* as published by the Free Software Foundation; either version 2\r
-* of the License, or (at your option) any later version.\r
-*\r
-* This program is distributed in the hope that it will be useful,\r
-* but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
-* GNU General Public License for more details.\r
-*\r
-* You should have received a copy of the GNU General Public License\r
-* along with this program; if not, write to the Free Software\r
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA\r
-*/\r
-package jalview.binding;\r
-\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
-\r
-import org.xml.sax.ContentHandler;\r
-\r
-//---------------------------------/\r
-//- Imported classes and packages -/\r
-//---------------------------------/\r
-import java.io.IOException;\r
-import java.io.Reader;\r
-import java.io.Serializable;\r
-import java.io.Writer;\r
-\r
-import java.util.Enumeration;\r
-import java.util.Vector;\r
-\r
-\r
-/**\r
- * Class VAMSAS.\r
- *\r
- * @version $Revision$ $Date$\r
- */\r
-public class VAMSAS implements java.io.Serializable {\r
- //--------------------------/\r
- //- Class/Member Variables -/\r
- //--------------------------/\r
-\r
- /**\r
- * Field _alignmentList\r
- */\r
- private java.util.Vector _alignmentList;\r
-\r
- /**\r
- * Field _treeList\r
- */\r
- private java.util.Vector _treeList;\r
-\r
- /**\r
- * Field _sequenceSetList\r
- */\r
- private java.util.Vector _sequenceSetList;\r
-\r
- //----------------/\r
- //- Constructors -/\r
- //----------------/\r
- public VAMSAS() {\r
- super();\r
- _alignmentList = new Vector();\r
- _treeList = new Vector();\r
- _sequenceSetList = new Vector();\r
- }\r
- //-- jalview.binding.VAMSAS()\r
- //-----------/\r
-\r
- public void addAlignment(jalview.binding.Alignment vAlignment)\r
- throws java.lang.IndexOutOfBoundsException {\r
- _alignmentList.addElement(vAlignment);\r
- }\r
- //-- void addAlignment(jalview.binding.Alignment)\r
-\r
- /**\r
- * Method addAlignment\r
- *\r
- *\r
- *\r
- * @param index\r
- * @param vAlignment\r
- */\r
- public void addAlignment(int index, jalview.binding.Alignment vAlignment)\r
- throws java.lang.IndexOutOfBoundsException {\r
- _alignmentList.insertElementAt(vAlignment, index);\r
- }\r
- //-- void addAlignment(int, jalview.binding.Alignment)\r
-\r
- /**\r
- * Method addSequenceSet\r
- *\r
- *\r
- *\r
- * @param vSequenceSet\r
- */\r
- public void addSequenceSet(jalview.binding.SequenceSet vSequenceSet)\r
- throws java.lang.IndexOutOfBoundsException {\r
- _sequenceSetList.addElement(vSequenceSet);\r
- }\r
- //-- void addSequenceSet(jalview.binding.SequenceSet)\r
-\r
- /**\r
- * Method addSequenceSet\r
- *\r
- *\r
- *\r
- * @param index\r
- * @param vSequenceSet\r
- */\r
- public void addSequenceSet(int index,\r
- jalview.binding.SequenceSet vSequenceSet)\r
- throws java.lang.IndexOutOfBoundsException {\r
- _sequenceSetList.insertElementAt(vSequenceSet, index);\r
- }\r
- //-- void addSequenceSet(int, jalview.binding.SequenceSet)\r
-\r
- /**\r
- * Method addTree\r
- *\r
- *\r
- *\r
- * @param vTree\r
- */\r
- public void addTree(java.lang.String vTree)\r
- throws java.lang.IndexOutOfBoundsException {\r
- _treeList.addElement(vTree);\r
- }\r
- //-- void addTree(java.lang.String)\r
-\r
- /**\r
- * Method addTree\r
- *\r
- *\r
- *\r
- * @param index\r
- * @param vTree\r
- */\r
- public void addTree(int index, java.lang.String vTree)\r
- throws java.lang.IndexOutOfBoundsException {\r
- _treeList.insertElementAt(vTree, index);\r
- }\r
- //-- void addTree(int, java.lang.String)\r
-\r
- /**\r
- * Method enumerateAlignment\r
- *\r
- *\r
- *\r
- * @return Enumeration\r
- */\r
- public java.util.Enumeration enumerateAlignment() {\r
- return _alignmentList.elements();\r
- }\r
- //-- java.util.Enumeration enumerateAlignment()\r
-\r
- /**\r
- * Method enumerateSequenceSet\r
- *\r
- *\r
- *\r
- * @return Enumeration\r
- */\r
- public java.util.Enumeration enumerateSequenceSet() {\r
- return _sequenceSetList.elements();\r
- }\r
- //-- java.util.Enumeration enumerateSequenceSet()\r
-\r
- /**\r
- * Method enumerateTree\r
- *\r
- *\r
- *\r
- * @return Enumeration\r
- */\r
- public java.util.Enumeration enumerateTree() {\r
- return _treeList.elements();\r
- }\r
- //-- java.util.Enumeration enumerateTree()\r
-\r
- /**\r
- * Method getAlignment\r
- *\r
- *\r
- *\r
- * @param index\r
- * @return Alignment\r
- */\r
- public jalview.binding.Alignment getAlignment(int index)\r
- throws java.lang.IndexOutOfBoundsException {\r
- //-- check bounds for index\r
- if ((index < 0) || (index > _alignmentList.size())) {\r
- throw new IndexOutOfBoundsException();\r
- }\r
-\r
- return (jalview.binding.Alignment) _alignmentList.elementAt(index);\r
- }\r
- //-- jalview.binding.Alignment getAlignment(int)\r
-\r
- /**\r
- * Method getAlignment\r
- *\r
- *\r
- *\r
- * @return Alignment\r
- */\r
- public jalview.binding.Alignment[] getAlignment() {\r
- int size = _alignmentList.size();\r
- jalview.binding.Alignment[] mArray = new jalview.binding.Alignment[size];\r
-\r
- for (int index = 0; index < size; index++) {\r
- mArray[index] = (jalview.binding.Alignment) _alignmentList.elementAt(index);\r
- }\r
-\r
- return mArray;\r
- }\r
- //-- jalview.binding.Alignment[] getAlignment()\r
-\r
- /**\r
- * Method getAlignmentCount\r
- *\r
- *\r
- *\r
- * @return int\r
- */\r
- public int getAlignmentCount() {\r
- return _alignmentList.size();\r
- }\r
- //-- int getAlignmentCount()\r
-\r
- /**\r
- * Method getSequenceSet\r
- *\r
- *\r
- *\r
- * @param index\r
- * @return SequenceSet\r
- */\r
- public jalview.binding.SequenceSet getSequenceSet(int index)\r
- throws java.lang.IndexOutOfBoundsException {\r
- //-- check bounds for index\r
- if ((index < 0) || (index > _sequenceSetList.size())) {\r
- throw new IndexOutOfBoundsException();\r
- }\r
-\r
- return (jalview.binding.SequenceSet) _sequenceSetList.elementAt(index);\r
- }\r
- //-- jalview.binding.SequenceSet getSequenceSet(int)\r
-\r
- /**\r
- * Method getSequenceSet\r
- *\r
- *\r
- *\r
- * @return SequenceSet\r
- */\r
- public jalview.binding.SequenceSet[] getSequenceSet() {\r
- int size = _sequenceSetList.size();\r
- jalview.binding.SequenceSet[] mArray = new jalview.binding.SequenceSet[size];\r
-\r
- for (int index = 0; index < size; index++) {\r
- mArray[index] = (jalview.binding.SequenceSet) _sequenceSetList.elementAt(index);\r
- }\r
-\r
- return mArray;\r
- }\r
- //-- jalview.binding.SequenceSet[] getSequenceSet()\r
-\r
- /**\r
- * Method getSequenceSetCount\r
- *\r
- *\r
- *\r
- * @return int\r
- */\r
- public int getSequenceSetCount() {\r
- return _sequenceSetList.size();\r
- }\r
- //-- int getSequenceSetCount()\r
-\r
- /**\r
- * Method getTree\r
- *\r
- *\r
- *\r
- * @param index\r
- * @return String\r
- */\r
- public java.lang.String getTree(int index)\r
- throws java.lang.IndexOutOfBoundsException {\r
- //-- check bounds for index\r
- if ((index < 0) || (index > _treeList.size())) {\r
- throw new IndexOutOfBoundsException();\r
- }\r
-\r
- return (String) _treeList.elementAt(index);\r
- }\r
- //-- java.lang.String getTree(int)\r
-\r
- /**\r
- * Method getTree\r
- *\r
- *\r
- *\r
- * @return String\r
- */\r
- public java.lang.String[] getTree() {\r
- int size = _treeList.size();\r
- java.lang.String[] mArray = new java.lang.String[size];\r
-\r
- for (int index = 0; index < size; index++) {\r
- mArray[index] = (String) _treeList.elementAt(index);\r
- }\r
-\r
- return mArray;\r
- }\r
- //-- java.lang.String[] getTree()\r
-\r
- /**\r
- * Method getTreeCount\r
- *\r
- *\r
- *\r
- * @return int\r
- */\r
- public int getTreeCount() {\r
- return _treeList.size();\r
- }\r
- //-- int getTreeCount()\r
-\r
- /**\r
- * Method isValid\r
- *\r
- *\r
- *\r
- * @return boolean\r
- */\r
- public boolean isValid() {\r
- try {\r
- validate();\r
- } catch (org.exolab.castor.xml.ValidationException vex) {\r
- return false;\r
- }\r
-\r
- return true;\r
- }\r
- //-- boolean isValid()\r
-\r
- /**\r
- * Method marshal\r
- *\r
- *\r
- *\r
- * @param out\r
- */\r
- public void marshal(java.io.Writer out)\r
- throws org.exolab.castor.xml.MarshalException, \r
- org.exolab.castor.xml.ValidationException {\r
- Marshaller.marshal(this, out);\r
- }\r
- //-- void marshal(java.io.Writer)\r
-\r
- /**\r
- * Method marshal\r
- *\r
- *\r
- *\r
- * @param handler\r
- */\r
- public void marshal(org.xml.sax.ContentHandler handler)\r
- throws java.io.IOException, org.exolab.castor.xml.MarshalException, \r
- org.exolab.castor.xml.ValidationException {\r
- Marshaller.marshal(this, handler);\r
- }\r
- //-- void marshal(org.xml.sax.ContentHandler)\r
-\r
- /**\r
- * Method removeAlignment\r
- *\r
- *\r
- *\r
- * @param index\r
- * @return Alignment\r
- */\r
- public jalview.binding.Alignment removeAlignment(int index) {\r
- java.lang.Object obj = _alignmentList.elementAt(index);\r
- _alignmentList.removeElementAt(index);\r
-\r
- return (jalview.binding.Alignment) obj;\r
- }\r
- //-- jalview.binding.Alignment removeAlignment(int)\r
-\r
- /**\r
- * Method removeAllAlignment\r
- *\r
- */\r
- public void removeAllAlignment() {\r
- _alignmentList.removeAllElements();\r
- }\r
- //-- void removeAllAlignment()\r
-\r
- /**\r
- * Method removeAllSequenceSet\r
- *\r
- */\r
- public void removeAllSequenceSet() {\r
- _sequenceSetList.removeAllElements();\r
- }\r
- //-- void removeAllSequenceSet()\r
-\r
- /**\r
- * Method removeAllTree\r
- *\r
- */\r
- public void removeAllTree() {\r
- _treeList.removeAllElements();\r
- }\r
- //-- void removeAllTree()\r
-\r
- /**\r
- * Method removeSequenceSet\r
- *\r
- *\r
- *\r
- * @param index\r
- * @return SequenceSet\r
- */\r
- public jalview.binding.SequenceSet removeSequenceSet(int index) {\r
- java.lang.Object obj = _sequenceSetList.elementAt(index);\r
- _sequenceSetList.removeElementAt(index);\r
-\r
- return (jalview.binding.SequenceSet) obj;\r
- }\r
- //-- jalview.binding.SequenceSet removeSequenceSet(int)\r
-\r
- /**\r
- * Method removeTree\r
- *\r
- *\r
- *\r
- * @param index\r
- * @return String\r
- */\r
- public java.lang.String removeTree(int index) {\r
- java.lang.Object obj = _treeList.elementAt(index);\r
- _treeList.removeElementAt(index);\r
-\r
- return (String) obj;\r
- }\r
- //-- java.lang.String removeTree(int)\r
-\r
- /**\r
- * Method setAlignment\r
- *\r
- *\r
- *\r
- * @param index\r
- * @param vAlignment\r
- */\r
- public void setAlignment(int index, jalview.binding.Alignment vAlignment)\r
- throws java.lang.IndexOutOfBoundsException {\r
- //-- check bounds for index\r
- if ((index < 0) || (index > _alignmentList.size())) {\r
- throw new IndexOutOfBoundsException();\r
- }\r
-\r
- _alignmentList.setElementAt(vAlignment, index);\r
- }\r
- //-- void setAlignment(int, jalview.binding.Alignment)\r
-\r
- /**\r
- * Method setAlignment\r
- *\r
- *\r
- *\r
- * @param alignmentArray\r
- */\r
- public void setAlignment(jalview.binding.Alignment[] alignmentArray) {\r
- //-- copy array\r
- _alignmentList.removeAllElements();\r
-\r
- for (int i = 0; i < alignmentArray.length; i++) {\r
- _alignmentList.addElement(alignmentArray[i]);\r
- }\r
- }\r
- //-- void setAlignment(jalview.binding.Alignment)\r
-\r
- /**\r
- * Method setSequenceSet\r
- *\r
- *\r
- *\r
- * @param index\r
- * @param vSequenceSet\r
- */\r
- public void setSequenceSet(int index,\r
- jalview.binding.SequenceSet vSequenceSet)\r
- throws java.lang.IndexOutOfBoundsException {\r
- //-- check bounds for index\r
- if ((index < 0) || (index > _sequenceSetList.size())) {\r
- throw new IndexOutOfBoundsException();\r
- }\r
-\r
- _sequenceSetList.setElementAt(vSequenceSet, index);\r
- }\r
- //-- void setSequenceSet(int, jalview.binding.SequenceSet)\r
-\r
- /**\r
- * Method setSequenceSet\r
- *\r
- *\r
- *\r
- * @param sequenceSetArray\r
- */\r
- public void setSequenceSet(jalview.binding.SequenceSet[] sequenceSetArray) {\r
- //-- copy array\r
- _sequenceSetList.removeAllElements();\r
-\r
- for (int i = 0; i < sequenceSetArray.length; i++) {\r
- _sequenceSetList.addElement(sequenceSetArray[i]);\r
- }\r
- }\r
- //-- void setSequenceSet(jalview.binding.SequenceSet)\r
-\r
- /**\r
- * Method setTree\r
- *\r
- *\r
- *\r
- * @param index\r
- * @param vTree\r
- */\r
- public void setTree(int index, java.lang.String vTree)\r
- throws java.lang.IndexOutOfBoundsException {\r
- //-- check bounds for index\r
- if ((index < 0) || (index > _treeList.size())) {\r
- throw new IndexOutOfBoundsException();\r
- }\r
-\r
- _treeList.setElementAt(vTree, index);\r
- }\r
- //-- void setTree(int, java.lang.String)\r
-\r
- /**\r
- * Method setTree\r
- *\r
- *\r
- *\r
- * @param treeArray\r
- */\r
- public void setTree(java.lang.String[] treeArray) {\r
- //-- copy array\r
- _treeList.removeAllElements();\r
-\r
- for (int i = 0; i < treeArray.length; i++) {\r
- _treeList.addElement(treeArray[i]);\r
- }\r
- }\r
- //-- void setTree(java.lang.String)\r
-\r
- /**\r
- * Method unmarshal\r
- *\r
- *\r
- *\r
- * @param reader\r
- * @return Object\r
- */\r
- public static java.lang.Object unmarshal(java.io.Reader reader)\r
- throws org.exolab.castor.xml.MarshalException, \r
- org.exolab.castor.xml.ValidationException {\r
- return (jalview.binding.VAMSAS) Unmarshaller.unmarshal(jalview.binding.VAMSAS.class,\r
- reader);\r
- }\r
- //-- java.lang.Object unmarshal(java.io.Reader)\r
-\r
- /**\r
- * Method validate\r
- *\r
- */\r
- public void validate() throws org.exolab.castor.xml.ValidationException {\r
- org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
- validator.validate(this);\r
- }\r
- //-- void validate()\r
-}\r
+/*
+ * This class was automatically generated with
+ * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
+
+package jalview.binding;
+
+ //---------------------------------/
+ //- Imported classes and packages -/
+//---------------------------------/
+
+import org.exolab.castor.xml.Marshaller;
+import org.exolab.castor.xml.Unmarshaller;
+
+/**
+ * Class VAMSAS.
+ *
+ * @version $Revision$ $Date$
+ */
+public class VAMSAS implements java.io.Serializable {
+
+
+ //--------------------------/
+ //- Class/Member Variables -/
+ //--------------------------/
+
+ /**
+ * Field _alignmentList.
+ */
+ private java.util.Vector _alignmentList;
+
+ /**
+ * Field _treeList.
+ */
+ private java.util.Vector _treeList;
+
+ /**
+ * Field _sequenceSetList.
+ */
+ private java.util.Vector _sequenceSetList;
+
+
+ //----------------/
+ //- Constructors -/
+ //----------------/
+
+ public VAMSAS() {
+ super();
+ this._alignmentList = new java.util.Vector();
+ this._treeList = new java.util.Vector();
+ this._sequenceSetList = new java.util.Vector();
+ }
+
+
+ //-----------/
+ //- Methods -/
+ //-----------/
+
+ /**
+ *
+ *
+ * @param vAlignment
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
+ public void addAlignment(
+ final Alignment vAlignment)
+ throws java.lang.IndexOutOfBoundsException {
+ this._alignmentList.addElement(vAlignment);
+ }
+
+ /**
+ *
+ *
+ * @param index
+ * @param vAlignment
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
+ public void addAlignment(
+ final int index,
+ final Alignment vAlignment)
+ throws java.lang.IndexOutOfBoundsException {
+ this._alignmentList.add(index, vAlignment);
+ }
+
+ /**
+ *
+ *
+ * @param vSequenceSet
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
+ public void addSequenceSet(
+ final SequenceSet vSequenceSet)
+ throws java.lang.IndexOutOfBoundsException {
+ this._sequenceSetList.addElement(vSequenceSet);
+ }
+
+ /**
+ *
+ *
+ * @param index
+ * @param vSequenceSet
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
+ public void addSequenceSet(
+ final int index,
+ final SequenceSet vSequenceSet)
+ throws java.lang.IndexOutOfBoundsException {
+ this._sequenceSetList.add(index, vSequenceSet);
+ }
+
+ /**
+ *
+ *
+ * @param vTree
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
+ public void addTree(
+ final java.lang.String vTree)
+ throws java.lang.IndexOutOfBoundsException {
+ this._treeList.addElement(vTree);
+ }
+
+ /**
+ *
+ *
+ * @param index
+ * @param vTree
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
+ public void addTree(
+ final int index,
+ final java.lang.String vTree)
+ throws java.lang.IndexOutOfBoundsException {
+ this._treeList.add(index, vTree);
+ }
+
+ /**
+ * Method enumerateAlignment.
+ *
+ * @return an Enumeration over all Alignment elements
+ */
+ public java.util.Enumeration enumerateAlignment(
+ ) {
+ return this._alignmentList.elements();
+ }
+
+ /**
+ * Method enumerateSequenceSet.
+ *
+ * @return an Enumeration over all SequenceSet elements
+ */
+ public java.util.Enumeration enumerateSequenceSet(
+ ) {
+ return this._sequenceSetList.elements();
+ }
+
+ /**
+ * Method enumerateTree.
+ *
+ * @return an Enumeration over all java.lang.String elements
+ */
+ public java.util.Enumeration enumerateTree(
+ ) {
+ return this._treeList.elements();
+ }
+
+ /**
+ * Method getAlignment.
+ *
+ * @param index
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ * @return the value of the Alignment at the given index
+ */
+ public Alignment getAlignment(
+ final int index)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
+ if (index < 0 || index >= this._alignmentList.size()) {
+ throw new IndexOutOfBoundsException("getAlignment: Index value '" + index + "' not in range [0.." + (this._alignmentList.size() - 1) + "]");
+ }
+
+ return (Alignment) _alignmentList.get(index);
+ }
+
+ /**
+ * Method getAlignment.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 Alignment[] getAlignment(
+ ) {
+ Alignment[] array = new Alignment[0];
+ return (Alignment[]) this._alignmentList.toArray(array);
+ }
+
+ /**
+ * Method getAlignmentCount.
+ *
+ * @return the size of this collection
+ */
+ public int getAlignmentCount(
+ ) {
+ return this._alignmentList.size();
+ }
+
+ /**
+ * Method getSequenceSet.
+ *
+ * @param index
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ * @return the value of the SequenceSet at the given index
+ */
+ public SequenceSet getSequenceSet(
+ final int index)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
+ if (index < 0 || index >= this._sequenceSetList.size()) {
+ throw new IndexOutOfBoundsException("getSequenceSet: Index value '" + index + "' not in range [0.." + (this._sequenceSetList.size() - 1) + "]");
+ }
+
+ return (SequenceSet) _sequenceSetList.get(index);
+ }
+
+ /**
+ * Method getSequenceSet.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 SequenceSet[] getSequenceSet(
+ ) {
+ SequenceSet[] array = new SequenceSet[0];
+ return (SequenceSet[]) this._sequenceSetList.toArray(array);
+ }
+
+ /**
+ * Method getSequenceSetCount.
+ *
+ * @return the size of this collection
+ */
+ public int getSequenceSetCount(
+ ) {
+ return this._sequenceSetList.size();
+ }
+
+ /**
+ * Method getTree.
+ *
+ * @param index
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ * @return the value of the java.lang.String at the given index
+ */
+ public java.lang.String getTree(
+ final int index)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
+ if (index < 0 || index >= this._treeList.size()) {
+ throw new IndexOutOfBoundsException("getTree: Index value '" + index + "' not in range [0.." + (this._treeList.size() - 1) + "]");
+ }
+
+ return (java.lang.String) _treeList.get(index);
+ }
+
+ /**
+ * Method getTree.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 java.lang.String[] getTree(
+ ) {
+ java.lang.String[] array = new java.lang.String[0];
+ return (java.lang.String[]) this._treeList.toArray(array);
+ }
+
+ /**
+ * Method getTreeCount.
+ *
+ * @return the size of this collection
+ */
+ public int getTreeCount(
+ ) {
+ return this._treeList.size();
+ }
+
+ /**
+ * Method isValid.
+ *
+ * @return true if this object is valid according to the schema
+ */
+ public boolean isValid(
+ ) {
+ try {
+ validate();
+ } catch (org.exolab.castor.xml.ValidationException vex) {
+ return false;
+ }
+ return true;
+ }
+
+ /**
+ *
+ *
+ * @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(
+ final java.io.Writer out)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
+ Marshaller.marshal(this, out);
+ }
+
+ /**
+ *
+ *
+ * @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(
+ final org.xml.sax.ContentHandler handler)
+ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
+ Marshaller.marshal(this, handler);
+ }
+
+ /**
+ * Method removeAlignment.
+ *
+ * @param vAlignment
+ * @return true if the object was removed from the collection.
+ */
+ public boolean removeAlignment(
+ final Alignment vAlignment) {
+ boolean removed = _alignmentList.remove(vAlignment);
+ return removed;
+ }
+
+ /**
+ * Method removeAlignmentAt.
+ *
+ * @param index
+ * @return the element removed from the collection
+ */
+ public Alignment removeAlignmentAt(
+ final int index) {
+ java.lang.Object obj = this._alignmentList.remove(index);
+ return (Alignment) obj;
+ }
+
+ /**
+ */
+ public void removeAllAlignment(
+ ) {
+ this._alignmentList.clear();
+ }
+
+ /**
+ */
+ public void removeAllSequenceSet(
+ ) {
+ this._sequenceSetList.clear();
+ }
+
+ /**
+ */
+ public void removeAllTree(
+ ) {
+ this._treeList.clear();
+ }
+
+ /**
+ * Method removeSequenceSet.
+ *
+ * @param vSequenceSet
+ * @return true if the object was removed from the collection.
+ */
+ public boolean removeSequenceSet(
+ final SequenceSet vSequenceSet) {
+ boolean removed = _sequenceSetList.remove(vSequenceSet);
+ return removed;
+ }
+
+ /**
+ * Method removeSequenceSetAt.
+ *
+ * @param index
+ * @return the element removed from the collection
+ */
+ public SequenceSet removeSequenceSetAt(
+ final int index) {
+ java.lang.Object obj = this._sequenceSetList.remove(index);
+ return (SequenceSet) obj;
+ }
+
+ /**
+ * Method removeTree.
+ *
+ * @param vTree
+ * @return true if the object was removed from the collection.
+ */
+ public boolean removeTree(
+ final java.lang.String vTree) {
+ boolean removed = _treeList.remove(vTree);
+ return removed;
+ }
+
+ /**
+ * Method removeTreeAt.
+ *
+ * @param index
+ * @return the element removed from the collection
+ */
+ public java.lang.String removeTreeAt(
+ final int index) {
+ java.lang.Object obj = this._treeList.remove(index);
+ return (java.lang.String) obj;
+ }
+
+ /**
+ *
+ *
+ * @param index
+ * @param vAlignment
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
+ public void setAlignment(
+ final int index,
+ final Alignment vAlignment)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
+ if (index < 0 || index >= this._alignmentList.size()) {
+ throw new IndexOutOfBoundsException("setAlignment: Index value '" + index + "' not in range [0.." + (this._alignmentList.size() - 1) + "]");
+ }
+
+ this._alignmentList.set(index, vAlignment);
+ }
+
+ /**
+ *
+ *
+ * @param vAlignmentArray
+ */
+ public void setAlignment(
+ final Alignment[] vAlignmentArray) {
+ //-- copy array
+ _alignmentList.clear();
+
+ for (int i = 0; i < vAlignmentArray.length; i++) {
+ this._alignmentList.add(vAlignmentArray[i]);
+ }
+ }
+
+ /**
+ *
+ *
+ * @param index
+ * @param vSequenceSet
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
+ public void setSequenceSet(
+ final int index,
+ final SequenceSet vSequenceSet)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
+ if (index < 0 || index >= this._sequenceSetList.size()) {
+ throw new IndexOutOfBoundsException("setSequenceSet: Index value '" + index + "' not in range [0.." + (this._sequenceSetList.size() - 1) + "]");
+ }
+
+ this._sequenceSetList.set(index, vSequenceSet);
+ }
+
+ /**
+ *
+ *
+ * @param vSequenceSetArray
+ */
+ public void setSequenceSet(
+ final SequenceSet[] vSequenceSetArray) {
+ //-- copy array
+ _sequenceSetList.clear();
+
+ for (int i = 0; i < vSequenceSetArray.length; i++) {
+ this._sequenceSetList.add(vSequenceSetArray[i]);
+ }
+ }
+
+ /**
+ *
+ *
+ * @param index
+ * @param vTree
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
+ public void setTree(
+ final int index,
+ final java.lang.String vTree)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
+ if (index < 0 || index >= this._treeList.size()) {
+ throw new IndexOutOfBoundsException("setTree: Index value '" + index + "' not in range [0.." + (this._treeList.size() - 1) + "]");
+ }
+
+ this._treeList.set(index, vTree);
+ }
+
+ /**
+ *
+ *
+ * @param vTreeArray
+ */
+ public void setTree(
+ final java.lang.String[] vTreeArray) {
+ //-- copy array
+ _treeList.clear();
+
+ for (int i = 0; i < vTreeArray.length; i++) {
+ this._treeList.add(vTreeArray[i]);
+ }
+ }
+
+ /**
+ * Method unmarshal.
+ *
+ * @param reader
+ * @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 jalview.binding.VAMSAS
+ */
+ public static jalview.binding.VAMSAS unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
+ return (jalview.binding.VAMSAS) Unmarshaller.unmarshal(jalview.binding.VAMSAS.class, reader);
+ }
+
+ /**
+ *
+ *
+ * @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 {
+ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
+ validator.validate(this);
+ }
+
+}