update author list in license for (JAL-826)
[jalview.git] / src / jalview / schemabinding / version2 / SequenceSet.java
1 /*******************************************************************************
2  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7)
3  * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle
4  *
5  * This file is part of Jalview.
6  *
7  * Jalview is free software: you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License 
9  * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
10  *
11  * Jalview is distributed in the hope that it will be useful, but 
12  * WITHOUT ANY WARRANTY; without even the implied warranty 
13  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
14  * PURPOSE.  See the GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
17  *******************************************************************************/
18 /*
19  * This class was automatically generated with 
20  * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
21  * Schema.
22  * $Id$
23  */
24
25 package jalview.schemabinding.version2;
26
27   //---------------------------------/
28  //- Imported classes and packages -/
29 //---------------------------------/
30
31 import org.exolab.castor.xml.Marshaller;
32 import org.exolab.castor.xml.Unmarshaller;
33
34 /**
35  * Class SequenceSet.
36  * 
37  * @version $Revision$ $Date$
38  */
39 public class SequenceSet implements java.io.Serializable {
40
41
42       //--------------------------/
43      //- Class/Member Variables -/
44     //--------------------------/
45
46     /**
47      * Field _gapChar.
48      */
49     private java.lang.String _gapChar;
50
51     /**
52      * reference to set where jalview will gather the dataset
53      * sequences for all sequences in the set. 
54      *  
55      */
56     private java.lang.String _datasetId;
57
58     /**
59      * Field _sequenceList.
60      */
61     private java.util.Vector _sequenceList;
62
63     /**
64      * Field _annotationList.
65      */
66     private java.util.Vector _annotationList;
67
68     /**
69      * Field _sequenceSetPropertiesList.
70      */
71     private java.util.Vector _sequenceSetPropertiesList;
72
73     /**
74      * Field _alcodonFrameList.
75      */
76     private java.util.Vector _alcodonFrameList;
77
78
79       //----------------/
80      //- Constructors -/
81     //----------------/
82
83     public SequenceSet() {
84         super();
85         this._sequenceList = new java.util.Vector();
86         this._annotationList = new java.util.Vector();
87         this._sequenceSetPropertiesList = new java.util.Vector();
88         this._alcodonFrameList = new java.util.Vector();
89     }
90
91
92       //-----------/
93      //- Methods -/
94     //-----------/
95
96     /**
97      * 
98      * 
99      * @param vAlcodonFrame
100      * @throws java.lang.IndexOutOfBoundsException if the index
101      * given is outside the bounds of the collection
102      */
103     public void addAlcodonFrame(
104             final jalview.schemabinding.version2.AlcodonFrame vAlcodonFrame)
105     throws java.lang.IndexOutOfBoundsException {
106         this._alcodonFrameList.addElement(vAlcodonFrame);
107     }
108
109     /**
110      * 
111      * 
112      * @param index
113      * @param vAlcodonFrame
114      * @throws java.lang.IndexOutOfBoundsException if the index
115      * given is outside the bounds of the collection
116      */
117     public void addAlcodonFrame(
118             final int index,
119             final jalview.schemabinding.version2.AlcodonFrame vAlcodonFrame)
120     throws java.lang.IndexOutOfBoundsException {
121         this._alcodonFrameList.add(index, vAlcodonFrame);
122     }
123
124     /**
125      * 
126      * 
127      * @param vAnnotation
128      * @throws java.lang.IndexOutOfBoundsException if the index
129      * given is outside the bounds of the collection
130      */
131     public void addAnnotation(
132             final jalview.schemabinding.version2.Annotation vAnnotation)
133     throws java.lang.IndexOutOfBoundsException {
134         this._annotationList.addElement(vAnnotation);
135     }
136
137     /**
138      * 
139      * 
140      * @param index
141      * @param vAnnotation
142      * @throws java.lang.IndexOutOfBoundsException if the index
143      * given is outside the bounds of the collection
144      */
145     public void addAnnotation(
146             final int index,
147             final jalview.schemabinding.version2.Annotation vAnnotation)
148     throws java.lang.IndexOutOfBoundsException {
149         this._annotationList.add(index, vAnnotation);
150     }
151
152     /**
153      * 
154      * 
155      * @param vSequence
156      * @throws java.lang.IndexOutOfBoundsException if the index
157      * given is outside the bounds of the collection
158      */
159     public void addSequence(
160             final jalview.schemabinding.version2.Sequence vSequence)
161     throws java.lang.IndexOutOfBoundsException {
162         this._sequenceList.addElement(vSequence);
163     }
164
165     /**
166      * 
167      * 
168      * @param index
169      * @param vSequence
170      * @throws java.lang.IndexOutOfBoundsException if the index
171      * given is outside the bounds of the collection
172      */
173     public void addSequence(
174             final int index,
175             final jalview.schemabinding.version2.Sequence vSequence)
176     throws java.lang.IndexOutOfBoundsException {
177         this._sequenceList.add(index, vSequence);
178     }
179
180     /**
181      * 
182      * 
183      * @param vSequenceSetProperties
184      * @throws java.lang.IndexOutOfBoundsException if the index
185      * given is outside the bounds of the collection
186      */
187     public void addSequenceSetProperties(
188             final jalview.schemabinding.version2.SequenceSetProperties vSequenceSetProperties)
189     throws java.lang.IndexOutOfBoundsException {
190         this._sequenceSetPropertiesList.addElement(vSequenceSetProperties);
191     }
192
193     /**
194      * 
195      * 
196      * @param index
197      * @param vSequenceSetProperties
198      * @throws java.lang.IndexOutOfBoundsException if the index
199      * given is outside the bounds of the collection
200      */
201     public void addSequenceSetProperties(
202             final int index,
203             final jalview.schemabinding.version2.SequenceSetProperties vSequenceSetProperties)
204     throws java.lang.IndexOutOfBoundsException {
205         this._sequenceSetPropertiesList.add(index, vSequenceSetProperties);
206     }
207
208     /**
209      * Method enumerateAlcodonFrame.
210      * 
211      * @return an Enumeration over all
212      * jalview.schemabinding.version2.AlcodonFrame elements
213      */
214     public java.util.Enumeration enumerateAlcodonFrame(
215     ) {
216         return this._alcodonFrameList.elements();
217     }
218
219     /**
220      * Method enumerateAnnotation.
221      * 
222      * @return an Enumeration over all
223      * jalview.schemabinding.version2.Annotation elements
224      */
225     public java.util.Enumeration enumerateAnnotation(
226     ) {
227         return this._annotationList.elements();
228     }
229
230     /**
231      * Method enumerateSequence.
232      * 
233      * @return an Enumeration over all
234      * jalview.schemabinding.version2.Sequence elements
235      */
236     public java.util.Enumeration enumerateSequence(
237     ) {
238         return this._sequenceList.elements();
239     }
240
241     /**
242      * Method enumerateSequenceSetProperties.
243      * 
244      * @return an Enumeration over all
245      * jalview.schemabinding.version2.SequenceSetProperties elements
246      */
247     public java.util.Enumeration enumerateSequenceSetProperties(
248     ) {
249         return this._sequenceSetPropertiesList.elements();
250     }
251
252     /**
253      * Method getAlcodonFrame.
254      * 
255      * @param index
256      * @throws java.lang.IndexOutOfBoundsException if the index
257      * given is outside the bounds of the collection
258      * @return the value of the
259      * jalview.schemabinding.version2.AlcodonFrame at the given inde
260      */
261     public jalview.schemabinding.version2.AlcodonFrame getAlcodonFrame(
262             final int index)
263     throws java.lang.IndexOutOfBoundsException {
264         // check bounds for index
265         if (index < 0 || index >= this._alcodonFrameList.size()) {
266             throw new IndexOutOfBoundsException("getAlcodonFrame: Index value '" + index + "' not in range [0.." + (this._alcodonFrameList.size() - 1) + "]");
267         }
268         
269         return (jalview.schemabinding.version2.AlcodonFrame) _alcodonFrameList.get(index);
270     }
271
272     /**
273      * Method getAlcodonFrame.Returns the contents of the
274      * collection in an Array.  <p>Note:  Just in case the
275      * collection contents are changing in another thread, we pass
276      * a 0-length Array of the correct type into the API call. 
277      * This way we <i>know</i> that the Array returned is of
278      * exactly the correct length.
279      * 
280      * @return this collection as an Array
281      */
282     public jalview.schemabinding.version2.AlcodonFrame[] getAlcodonFrame(
283     ) {
284         jalview.schemabinding.version2.AlcodonFrame[] array = new jalview.schemabinding.version2.AlcodonFrame[0];
285         return (jalview.schemabinding.version2.AlcodonFrame[]) this._alcodonFrameList.toArray(array);
286     }
287
288     /**
289      * Method getAlcodonFrameCount.
290      * 
291      * @return the size of this collection
292      */
293     public int getAlcodonFrameCount(
294     ) {
295         return this._alcodonFrameList.size();
296     }
297
298     /**
299      * Method getAnnotation.
300      * 
301      * @param index
302      * @throws java.lang.IndexOutOfBoundsException if the index
303      * given is outside the bounds of the collection
304      * @return the value of the
305      * jalview.schemabinding.version2.Annotation at the given index
306      */
307     public jalview.schemabinding.version2.Annotation getAnnotation(
308             final int index)
309     throws java.lang.IndexOutOfBoundsException {
310         // check bounds for index
311         if (index < 0 || index >= this._annotationList.size()) {
312             throw new IndexOutOfBoundsException("getAnnotation: Index value '" + index + "' not in range [0.." + (this._annotationList.size() - 1) + "]");
313         }
314         
315         return (jalview.schemabinding.version2.Annotation) _annotationList.get(index);
316     }
317
318     /**
319      * Method getAnnotation.Returns the contents of the collection
320      * in an Array.  <p>Note:  Just in case the collection contents
321      * are changing in another thread, we pass a 0-length Array of
322      * the correct type into the API call.  This way we <i>know</i>
323      * that the Array returned is of exactly the correct length.
324      * 
325      * @return this collection as an Array
326      */
327     public jalview.schemabinding.version2.Annotation[] getAnnotation(
328     ) {
329         jalview.schemabinding.version2.Annotation[] array = new jalview.schemabinding.version2.Annotation[0];
330         return (jalview.schemabinding.version2.Annotation[]) this._annotationList.toArray(array);
331     }
332
333     /**
334      * Method getAnnotationCount.
335      * 
336      * @return the size of this collection
337      */
338     public int getAnnotationCount(
339     ) {
340         return this._annotationList.size();
341     }
342
343     /**
344      * Returns the value of field 'datasetId'. The field
345      * 'datasetId' has the following description: reference to set
346      * where jalview will gather the dataset sequences for all
347      * sequences in the set. 
348      *  
349      * 
350      * @return the value of field 'DatasetId'.
351      */
352     public java.lang.String getDatasetId(
353     ) {
354         return this._datasetId;
355     }
356
357     /**
358      * Returns the value of field 'gapChar'.
359      * 
360      * @return the value of field 'GapChar'.
361      */
362     public java.lang.String getGapChar(
363     ) {
364         return this._gapChar;
365     }
366
367     /**
368      * Method getSequence.
369      * 
370      * @param index
371      * @throws java.lang.IndexOutOfBoundsException if the index
372      * given is outside the bounds of the collection
373      * @return the value of the
374      * jalview.schemabinding.version2.Sequence at the given index
375      */
376     public jalview.schemabinding.version2.Sequence getSequence(
377             final int index)
378     throws java.lang.IndexOutOfBoundsException {
379         // check bounds for index
380         if (index < 0 || index >= this._sequenceList.size()) {
381             throw new IndexOutOfBoundsException("getSequence: Index value '" + index + "' not in range [0.." + (this._sequenceList.size() - 1) + "]");
382         }
383         
384         return (jalview.schemabinding.version2.Sequence) _sequenceList.get(index);
385     }
386
387     /**
388      * Method getSequence.Returns the contents of the collection in
389      * an Array.  <p>Note:  Just in case the collection contents
390      * are changing in another thread, we pass a 0-length Array of
391      * the correct type into the API call.  This way we <i>know</i>
392      * that the Array returned is of exactly the correct length.
393      * 
394      * @return this collection as an Array
395      */
396     public jalview.schemabinding.version2.Sequence[] getSequence(
397     ) {
398         jalview.schemabinding.version2.Sequence[] array = new jalview.schemabinding.version2.Sequence[0];
399         return (jalview.schemabinding.version2.Sequence[]) this._sequenceList.toArray(array);
400     }
401
402     /**
403      * Method getSequenceCount.
404      * 
405      * @return the size of this collection
406      */
407     public int getSequenceCount(
408     ) {
409         return this._sequenceList.size();
410     }
411
412     /**
413      * Method getSequenceSetProperties.
414      * 
415      * @param index
416      * @throws java.lang.IndexOutOfBoundsException if the index
417      * given is outside the bounds of the collection
418      * @return the value of the
419      * jalview.schemabinding.version2.SequenceSetProperties at the
420      * given index
421      */
422     public jalview.schemabinding.version2.SequenceSetProperties getSequenceSetProperties(
423             final int index)
424     throws java.lang.IndexOutOfBoundsException {
425         // check bounds for index
426         if (index < 0 || index >= this._sequenceSetPropertiesList.size()) {
427             throw new IndexOutOfBoundsException("getSequenceSetProperties: Index value '" + index + "' not in range [0.." + (this._sequenceSetPropertiesList.size() - 1) + "]");
428         }
429         
430         return (jalview.schemabinding.version2.SequenceSetProperties) _sequenceSetPropertiesList.get(index);
431     }
432
433     /**
434      * Method getSequenceSetProperties.Returns the contents of the
435      * collection in an Array.  <p>Note:  Just in case the
436      * collection contents are changing in another thread, we pass
437      * a 0-length Array of the correct type into the API call. 
438      * This way we <i>know</i> that the Array returned is of
439      * exactly the correct length.
440      * 
441      * @return this collection as an Array
442      */
443     public jalview.schemabinding.version2.SequenceSetProperties[] getSequenceSetProperties(
444     ) {
445         jalview.schemabinding.version2.SequenceSetProperties[] array = new jalview.schemabinding.version2.SequenceSetProperties[0];
446         return (jalview.schemabinding.version2.SequenceSetProperties[]) this._sequenceSetPropertiesList.toArray(array);
447     }
448
449     /**
450      * Method getSequenceSetPropertiesCount.
451      * 
452      * @return the size of this collection
453      */
454     public int getSequenceSetPropertiesCount(
455     ) {
456         return this._sequenceSetPropertiesList.size();
457     }
458
459     /**
460      * Method isValid.
461      * 
462      * @return true if this object is valid according to the schema
463      */
464     public boolean isValid(
465     ) {
466         try {
467             validate();
468         } catch (org.exolab.castor.xml.ValidationException vex) {
469             return false;
470         }
471         return true;
472     }
473
474     /**
475      * 
476      * 
477      * @param out
478      * @throws org.exolab.castor.xml.MarshalException if object is
479      * null or if any SAXException is thrown during marshaling
480      * @throws org.exolab.castor.xml.ValidationException if this
481      * object is an invalid instance according to the schema
482      */
483     public void marshal(
484             final java.io.Writer out)
485     throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
486         Marshaller.marshal(this, out);
487     }
488
489     /**
490      * 
491      * 
492      * @param handler
493      * @throws java.io.IOException if an IOException occurs during
494      * marshaling
495      * @throws org.exolab.castor.xml.ValidationException if this
496      * object is an invalid instance according to the schema
497      * @throws org.exolab.castor.xml.MarshalException if object is
498      * null or if any SAXException is thrown during marshaling
499      */
500     public void marshal(
501             final org.xml.sax.ContentHandler handler)
502     throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
503         Marshaller.marshal(this, handler);
504     }
505
506     /**
507      * Method removeAlcodonFrame.
508      * 
509      * @param vAlcodonFrame
510      * @return true if the object was removed from the collection.
511      */
512     public boolean removeAlcodonFrame(
513             final jalview.schemabinding.version2.AlcodonFrame vAlcodonFrame) {
514         boolean removed = _alcodonFrameList.remove(vAlcodonFrame);
515         return removed;
516     }
517
518     /**
519      * Method removeAlcodonFrameAt.
520      * 
521      * @param index
522      * @return the element removed from the collection
523      */
524     public jalview.schemabinding.version2.AlcodonFrame removeAlcodonFrameAt(
525             final int index) {
526         java.lang.Object obj = this._alcodonFrameList.remove(index);
527         return (jalview.schemabinding.version2.AlcodonFrame) obj;
528     }
529
530     /**
531      */
532     public void removeAllAlcodonFrame(
533     ) {
534         this._alcodonFrameList.clear();
535     }
536
537     /**
538      */
539     public void removeAllAnnotation(
540     ) {
541         this._annotationList.clear();
542     }
543
544     /**
545      */
546     public void removeAllSequence(
547     ) {
548         this._sequenceList.clear();
549     }
550
551     /**
552      */
553     public void removeAllSequenceSetProperties(
554     ) {
555         this._sequenceSetPropertiesList.clear();
556     }
557
558     /**
559      * Method removeAnnotation.
560      * 
561      * @param vAnnotation
562      * @return true if the object was removed from the collection.
563      */
564     public boolean removeAnnotation(
565             final jalview.schemabinding.version2.Annotation vAnnotation) {
566         boolean removed = _annotationList.remove(vAnnotation);
567         return removed;
568     }
569
570     /**
571      * Method removeAnnotationAt.
572      * 
573      * @param index
574      * @return the element removed from the collection
575      */
576     public jalview.schemabinding.version2.Annotation removeAnnotationAt(
577             final int index) {
578         java.lang.Object obj = this._annotationList.remove(index);
579         return (jalview.schemabinding.version2.Annotation) obj;
580     }
581
582     /**
583      * Method removeSequence.
584      * 
585      * @param vSequence
586      * @return true if the object was removed from the collection.
587      */
588     public boolean removeSequence(
589             final jalview.schemabinding.version2.Sequence vSequence) {
590         boolean removed = _sequenceList.remove(vSequence);
591         return removed;
592     }
593
594     /**
595      * Method removeSequenceAt.
596      * 
597      * @param index
598      * @return the element removed from the collection
599      */
600     public jalview.schemabinding.version2.Sequence removeSequenceAt(
601             final int index) {
602         java.lang.Object obj = this._sequenceList.remove(index);
603         return (jalview.schemabinding.version2.Sequence) obj;
604     }
605
606     /**
607      * Method removeSequenceSetProperties.
608      * 
609      * @param vSequenceSetProperties
610      * @return true if the object was removed from the collection.
611      */
612     public boolean removeSequenceSetProperties(
613             final jalview.schemabinding.version2.SequenceSetProperties vSequenceSetProperties) {
614         boolean removed = _sequenceSetPropertiesList.remove(vSequenceSetProperties);
615         return removed;
616     }
617
618     /**
619      * Method removeSequenceSetPropertiesAt.
620      * 
621      * @param index
622      * @return the element removed from the collection
623      */
624     public jalview.schemabinding.version2.SequenceSetProperties removeSequenceSetPropertiesAt(
625             final int index) {
626         java.lang.Object obj = this._sequenceSetPropertiesList.remove(index);
627         return (jalview.schemabinding.version2.SequenceSetProperties) obj;
628     }
629
630     /**
631      * 
632      * 
633      * @param index
634      * @param vAlcodonFrame
635      * @throws java.lang.IndexOutOfBoundsException if the index
636      * given is outside the bounds of the collection
637      */
638     public void setAlcodonFrame(
639             final int index,
640             final jalview.schemabinding.version2.AlcodonFrame vAlcodonFrame)
641     throws java.lang.IndexOutOfBoundsException {
642         // check bounds for index
643         if (index < 0 || index >= this._alcodonFrameList.size()) {
644             throw new IndexOutOfBoundsException("setAlcodonFrame: Index value '" + index + "' not in range [0.." + (this._alcodonFrameList.size() - 1) + "]");
645         }
646         
647         this._alcodonFrameList.set(index, vAlcodonFrame);
648     }
649
650     /**
651      * 
652      * 
653      * @param vAlcodonFrameArray
654      */
655     public void setAlcodonFrame(
656             final jalview.schemabinding.version2.AlcodonFrame[] vAlcodonFrameArray) {
657         //-- copy array
658         _alcodonFrameList.clear();
659         
660         for (int i = 0; i < vAlcodonFrameArray.length; i++) {
661                 this._alcodonFrameList.add(vAlcodonFrameArray[i]);
662         }
663     }
664
665     /**
666      * 
667      * 
668      * @param index
669      * @param vAnnotation
670      * @throws java.lang.IndexOutOfBoundsException if the index
671      * given is outside the bounds of the collection
672      */
673     public void setAnnotation(
674             final int index,
675             final jalview.schemabinding.version2.Annotation vAnnotation)
676     throws java.lang.IndexOutOfBoundsException {
677         // check bounds for index
678         if (index < 0 || index >= this._annotationList.size()) {
679             throw new IndexOutOfBoundsException("setAnnotation: Index value '" + index + "' not in range [0.." + (this._annotationList.size() - 1) + "]");
680         }
681         
682         this._annotationList.set(index, vAnnotation);
683     }
684
685     /**
686      * 
687      * 
688      * @param vAnnotationArray
689      */
690     public void setAnnotation(
691             final jalview.schemabinding.version2.Annotation[] vAnnotationArray) {
692         //-- copy array
693         _annotationList.clear();
694         
695         for (int i = 0; i < vAnnotationArray.length; i++) {
696                 this._annotationList.add(vAnnotationArray[i]);
697         }
698     }
699
700     /**
701      * Sets the value of field 'datasetId'. The field 'datasetId'
702      * has the following description: reference to set where
703      * jalview will gather the dataset sequences for all sequences
704      * in the set. 
705      *  
706      * 
707      * @param datasetId the value of field 'datasetId'.
708      */
709     public void setDatasetId(
710             final java.lang.String datasetId) {
711         this._datasetId = datasetId;
712     }
713
714     /**
715      * Sets the value of field 'gapChar'.
716      * 
717      * @param gapChar the value of field 'gapChar'.
718      */
719     public void setGapChar(
720             final java.lang.String gapChar) {
721         this._gapChar = gapChar;
722     }
723
724     /**
725      * 
726      * 
727      * @param index
728      * @param vSequence
729      * @throws java.lang.IndexOutOfBoundsException if the index
730      * given is outside the bounds of the collection
731      */
732     public void setSequence(
733             final int index,
734             final jalview.schemabinding.version2.Sequence vSequence)
735     throws java.lang.IndexOutOfBoundsException {
736         // check bounds for index
737         if (index < 0 || index >= this._sequenceList.size()) {
738             throw new IndexOutOfBoundsException("setSequence: Index value '" + index + "' not in range [0.." + (this._sequenceList.size() - 1) + "]");
739         }
740         
741         this._sequenceList.set(index, vSequence);
742     }
743
744     /**
745      * 
746      * 
747      * @param vSequenceArray
748      */
749     public void setSequence(
750             final jalview.schemabinding.version2.Sequence[] vSequenceArray) {
751         //-- copy array
752         _sequenceList.clear();
753         
754         for (int i = 0; i < vSequenceArray.length; i++) {
755                 this._sequenceList.add(vSequenceArray[i]);
756         }
757     }
758
759     /**
760      * 
761      * 
762      * @param index
763      * @param vSequenceSetProperties
764      * @throws java.lang.IndexOutOfBoundsException if the index
765      * given is outside the bounds of the collection
766      */
767     public void setSequenceSetProperties(
768             final int index,
769             final jalview.schemabinding.version2.SequenceSetProperties vSequenceSetProperties)
770     throws java.lang.IndexOutOfBoundsException {
771         // check bounds for index
772         if (index < 0 || index >= this._sequenceSetPropertiesList.size()) {
773             throw new IndexOutOfBoundsException("setSequenceSetProperties: Index value '" + index + "' not in range [0.." + (this._sequenceSetPropertiesList.size() - 1) + "]");
774         }
775         
776         this._sequenceSetPropertiesList.set(index, vSequenceSetProperties);
777     }
778
779     /**
780      * 
781      * 
782      * @param vSequenceSetPropertiesArray
783      */
784     public void setSequenceSetProperties(
785             final jalview.schemabinding.version2.SequenceSetProperties[] vSequenceSetPropertiesArray) {
786         //-- copy array
787         _sequenceSetPropertiesList.clear();
788         
789         for (int i = 0; i < vSequenceSetPropertiesArray.length; i++) {
790                 this._sequenceSetPropertiesList.add(vSequenceSetPropertiesArray[i]);
791         }
792     }
793
794     /**
795      * Method unmarshal.
796      * 
797      * @param reader
798      * @throws org.exolab.castor.xml.MarshalException if object is
799      * null or if any SAXException is thrown during marshaling
800      * @throws org.exolab.castor.xml.ValidationException if this
801      * object is an invalid instance according to the schema
802      * @return the unmarshaled
803      * jalview.schemabinding.version2.SequenceSet
804      */
805     public static jalview.schemabinding.version2.SequenceSet unmarshal(
806             final java.io.Reader reader)
807     throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
808         return (jalview.schemabinding.version2.SequenceSet) Unmarshaller.unmarshal(jalview.schemabinding.version2.SequenceSet.class, reader);
809     }
810
811     /**
812      * 
813      * 
814      * @throws org.exolab.castor.xml.ValidationException if this
815      * object is an invalid instance according to the schema
816      */
817     public void validate(
818     )
819     throws org.exolab.castor.xml.ValidationException {
820         org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
821         validator.validate(this);
822     }
823
824 }