+ } else if (temp._alignmentSequenceAnnotationList != null)
+ return false;
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ * Method getAlignmentSequenceAnnotation.
+ *
+ * @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.AlignmentSequenceAnnotation at the given
+ * index
+ */
+ public uk.ac.vamsas.objects.core.AlignmentSequenceAnnotation getAlignmentSequenceAnnotation(
+ final int index) throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
+ if (index < 0 || index >= this._alignmentSequenceAnnotationList.size()) {
+ throw new IndexOutOfBoundsException(
+ "getAlignmentSequenceAnnotation: Index value '" + index
+ + "' not in range [0.."
+ + (this._alignmentSequenceAnnotationList.size() - 1) + "]");
+ }
+
+ return (uk.ac.vamsas.objects.core.AlignmentSequenceAnnotation) _alignmentSequenceAnnotationList
+ .get(index);
+ }
+
+ /**
+ * Method getAlignmentSequenceAnnotation.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.AlignmentSequenceAnnotation[] getAlignmentSequenceAnnotation() {
+ uk.ac.vamsas.objects.core.AlignmentSequenceAnnotation[] array = new uk.ac.vamsas.objects.core.AlignmentSequenceAnnotation[0];
+ return (uk.ac.vamsas.objects.core.AlignmentSequenceAnnotation[]) this._alignmentSequenceAnnotationList
+ .toArray(array);
+ }
+
+ /**
+ * Method getAlignmentSequenceAnnotationAsReference.Returns a reference to
+ * '_alignmentSequenceAnnotationList'. No type checking is performed on any
+ * modifications to the Vector.
+ *
+ * @return a reference to the Vector backing this class
+ */
+ public java.util.Vector getAlignmentSequenceAnnotationAsReference() {
+ return this._alignmentSequenceAnnotationList;
+ }
+
+ /**
+ * Method getAlignmentSequenceAnnotationCount.
+ *
+ * @return the size of this collection
+ */
+ public int getAlignmentSequenceAnnotationCount() {
+ return this._alignmentSequenceAnnotationList.size();
+ }
+
+ /**
+ * Returns the value of field 'id'. The field 'id' has the following
+ * description: Primary Key for vamsas object referencing
+ *
+ * @return the value of field 'Id'.
+ */
+ public java.lang.String getId() {
+ return this._id;
+ }
+
+ /**
+ * Returns the value of field 'refid'. The field 'refid' has the following
+ * description: Dataset Sequence from which this alignment sequence is taken
+ * from
+ *
+ *
+ * @return the value of field 'Refid'.
+ */
+ public java.lang.Object getRefid() {
+ return this._refid;
+ }
+
+ /**
+ * 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 (_refid != null && !org.castor.util.CycleBreaker.startingToCycle(_refid)) {
+ result = 37 * result + _refid.hashCode();
+ org.castor.util.CycleBreaker.releaseCycleHandle(_refid);
+ }
+ if (_alignmentSequenceAnnotationList != null
+ && !org.castor.util.CycleBreaker
+ .startingToCycle(_alignmentSequenceAnnotationList)) {
+ result = 37 * result + _alignmentSequenceAnnotationList.hashCode();
+ org.castor.util.CycleBreaker
+ .releaseCycleHandle(_alignmentSequenceAnnotationList);
+ }
+
+ return result;
+ }
+
+ /**
+ * 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 removeAlignmentSequenceAnnotation.
+ *
+ * @param vAlignmentSequenceAnnotation
+ * @return true if the object was removed from the collection.
+ */
+ public boolean removeAlignmentSequenceAnnotation(
+ final uk.ac.vamsas.objects.core.AlignmentSequenceAnnotation vAlignmentSequenceAnnotation) {
+ boolean removed = _alignmentSequenceAnnotationList
+ .remove(vAlignmentSequenceAnnotation);
+ return removed;
+ }
+
+ /**
+ * Method removeAlignmentSequenceAnnotationAt.
+ *
+ * @param index
+ * @return the element removed from the collection
+ */
+ public uk.ac.vamsas.objects.core.AlignmentSequenceAnnotation removeAlignmentSequenceAnnotationAt(
+ final int index) {
+ java.lang.Object obj = this._alignmentSequenceAnnotationList.remove(index);
+ return (uk.ac.vamsas.objects.core.AlignmentSequenceAnnotation) obj;
+ }
+
+ /**