-/*\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
-/*\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
-\r
-package jalview.binding;\r
-\r
- //---------------------------------/\r
- //- Imported classes and packages -/\r
-//---------------------------------/\r
-\r
-import java.io.IOException;\r
-import java.io.Reader;\r
-import java.io.Serializable;\r
-import java.io.Writer;\r
-import java.util.Enumeration;\r
-import java.util.Vector;\r
-import org.exolab.castor.xml.MarshalException;\r
-import org.exolab.castor.xml.Marshaller;\r
-import org.exolab.castor.xml.Unmarshaller;\r
-import org.exolab.castor.xml.ValidationException;\r
-import org.xml.sax.ContentHandler;\r
-\r
-/**\r
- * Class VAMSAS.\r
- *\r
- * @version $Revision$ $Date$\r
- */\r
-public class VAMSAS implements java.io.Serializable {\r
-\r
-\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
- //----------------/\r
- //- Constructors -/\r
- //----------------/\r
-\r
- public VAMSAS() {\r
- super();\r
- _alignmentList = new Vector();\r
- _treeList = new Vector();\r
- _sequenceSetList = new Vector();\r
- } //-- jalview.binding.VAMSAS()\r
-\r
-\r
- //-----------/\r
- //- Methods -/\r
- //-----------/\r
-\r
- /**\r
- * Method addAlignment\r
- *\r
- *\r
- *\r
- * @param vAlignment\r
- */\r
- public void addAlignment(jalview.binding.Alignment vAlignment)\r
- throws java.lang.IndexOutOfBoundsException\r
- {\r
- _alignmentList.addElement(vAlignment);\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
- {\r
- _alignmentList.insertElementAt(vAlignment, index);\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
- {\r
- _sequenceSetList.addElement(vSequenceSet);\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, jalview.binding.SequenceSet vSequenceSet)\r
- throws java.lang.IndexOutOfBoundsException\r
- {\r
- _sequenceSetList.insertElementAt(vSequenceSet, index);\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
- {\r
- _treeList.addElement(vTree);\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
- {\r
- _treeList.insertElementAt(vTree, index);\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
- {\r
- return _alignmentList.elements();\r
- } //-- java.util.Enumeration enumerateAlignment()\r
-\r
- /**\r
- * Method enumerateSequenceSet\r
- *\r
- *\r
- *\r
- * @return Enumeration\r
- */\r
- public java.util.Enumeration enumerateSequenceSet()\r
- {\r
- return _sequenceSetList.elements();\r
- } //-- java.util.Enumeration enumerateSequenceSet()\r
-\r
- /**\r
- * Method enumerateTree\r
- *\r
- *\r
- *\r
- * @return Enumeration\r
- */\r
- public java.util.Enumeration enumerateTree()\r
- {\r
- return _treeList.elements();\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
- {\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
- } //-- jalview.binding.Alignment getAlignment(int)\r
-\r
- /**\r
- * Method getAlignment\r
- *\r
- *\r
- *\r
- * @return Alignment\r
- */\r
- public jalview.binding.Alignment[] getAlignment()\r
- {\r
- int size = _alignmentList.size();\r
- jalview.binding.Alignment[] mArray = new jalview.binding.Alignment[size];\r
- for (int index = 0; index < size; index++) {\r
- mArray[index] = (jalview.binding.Alignment) _alignmentList.elementAt(index);\r
- }\r
- return mArray;\r
- } //-- jalview.binding.Alignment[] getAlignment()\r
-\r
- /**\r
- * Method getAlignmentCount\r
- *\r
- *\r
- *\r
- * @return int\r
- */\r
- public int getAlignmentCount()\r
- {\r
- return _alignmentList.size();\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
- {\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
- } //-- jalview.binding.SequenceSet getSequenceSet(int)\r
-\r
- /**\r
- * Method getSequenceSet\r
- *\r
- *\r
- *\r
- * @return SequenceSet\r
- */\r
- public jalview.binding.SequenceSet[] getSequenceSet()\r
- {\r
- int size = _sequenceSetList.size();\r
- jalview.binding.SequenceSet[] mArray = new jalview.binding.SequenceSet[size];\r
- for (int index = 0; index < size; index++) {\r
- mArray[index] = (jalview.binding.SequenceSet) _sequenceSetList.elementAt(index);\r
- }\r
- return mArray;\r
- } //-- jalview.binding.SequenceSet[] getSequenceSet()\r
-\r
- /**\r
- * Method getSequenceSetCount\r
- *\r
- *\r
- *\r
- * @return int\r
- */\r
- public int getSequenceSetCount()\r
- {\r
- return _sequenceSetList.size();\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
- {\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
- } //-- java.lang.String getTree(int)\r
-\r
- /**\r
- * Method getTree\r
- *\r
- *\r
- *\r
- * @return String\r
- */\r
- public java.lang.String[] getTree()\r
- {\r
- int size = _treeList.size();\r
- java.lang.String[] mArray = new java.lang.String[size];\r
- for (int index = 0; index < size; index++) {\r
- mArray[index] = (String)_treeList.elementAt(index);\r
- }\r
- return mArray;\r
- } //-- java.lang.String[] getTree()\r
-\r
- /**\r
- * Method getTreeCount\r
- *\r
- *\r
- *\r
- * @return int\r
- */\r
- public int getTreeCount()\r
- {\r
- return _treeList.size();\r
- } //-- int getTreeCount()\r
-\r
- /**\r
- * Method isValid\r
- *\r
- *\r
- *\r
- * @return boolean\r
- */\r
- public boolean isValid()\r
- {\r
- try {\r
- validate();\r
- }\r
- catch (org.exolab.castor.xml.ValidationException vex) {\r
- return false;\r
- }\r
- return true;\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, org.exolab.castor.xml.ValidationException\r
- {\r
-\r
- Marshaller.marshal(this, out);\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, org.exolab.castor.xml.ValidationException\r
- {\r
-\r
- Marshaller.marshal(this, handler);\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
- {\r
- java.lang.Object obj = _alignmentList.elementAt(index);\r
- _alignmentList.removeElementAt(index);\r
- return (jalview.binding.Alignment) obj;\r
- } //-- jalview.binding.Alignment removeAlignment(int)\r
-\r
- /**\r
- * Method removeAllAlignment\r
- *\r
- */\r
- public void removeAllAlignment()\r
- {\r
- _alignmentList.removeAllElements();\r
- } //-- void removeAllAlignment()\r
-\r
- /**\r
- * Method removeAllSequenceSet\r
- *\r
- */\r
- public void removeAllSequenceSet()\r
- {\r
- _sequenceSetList.removeAllElements();\r
- } //-- void removeAllSequenceSet()\r
-\r
- /**\r
- * Method removeAllTree\r
- *\r
- */\r
- public void removeAllTree()\r
- {\r
- _treeList.removeAllElements();\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
- {\r
- java.lang.Object obj = _sequenceSetList.elementAt(index);\r
- _sequenceSetList.removeElementAt(index);\r
- return (jalview.binding.SequenceSet) obj;\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
- {\r
- java.lang.Object obj = _treeList.elementAt(index);\r
- _treeList.removeElementAt(index);\r
- return (String)obj;\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
- {\r
- //-- check bounds for index\r
- if ((index < 0) || (index > _alignmentList.size())) {\r
- throw new IndexOutOfBoundsException();\r
- }\r
- _alignmentList.setElementAt(vAlignment, index);\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
- {\r
- //-- copy array\r
- _alignmentList.removeAllElements();\r
- for (int i = 0; i < alignmentArray.length; i++) {\r
- _alignmentList.addElement(alignmentArray[i]);\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, jalview.binding.SequenceSet vSequenceSet)\r
- throws java.lang.IndexOutOfBoundsException\r
- {\r
- //-- check bounds for index\r
- if ((index < 0) || (index > _sequenceSetList.size())) {\r
- throw new IndexOutOfBoundsException();\r
- }\r
- _sequenceSetList.setElementAt(vSequenceSet, index);\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
- {\r
- //-- copy array\r
- _sequenceSetList.removeAllElements();\r
- for (int i = 0; i < sequenceSetArray.length; i++) {\r
- _sequenceSetList.addElement(sequenceSetArray[i]);\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
- {\r
- //-- check bounds for index\r
- if ((index < 0) || (index > _treeList.size())) {\r
- throw new IndexOutOfBoundsException();\r
- }\r
- _treeList.setElementAt(vTree, index);\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
- {\r
- //-- copy array\r
- _treeList.removeAllElements();\r
- for (int i = 0; i < treeArray.length; i++) {\r
- _treeList.addElement(treeArray[i]);\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, org.exolab.castor.xml.ValidationException\r
- {\r
- return (jalview.binding.VAMSAS) Unmarshaller.unmarshal(jalview.binding.VAMSAS.class, reader);\r
- } //-- java.lang.Object unmarshal(java.io.Reader)\r
-\r
- /**\r
- * Method validate\r
- *\r
- */\r
- public void validate()\r
- throws org.exolab.castor.xml.ValidationException\r
- {\r
- org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
- validator.validate(this);\r
- } //-- void validate()\r
-\r
-}\r
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ *
+ * This file is part of Jalview.
+ *
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *
+ * Jalview is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE. See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview. If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.binding;
+
+//---------------------------------/
+//- Imported classes and packages -/
+//---------------------------------/
+
+import jalview.util.MessageManager;
+
+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(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+ "getAlignment",
+ Integer.valueOf(index).toString(),
+ Integer.valueOf((this._alignmentList.size() - 1)).toString()
+ }));
+ }
+
+ 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(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+ "getSequenceSet",
+ Integer.valueOf(index).toString(),
+ Integer.valueOf((this._sequenceSetList.size() - 1)).toString()
+ }));
+ }
+
+ 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(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+ "getTree",
+ Integer.valueOf(index).toString(),
+ Integer.valueOf((this._treeList.size() - 1)).toString()
+ }));
+ }
+
+ 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(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+ "setAlignment",
+ Integer.valueOf(index).toString(),
+ Integer.valueOf((this._alignmentList.size() - 1)).toString()
+ }));
+ }
+
+ 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(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+ "setSequenceSet",
+ Integer.valueOf(index).toString(),
+ Integer.valueOf((this._sequenceSetList.size() - 1)).toString()
+ }));
+ }
+
+ 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(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+ "setTree",
+ Integer.valueOf(index).toString(),
+ Integer.valueOf((this._treeList.size() - 1)).toString()
+ }));
+ }
+
+ 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);
+ }
+
+}