649c327e1d71add2cfcd0c586eeed954135308a2
[jalview.git] / src / jalview / schemabinding / version2 / descriptors / AnnotationDescriptor.java
1 /*******************************************************************************
2  * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
3  * Copyright (C) $(date) The Jalview Authors
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
10  * of the License, or (at your option) any later version.
11  *   
12  * Jalview is distributed in the hope that it will be useful, but 
13  * WITHOUT ANY WARRANTY; without even the implied warranty 
14  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
15  * PURPOSE.  See the GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
19  * The Jalview Authors are detailed in the 'AUTHORS' file.
20  *******************************************************************************/
21 /*
22  * This class was automatically generated with 
23  * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
24  * Schema.
25  * $Id$
26  */
27
28 package jalview.schemabinding.version2.descriptors;
29
30 //---------------------------------/
31 //- Imported classes and packages -/
32 //---------------------------------/
33
34 import jalview.schemabinding.version2.Annotation;
35
36 /**
37  * Class AnnotationDescriptor.
38  * 
39  * @version $Revision$ $Date$
40  */
41 public class AnnotationDescriptor extends
42         org.exolab.castor.xml.util.XMLClassDescriptorImpl
43 {
44
45   // --------------------------/
46   // - Class/Member Variables -/
47   // --------------------------/
48
49   /**
50    * Field _elementDefinition.
51    */
52   private boolean _elementDefinition;
53
54   /**
55    * Field _nsPrefix.
56    */
57   private java.lang.String _nsPrefix;
58
59   /**
60    * Field _nsURI.
61    */
62   private java.lang.String _nsURI;
63
64   /**
65    * Field _xmlName.
66    */
67   private java.lang.String _xmlName;
68
69   // ----------------/
70   // - Constructors -/
71   // ----------------/
72
73   public AnnotationDescriptor()
74   {
75     super();
76     _nsURI = "www.vamsas.ac.uk/jalview/version2";
77     _xmlName = "Annotation";
78     _elementDefinition = true;
79
80     // -- set grouping compositor
81     setCompositorAsSequence();
82     org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
83     org.exolab.castor.mapping.FieldHandler handler = null;
84     org.exolab.castor.xml.FieldValidator fieldValidator = null;
85     // -- initialize attribute descriptors
86
87     // -- _graph
88     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
89             java.lang.Boolean.TYPE, "_graph", "graph",
90             org.exolab.castor.xml.NodeType.Attribute);
91     handler = new org.exolab.castor.xml.XMLFieldHandler()
92     {
93       public java.lang.Object getValue(java.lang.Object object)
94               throws IllegalStateException
95       {
96         Annotation target = (Annotation) object;
97         if (!target.hasGraph())
98         {
99           return null;
100         }
101         return (target.getGraph() ? java.lang.Boolean.TRUE
102                 : java.lang.Boolean.FALSE);
103       }
104
105       public void setValue(java.lang.Object object, java.lang.Object value)
106               throws IllegalStateException, IllegalArgumentException
107       {
108         try
109         {
110           Annotation target = (Annotation) object;
111           // ignore null values for non optional primitives
112           if (value == null)
113           {
114             return;
115           }
116
117           target.setGraph(((java.lang.Boolean) value).booleanValue());
118         } catch (java.lang.Exception ex)
119         {
120           throw new IllegalStateException(ex.toString());
121         }
122       }
123
124       public java.lang.Object newInstance(java.lang.Object parent)
125       {
126         return null;
127       }
128     };
129     desc.setHandler(handler);
130     desc.setRequired(true);
131     desc.setMultivalued(false);
132     addFieldDescriptor(desc);
133
134     // -- validation code for: _graph
135     fieldValidator = new org.exolab.castor.xml.FieldValidator();
136     fieldValidator.setMinOccurs(1);
137     { // -- local scope
138       org.exolab.castor.xml.validators.BooleanValidator typeValidator;
139       typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
140       fieldValidator.setValidator(typeValidator);
141     }
142     desc.setValidator(fieldValidator);
143     // -- _graphType
144     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
145             java.lang.Integer.TYPE, "_graphType", "graphType",
146             org.exolab.castor.xml.NodeType.Attribute);
147     handler = new org.exolab.castor.xml.XMLFieldHandler()
148     {
149       public java.lang.Object getValue(java.lang.Object object)
150               throws IllegalStateException
151       {
152         Annotation target = (Annotation) object;
153         if (!target.hasGraphType())
154         {
155           return null;
156         }
157         return new java.lang.Integer(target.getGraphType());
158       }
159
160       public void setValue(java.lang.Object object, java.lang.Object value)
161               throws IllegalStateException, IllegalArgumentException
162       {
163         try
164         {
165           Annotation target = (Annotation) object;
166           // if null, use delete method for optional primitives
167           if (value == null)
168           {
169             target.deleteGraphType();
170             return;
171           }
172           target.setGraphType(((java.lang.Integer) value).intValue());
173         } catch (java.lang.Exception ex)
174         {
175           throw new IllegalStateException(ex.toString());
176         }
177       }
178
179       public java.lang.Object newInstance(java.lang.Object parent)
180       {
181         return null;
182       }
183     };
184     desc.setHandler(handler);
185     desc.setMultivalued(false);
186     addFieldDescriptor(desc);
187
188     // -- validation code for: _graphType
189     fieldValidator = new org.exolab.castor.xml.FieldValidator();
190     { // -- local scope
191       org.exolab.castor.xml.validators.IntValidator typeValidator;
192       typeValidator = new org.exolab.castor.xml.validators.IntValidator();
193       fieldValidator.setValidator(typeValidator);
194       typeValidator.setMinInclusive(-2147483648);
195       typeValidator.setMaxInclusive(2147483647);
196     }
197     desc.setValidator(fieldValidator);
198     // -- _sequenceRef
199     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
200             java.lang.String.class, "_sequenceRef", "sequenceRef",
201             org.exolab.castor.xml.NodeType.Attribute);
202     desc.setImmutable(true);
203     handler = new org.exolab.castor.xml.XMLFieldHandler()
204     {
205       public java.lang.Object getValue(java.lang.Object object)
206               throws IllegalStateException
207       {
208         Annotation target = (Annotation) object;
209         return target.getSequenceRef();
210       }
211
212       public void setValue(java.lang.Object object, java.lang.Object value)
213               throws IllegalStateException, IllegalArgumentException
214       {
215         try
216         {
217           Annotation target = (Annotation) object;
218           target.setSequenceRef((java.lang.String) value);
219         } catch (java.lang.Exception ex)
220         {
221           throw new IllegalStateException(ex.toString());
222         }
223       }
224
225       public java.lang.Object newInstance(java.lang.Object parent)
226       {
227         return null;
228       }
229     };
230     desc.setHandler(handler);
231     desc.setMultivalued(false);
232     addFieldDescriptor(desc);
233
234     // -- validation code for: _sequenceRef
235     fieldValidator = new org.exolab.castor.xml.FieldValidator();
236     { // -- local scope
237       org.exolab.castor.xml.validators.StringValidator typeValidator;
238       typeValidator = new org.exolab.castor.xml.validators.StringValidator();
239       fieldValidator.setValidator(typeValidator);
240       typeValidator.setWhiteSpace("preserve");
241     }
242     desc.setValidator(fieldValidator);
243     // -- _groupRef
244     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
245             java.lang.String.class, "_groupRef", "groupRef",
246             org.exolab.castor.xml.NodeType.Attribute);
247     desc.setImmutable(true);
248     handler = new org.exolab.castor.xml.XMLFieldHandler()
249     {
250       public java.lang.Object getValue(java.lang.Object object)
251               throws IllegalStateException
252       {
253         Annotation target = (Annotation) object;
254         return target.getGroupRef();
255       }
256
257       public void setValue(java.lang.Object object, java.lang.Object value)
258               throws IllegalStateException, IllegalArgumentException
259       {
260         try
261         {
262           Annotation target = (Annotation) object;
263           target.setGroupRef((java.lang.String) value);
264         } catch (java.lang.Exception ex)
265         {
266           throw new IllegalStateException(ex.toString());
267         }
268       }
269
270       public java.lang.Object newInstance(java.lang.Object parent)
271       {
272         return null;
273       }
274     };
275     desc.setHandler(handler);
276     desc.setMultivalued(false);
277     addFieldDescriptor(desc);
278
279     // -- validation code for: _groupRef
280     fieldValidator = new org.exolab.castor.xml.FieldValidator();
281     { // -- local scope
282       org.exolab.castor.xml.validators.StringValidator typeValidator;
283       typeValidator = new org.exolab.castor.xml.validators.StringValidator();
284       fieldValidator.setValidator(typeValidator);
285       typeValidator.setWhiteSpace("preserve");
286     }
287     desc.setValidator(fieldValidator);
288     // -- _graphColour
289     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
290             java.lang.Integer.TYPE, "_graphColour", "graphColour",
291             org.exolab.castor.xml.NodeType.Attribute);
292     handler = new org.exolab.castor.xml.XMLFieldHandler()
293     {
294       public java.lang.Object getValue(java.lang.Object object)
295               throws IllegalStateException
296       {
297         Annotation target = (Annotation) object;
298         if (!target.hasGraphColour())
299         {
300           return null;
301         }
302         return new java.lang.Integer(target.getGraphColour());
303       }
304
305       public void setValue(java.lang.Object object, java.lang.Object value)
306               throws IllegalStateException, IllegalArgumentException
307       {
308         try
309         {
310           Annotation target = (Annotation) object;
311           // if null, use delete method for optional primitives
312           if (value == null)
313           {
314             target.deleteGraphColour();
315             return;
316           }
317           target.setGraphColour(((java.lang.Integer) value).intValue());
318         } catch (java.lang.Exception ex)
319         {
320           throw new IllegalStateException(ex.toString());
321         }
322       }
323
324       public java.lang.Object newInstance(java.lang.Object parent)
325       {
326         return null;
327       }
328     };
329     desc.setHandler(handler);
330     desc.setMultivalued(false);
331     addFieldDescriptor(desc);
332
333     // -- validation code for: _graphColour
334     fieldValidator = new org.exolab.castor.xml.FieldValidator();
335     { // -- local scope
336       org.exolab.castor.xml.validators.IntValidator typeValidator;
337       typeValidator = new org.exolab.castor.xml.validators.IntValidator();
338       fieldValidator.setValidator(typeValidator);
339       typeValidator.setMinInclusive(-2147483648);
340       typeValidator.setMaxInclusive(2147483647);
341     }
342     desc.setValidator(fieldValidator);
343     // -- _graphGroup
344     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
345             java.lang.Integer.TYPE, "_graphGroup", "graphGroup",
346             org.exolab.castor.xml.NodeType.Attribute);
347     handler = new org.exolab.castor.xml.XMLFieldHandler()
348     {
349       public java.lang.Object getValue(java.lang.Object object)
350               throws IllegalStateException
351       {
352         Annotation target = (Annotation) object;
353         if (!target.hasGraphGroup())
354         {
355           return null;
356         }
357         return new java.lang.Integer(target.getGraphGroup());
358       }
359
360       public void setValue(java.lang.Object object, java.lang.Object value)
361               throws IllegalStateException, IllegalArgumentException
362       {
363         try
364         {
365           Annotation target = (Annotation) object;
366           // if null, use delete method for optional primitives
367           if (value == null)
368           {
369             target.deleteGraphGroup();
370             return;
371           }
372           target.setGraphGroup(((java.lang.Integer) value).intValue());
373         } catch (java.lang.Exception ex)
374         {
375           throw new IllegalStateException(ex.toString());
376         }
377       }
378
379       public java.lang.Object newInstance(java.lang.Object parent)
380       {
381         return null;
382       }
383     };
384     desc.setHandler(handler);
385     desc.setMultivalued(false);
386     addFieldDescriptor(desc);
387
388     // -- validation code for: _graphGroup
389     fieldValidator = new org.exolab.castor.xml.FieldValidator();
390     { // -- local scope
391       org.exolab.castor.xml.validators.IntValidator typeValidator;
392       typeValidator = new org.exolab.castor.xml.validators.IntValidator();
393       fieldValidator.setValidator(typeValidator);
394       typeValidator.setMinInclusive(-2147483648);
395       typeValidator.setMaxInclusive(2147483647);
396     }
397     desc.setValidator(fieldValidator);
398     // -- _graphHeight
399     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
400             java.lang.Integer.TYPE, "_graphHeight", "graphHeight",
401             org.exolab.castor.xml.NodeType.Attribute);
402     handler = new org.exolab.castor.xml.XMLFieldHandler()
403     {
404       public java.lang.Object getValue(java.lang.Object object)
405               throws IllegalStateException
406       {
407         Annotation target = (Annotation) object;
408         if (!target.hasGraphHeight())
409         {
410           return null;
411         }
412         return new java.lang.Integer(target.getGraphHeight());
413       }
414
415       public void setValue(java.lang.Object object, java.lang.Object value)
416               throws IllegalStateException, IllegalArgumentException
417       {
418         try
419         {
420           Annotation target = (Annotation) object;
421           // if null, use delete method for optional primitives
422           if (value == null)
423           {
424             target.deleteGraphHeight();
425             return;
426           }
427           target.setGraphHeight(((java.lang.Integer) value).intValue());
428         } catch (java.lang.Exception ex)
429         {
430           throw new IllegalStateException(ex.toString());
431         }
432       }
433
434       public java.lang.Object newInstance(java.lang.Object parent)
435       {
436         return null;
437       }
438     };
439     desc.setHandler(handler);
440     desc.setMultivalued(false);
441     addFieldDescriptor(desc);
442
443     // -- validation code for: _graphHeight
444     fieldValidator = new org.exolab.castor.xml.FieldValidator();
445     { // -- local scope
446       org.exolab.castor.xml.validators.IntValidator typeValidator;
447       typeValidator = new org.exolab.castor.xml.validators.IntValidator();
448       fieldValidator.setValidator(typeValidator);
449       typeValidator.setMinInclusive(-2147483648);
450       typeValidator.setMaxInclusive(2147483647);
451     }
452     desc.setValidator(fieldValidator);
453     // -- _id
454     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
455             java.lang.String.class, "_id", "id",
456             org.exolab.castor.xml.NodeType.Attribute);
457     desc.setImmutable(true);
458     handler = new org.exolab.castor.xml.XMLFieldHandler()
459     {
460       public java.lang.Object getValue(java.lang.Object object)
461               throws IllegalStateException
462       {
463         Annotation target = (Annotation) object;
464         return target.getId();
465       }
466
467       public void setValue(java.lang.Object object, java.lang.Object value)
468               throws IllegalStateException, IllegalArgumentException
469       {
470         try
471         {
472           Annotation target = (Annotation) object;
473           target.setId((java.lang.String) value);
474         } catch (java.lang.Exception ex)
475         {
476           throw new IllegalStateException(ex.toString());
477         }
478       }
479
480       public java.lang.Object newInstance(java.lang.Object parent)
481       {
482         return null;
483       }
484     };
485     desc.setHandler(handler);
486     desc.setMultivalued(false);
487     addFieldDescriptor(desc);
488
489     // -- validation code for: _id
490     fieldValidator = new org.exolab.castor.xml.FieldValidator();
491     { // -- local scope
492       org.exolab.castor.xml.validators.StringValidator typeValidator;
493       typeValidator = new org.exolab.castor.xml.validators.StringValidator();
494       fieldValidator.setValidator(typeValidator);
495       typeValidator.setWhiteSpace("preserve");
496     }
497     desc.setValidator(fieldValidator);
498     // -- _scoreOnly
499     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
500             java.lang.Boolean.TYPE, "_scoreOnly", "scoreOnly",
501             org.exolab.castor.xml.NodeType.Attribute);
502     handler = new org.exolab.castor.xml.XMLFieldHandler()
503     {
504       public java.lang.Object getValue(java.lang.Object object)
505               throws IllegalStateException
506       {
507         Annotation target = (Annotation) object;
508         if (!target.hasScoreOnly())
509         {
510           return null;
511         }
512         return (target.getScoreOnly() ? java.lang.Boolean.TRUE
513                 : java.lang.Boolean.FALSE);
514       }
515
516       public void setValue(java.lang.Object object, java.lang.Object value)
517               throws IllegalStateException, IllegalArgumentException
518       {
519         try
520         {
521           Annotation target = (Annotation) object;
522           // if null, use delete method for optional primitives
523           if (value == null)
524           {
525             target.deleteScoreOnly();
526             return;
527           }
528           target.setScoreOnly(((java.lang.Boolean) value).booleanValue());
529         } catch (java.lang.Exception ex)
530         {
531           throw new IllegalStateException(ex.toString());
532         }
533       }
534
535       public java.lang.Object newInstance(java.lang.Object parent)
536       {
537         return null;
538       }
539     };
540     desc.setHandler(handler);
541     desc.setMultivalued(false);
542     addFieldDescriptor(desc);
543
544     // -- validation code for: _scoreOnly
545     fieldValidator = new org.exolab.castor.xml.FieldValidator();
546     { // -- local scope
547       org.exolab.castor.xml.validators.BooleanValidator typeValidator;
548       typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
549       fieldValidator.setValidator(typeValidator);
550     }
551     desc.setValidator(fieldValidator);
552     // -- _score
553     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
554             java.lang.Double.TYPE, "_score", "score",
555             org.exolab.castor.xml.NodeType.Attribute);
556     handler = new org.exolab.castor.xml.XMLFieldHandler()
557     {
558       public java.lang.Object getValue(java.lang.Object object)
559               throws IllegalStateException
560       {
561         Annotation target = (Annotation) object;
562         if (!target.hasScore())
563         {
564           return null;
565         }
566         return new java.lang.Double(target.getScore());
567       }
568
569       public void setValue(java.lang.Object object, java.lang.Object value)
570               throws IllegalStateException, IllegalArgumentException
571       {
572         try
573         {
574           Annotation target = (Annotation) object;
575           // if null, use delete method for optional primitives
576           if (value == null)
577           {
578             target.deleteScore();
579             return;
580           }
581           target.setScore(((java.lang.Double) value).doubleValue());
582         } catch (java.lang.Exception ex)
583         {
584           throw new IllegalStateException(ex.toString());
585         }
586       }
587
588       public java.lang.Object newInstance(java.lang.Object parent)
589       {
590         return null;
591       }
592     };
593     desc.setHandler(handler);
594     desc.setMultivalued(false);
595     addFieldDescriptor(desc);
596
597     // -- validation code for: _score
598     fieldValidator = new org.exolab.castor.xml.FieldValidator();
599     { // -- local scope
600       org.exolab.castor.xml.validators.DoubleValidator typeValidator;
601       typeValidator = new org.exolab.castor.xml.validators.DoubleValidator();
602       fieldValidator.setValidator(typeValidator);
603       typeValidator.setMinInclusive(-1.7976931348623157E308);
604       typeValidator.setMaxInclusive(1.7976931348623157E308);
605     }
606     desc.setValidator(fieldValidator);
607     // -- _visible
608     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
609             java.lang.Boolean.TYPE, "_visible", "visible",
610             org.exolab.castor.xml.NodeType.Attribute);
611     handler = new org.exolab.castor.xml.XMLFieldHandler()
612     {
613       public java.lang.Object getValue(java.lang.Object object)
614               throws IllegalStateException
615       {
616         Annotation target = (Annotation) object;
617         if (!target.hasVisible())
618         {
619           return null;
620         }
621         return (target.getVisible() ? java.lang.Boolean.TRUE
622                 : java.lang.Boolean.FALSE);
623       }
624
625       public void setValue(java.lang.Object object, java.lang.Object value)
626               throws IllegalStateException, IllegalArgumentException
627       {
628         try
629         {
630           Annotation target = (Annotation) object;
631           // if null, use delete method for optional primitives
632           if (value == null)
633           {
634             target.deleteVisible();
635             return;
636           }
637           target.setVisible(((java.lang.Boolean) value).booleanValue());
638         } catch (java.lang.Exception ex)
639         {
640           throw new IllegalStateException(ex.toString());
641         }
642       }
643
644       public java.lang.Object newInstance(java.lang.Object parent)
645       {
646         return null;
647       }
648     };
649     desc.setHandler(handler);
650     desc.setMultivalued(false);
651     addFieldDescriptor(desc);
652
653     // -- validation code for: _visible
654     fieldValidator = new org.exolab.castor.xml.FieldValidator();
655     { // -- local scope
656       org.exolab.castor.xml.validators.BooleanValidator typeValidator;
657       typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
658       fieldValidator.setValidator(typeValidator);
659     }
660     desc.setValidator(fieldValidator);
661     // -- _centreColLabels
662     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
663             java.lang.Boolean.TYPE, "_centreColLabels", "centreColLabels",
664             org.exolab.castor.xml.NodeType.Attribute);
665     handler = new org.exolab.castor.xml.XMLFieldHandler()
666     {
667       public java.lang.Object getValue(java.lang.Object object)
668               throws IllegalStateException
669       {
670         Annotation target = (Annotation) object;
671         if (!target.hasCentreColLabels())
672         {
673           return null;
674         }
675         return (target.getCentreColLabels() ? java.lang.Boolean.TRUE
676                 : java.lang.Boolean.FALSE);
677       }
678
679       public void setValue(java.lang.Object object, java.lang.Object value)
680               throws IllegalStateException, IllegalArgumentException
681       {
682         try
683         {
684           Annotation target = (Annotation) object;
685           // if null, use delete method for optional primitives
686           if (value == null)
687           {
688             target.deleteCentreColLabels();
689             return;
690           }
691           target.setCentreColLabels(((java.lang.Boolean) value)
692                   .booleanValue());
693         } catch (java.lang.Exception ex)
694         {
695           throw new IllegalStateException(ex.toString());
696         }
697       }
698
699       public java.lang.Object newInstance(java.lang.Object parent)
700       {
701         return null;
702       }
703     };
704     desc.setHandler(handler);
705     desc.setMultivalued(false);
706     addFieldDescriptor(desc);
707
708     // -- validation code for: _centreColLabels
709     fieldValidator = new org.exolab.castor.xml.FieldValidator();
710     { // -- local scope
711       org.exolab.castor.xml.validators.BooleanValidator typeValidator;
712       typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
713       fieldValidator.setValidator(typeValidator);
714     }
715     desc.setValidator(fieldValidator);
716     // -- _scaleColLabels
717     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
718             java.lang.Boolean.TYPE, "_scaleColLabels", "scaleColLabels",
719             org.exolab.castor.xml.NodeType.Attribute);
720     handler = new org.exolab.castor.xml.XMLFieldHandler()
721     {
722       public java.lang.Object getValue(java.lang.Object object)
723               throws IllegalStateException
724       {
725         Annotation target = (Annotation) object;
726         if (!target.hasScaleColLabels())
727         {
728           return null;
729         }
730         return (target.getScaleColLabels() ? java.lang.Boolean.TRUE
731                 : java.lang.Boolean.FALSE);
732       }
733
734       public void setValue(java.lang.Object object, java.lang.Object value)
735               throws IllegalStateException, IllegalArgumentException
736       {
737         try
738         {
739           Annotation target = (Annotation) object;
740           // if null, use delete method for optional primitives
741           if (value == null)
742           {
743             target.deleteScaleColLabels();
744             return;
745           }
746           target.setScaleColLabels(((java.lang.Boolean) value)
747                   .booleanValue());
748         } catch (java.lang.Exception ex)
749         {
750           throw new IllegalStateException(ex.toString());
751         }
752       }
753
754       public java.lang.Object newInstance(java.lang.Object parent)
755       {
756         return null;
757       }
758     };
759     desc.setHandler(handler);
760     desc.setMultivalued(false);
761     addFieldDescriptor(desc);
762
763     // -- validation code for: _scaleColLabels
764     fieldValidator = new org.exolab.castor.xml.FieldValidator();
765     { // -- local scope
766       org.exolab.castor.xml.validators.BooleanValidator typeValidator;
767       typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
768       fieldValidator.setValidator(typeValidator);
769     }
770     desc.setValidator(fieldValidator);
771     // -- _showAllColLabels
772     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
773             java.lang.Boolean.TYPE, "_showAllColLabels",
774             "showAllColLabels", org.exolab.castor.xml.NodeType.Attribute);
775     handler = new org.exolab.castor.xml.XMLFieldHandler()
776     {
777       public java.lang.Object getValue(java.lang.Object object)
778               throws IllegalStateException
779       {
780         Annotation target = (Annotation) object;
781         if (!target.hasShowAllColLabels())
782         {
783           return null;
784         }
785         return (target.getShowAllColLabels() ? java.lang.Boolean.TRUE
786                 : java.lang.Boolean.FALSE);
787       }
788
789       public void setValue(java.lang.Object object, java.lang.Object value)
790               throws IllegalStateException, IllegalArgumentException
791       {
792         try
793         {
794           Annotation target = (Annotation) object;
795           // if null, use delete method for optional primitives
796           if (value == null)
797           {
798             target.deleteShowAllColLabels();
799             return;
800           }
801           target.setShowAllColLabels(((java.lang.Boolean) value)
802                   .booleanValue());
803         } catch (java.lang.Exception ex)
804         {
805           throw new IllegalStateException(ex.toString());
806         }
807       }
808
809       public java.lang.Object newInstance(java.lang.Object parent)
810       {
811         return null;
812       }
813     };
814     desc.setHandler(handler);
815     desc.setMultivalued(false);
816     addFieldDescriptor(desc);
817
818     // -- validation code for: _showAllColLabels
819     fieldValidator = new org.exolab.castor.xml.FieldValidator();
820     { // -- local scope
821       org.exolab.castor.xml.validators.BooleanValidator typeValidator;
822       typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
823       fieldValidator.setValidator(typeValidator);
824     }
825     desc.setValidator(fieldValidator);
826     // -- _autoCalculated
827     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
828             java.lang.Boolean.TYPE, "_autoCalculated", "autoCalculated",
829             org.exolab.castor.xml.NodeType.Attribute);
830     handler = new org.exolab.castor.xml.XMLFieldHandler()
831     {
832       public java.lang.Object getValue(java.lang.Object object)
833               throws IllegalStateException
834       {
835         Annotation target = (Annotation) object;
836         if (!target.hasAutoCalculated())
837         {
838           return null;
839         }
840         return (target.getAutoCalculated() ? java.lang.Boolean.TRUE
841                 : java.lang.Boolean.FALSE);
842       }
843
844       public void setValue(java.lang.Object object, java.lang.Object value)
845               throws IllegalStateException, IllegalArgumentException
846       {
847         try
848         {
849           Annotation target = (Annotation) object;
850           // if null, use delete method for optional primitives
851           if (value == null)
852           {
853             target.deleteAutoCalculated();
854             return;
855           }
856           target.setAutoCalculated(((java.lang.Boolean) value)
857                   .booleanValue());
858         } catch (java.lang.Exception ex)
859         {
860           throw new IllegalStateException(ex.toString());
861         }
862       }
863
864       public java.lang.Object newInstance(java.lang.Object parent)
865       {
866         return null;
867       }
868     };
869     desc.setHandler(handler);
870     desc.setMultivalued(false);
871     addFieldDescriptor(desc);
872
873     // -- validation code for: _autoCalculated
874     fieldValidator = new org.exolab.castor.xml.FieldValidator();
875     { // -- local scope
876       org.exolab.castor.xml.validators.BooleanValidator typeValidator;
877       typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
878       fieldValidator.setValidator(typeValidator);
879     }
880     desc.setValidator(fieldValidator);
881     // -- _belowAlignment
882     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
883             java.lang.Boolean.TYPE, "_belowAlignment", "belowAlignment",
884             org.exolab.castor.xml.NodeType.Attribute);
885     handler = new org.exolab.castor.xml.XMLFieldHandler()
886     {
887       public java.lang.Object getValue(java.lang.Object object)
888               throws IllegalStateException
889       {
890         Annotation target = (Annotation) object;
891         if (!target.hasBelowAlignment())
892         {
893           return null;
894         }
895         return (target.getBelowAlignment() ? java.lang.Boolean.TRUE
896                 : java.lang.Boolean.FALSE);
897       }
898
899       public void setValue(java.lang.Object object, java.lang.Object value)
900               throws IllegalStateException, IllegalArgumentException
901       {
902         try
903         {
904           Annotation target = (Annotation) object;
905           // if null, use delete method for optional primitives
906           if (value == null)
907           {
908             target.deleteBelowAlignment();
909             return;
910           }
911           target.setBelowAlignment(((java.lang.Boolean) value)
912                   .booleanValue());
913         } catch (java.lang.Exception ex)
914         {
915           throw new IllegalStateException(ex.toString());
916         }
917       }
918
919       public java.lang.Object newInstance(java.lang.Object parent)
920       {
921         return null;
922       }
923     };
924     desc.setHandler(handler);
925     desc.setMultivalued(false);
926     addFieldDescriptor(desc);
927
928     // -- validation code for: _belowAlignment
929     fieldValidator = new org.exolab.castor.xml.FieldValidator();
930     { // -- local scope
931       org.exolab.castor.xml.validators.BooleanValidator typeValidator;
932       typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
933       fieldValidator.setValidator(typeValidator);
934     }
935     desc.setValidator(fieldValidator);
936     // -- _calcId
937     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
938             java.lang.String.class, "_calcId", "calcId",
939             org.exolab.castor.xml.NodeType.Attribute);
940     desc.setImmutable(true);
941     handler = new org.exolab.castor.xml.XMLFieldHandler()
942     {
943       public java.lang.Object getValue(java.lang.Object object)
944               throws IllegalStateException
945       {
946         Annotation target = (Annotation) object;
947         return target.getCalcId();
948       }
949
950       public void setValue(java.lang.Object object, java.lang.Object value)
951               throws IllegalStateException, IllegalArgumentException
952       {
953         try
954         {
955           Annotation target = (Annotation) object;
956           target.setCalcId((java.lang.String) value);
957         } catch (java.lang.Exception ex)
958         {
959           throw new IllegalStateException(ex.toString());
960         }
961       }
962
963       public java.lang.Object newInstance(java.lang.Object parent)
964       {
965         return null;
966       }
967     };
968     desc.setHandler(handler);
969     desc.setMultivalued(false);
970     addFieldDescriptor(desc);
971
972     // -- validation code for: _calcId
973     fieldValidator = new org.exolab.castor.xml.FieldValidator();
974     { // -- local scope
975       org.exolab.castor.xml.validators.StringValidator typeValidator;
976       typeValidator = new org.exolab.castor.xml.validators.StringValidator();
977       fieldValidator.setValidator(typeValidator);
978       typeValidator.setWhiteSpace("preserve");
979     }
980     desc.setValidator(fieldValidator);
981     // -- initialize element descriptors
982
983     // -- _annotationElementList
984     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
985             jalview.schemabinding.version2.AnnotationElement.class,
986             "_annotationElementList", "annotationElement",
987             org.exolab.castor.xml.NodeType.Element);
988     handler = new org.exolab.castor.xml.XMLFieldHandler()
989     {
990       public java.lang.Object getValue(java.lang.Object object)
991               throws IllegalStateException
992       {
993         Annotation target = (Annotation) object;
994         return target.getAnnotationElement();
995       }
996
997       public void setValue(java.lang.Object object, java.lang.Object value)
998               throws IllegalStateException, IllegalArgumentException
999       {
1000         try
1001         {
1002           Annotation target = (Annotation) object;
1003           target.addAnnotationElement((jalview.schemabinding.version2.AnnotationElement) value);
1004         } catch (java.lang.Exception ex)
1005         {
1006           throw new IllegalStateException(ex.toString());
1007         }
1008       }
1009
1010       public void resetValue(Object object) throws IllegalStateException,
1011               IllegalArgumentException
1012       {
1013         try
1014         {
1015           Annotation target = (Annotation) object;
1016           target.removeAllAnnotationElement();
1017         } catch (java.lang.Exception ex)
1018         {
1019           throw new IllegalStateException(ex.toString());
1020         }
1021       }
1022
1023       public java.lang.Object newInstance(java.lang.Object parent)
1024       {
1025         return new jalview.schemabinding.version2.AnnotationElement();
1026       }
1027     };
1028     desc.setHandler(handler);
1029     desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
1030     desc.setMultivalued(true);
1031     addFieldDescriptor(desc);
1032
1033     // -- validation code for: _annotationElementList
1034     fieldValidator = new org.exolab.castor.xml.FieldValidator();
1035     fieldValidator.setMinOccurs(0);
1036     { // -- local scope
1037     }
1038     desc.setValidator(fieldValidator);
1039     // -- _label
1040     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
1041             java.lang.String.class, "_label", "label",
1042             org.exolab.castor.xml.NodeType.Element);
1043     desc.setImmutable(true);
1044     handler = new org.exolab.castor.xml.XMLFieldHandler()
1045     {
1046       public java.lang.Object getValue(java.lang.Object object)
1047               throws IllegalStateException
1048       {
1049         Annotation target = (Annotation) object;
1050         return target.getLabel();
1051       }
1052
1053       public void setValue(java.lang.Object object, java.lang.Object value)
1054               throws IllegalStateException, IllegalArgumentException
1055       {
1056         try
1057         {
1058           Annotation target = (Annotation) object;
1059           target.setLabel((java.lang.String) value);
1060         } catch (java.lang.Exception ex)
1061         {
1062           throw new IllegalStateException(ex.toString());
1063         }
1064       }
1065
1066       public java.lang.Object newInstance(java.lang.Object parent)
1067       {
1068         return null;
1069       }
1070     };
1071     desc.setHandler(handler);
1072     desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
1073     desc.setRequired(true);
1074     desc.setMultivalued(false);
1075     addFieldDescriptor(desc);
1076
1077     // -- validation code for: _label
1078     fieldValidator = new org.exolab.castor.xml.FieldValidator();
1079     fieldValidator.setMinOccurs(1);
1080     { // -- local scope
1081       org.exolab.castor.xml.validators.StringValidator typeValidator;
1082       typeValidator = new org.exolab.castor.xml.validators.StringValidator();
1083       fieldValidator.setValidator(typeValidator);
1084       typeValidator.setWhiteSpace("preserve");
1085     }
1086     desc.setValidator(fieldValidator);
1087     // -- _description
1088     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
1089             java.lang.String.class, "_description", "description",
1090             org.exolab.castor.xml.NodeType.Element);
1091     desc.setImmutable(true);
1092     handler = new org.exolab.castor.xml.XMLFieldHandler()
1093     {
1094       public java.lang.Object getValue(java.lang.Object object)
1095               throws IllegalStateException
1096       {
1097         Annotation target = (Annotation) object;
1098         return target.getDescription();
1099       }
1100
1101       public void setValue(java.lang.Object object, java.lang.Object value)
1102               throws IllegalStateException, IllegalArgumentException
1103       {
1104         try
1105         {
1106           Annotation target = (Annotation) object;
1107           target.setDescription((java.lang.String) value);
1108         } catch (java.lang.Exception ex)
1109         {
1110           throw new IllegalStateException(ex.toString());
1111         }
1112       }
1113
1114       public java.lang.Object newInstance(java.lang.Object parent)
1115       {
1116         return null;
1117       }
1118     };
1119     desc.setHandler(handler);
1120     desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
1121     desc.setMultivalued(false);
1122     addFieldDescriptor(desc);
1123
1124     // -- validation code for: _description
1125     fieldValidator = new org.exolab.castor.xml.FieldValidator();
1126     { // -- local scope
1127       org.exolab.castor.xml.validators.StringValidator typeValidator;
1128       typeValidator = new org.exolab.castor.xml.validators.StringValidator();
1129       fieldValidator.setValidator(typeValidator);
1130       typeValidator.setWhiteSpace("preserve");
1131     }
1132     desc.setValidator(fieldValidator);
1133     // -- _thresholdLine
1134     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
1135             jalview.schemabinding.version2.ThresholdLine.class,
1136             "_thresholdLine", "thresholdLine",
1137             org.exolab.castor.xml.NodeType.Element);
1138     handler = new org.exolab.castor.xml.XMLFieldHandler()
1139     {
1140       public java.lang.Object getValue(java.lang.Object object)
1141               throws IllegalStateException
1142       {
1143         Annotation target = (Annotation) object;
1144         return target.getThresholdLine();
1145       }
1146
1147       public void setValue(java.lang.Object object, java.lang.Object value)
1148               throws IllegalStateException, IllegalArgumentException
1149       {
1150         try
1151         {
1152           Annotation target = (Annotation) object;
1153           target.setThresholdLine((jalview.schemabinding.version2.ThresholdLine) value);
1154         } catch (java.lang.Exception ex)
1155         {
1156           throw new IllegalStateException(ex.toString());
1157         }
1158       }
1159
1160       public java.lang.Object newInstance(java.lang.Object parent)
1161       {
1162         return new jalview.schemabinding.version2.ThresholdLine();
1163       }
1164     };
1165     desc.setHandler(handler);
1166     desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
1167     desc.setMultivalued(false);
1168     addFieldDescriptor(desc);
1169
1170     // -- validation code for: _thresholdLine
1171     fieldValidator = new org.exolab.castor.xml.FieldValidator();
1172     { // -- local scope
1173     }
1174     desc.setValidator(fieldValidator);
1175     // -- _propertyList
1176     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
1177             jalview.schemabinding.version2.Property.class, "_propertyList",
1178             "property", org.exolab.castor.xml.NodeType.Element);
1179     handler = new org.exolab.castor.xml.XMLFieldHandler()
1180     {
1181       public java.lang.Object getValue(java.lang.Object object)
1182               throws IllegalStateException
1183       {
1184         Annotation target = (Annotation) object;
1185         return target.getProperty();
1186       }
1187
1188       public void setValue(java.lang.Object object, java.lang.Object value)
1189               throws IllegalStateException, IllegalArgumentException
1190       {
1191         try
1192         {
1193           Annotation target = (Annotation) object;
1194           target.addProperty((jalview.schemabinding.version2.Property) value);
1195         } catch (java.lang.Exception ex)
1196         {
1197           throw new IllegalStateException(ex.toString());
1198         }
1199       }
1200
1201       public void resetValue(Object object) throws IllegalStateException,
1202               IllegalArgumentException
1203       {
1204         try
1205         {
1206           Annotation target = (Annotation) object;
1207           target.removeAllProperty();
1208         } catch (java.lang.Exception ex)
1209         {
1210           throw new IllegalStateException(ex.toString());
1211         }
1212       }
1213
1214       public java.lang.Object newInstance(java.lang.Object parent)
1215       {
1216         return new jalview.schemabinding.version2.Property();
1217       }
1218     };
1219     desc.setHandler(handler);
1220     desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
1221     desc.setMultivalued(true);
1222     addFieldDescriptor(desc);
1223
1224     // -- validation code for: _propertyList
1225     fieldValidator = new org.exolab.castor.xml.FieldValidator();
1226     fieldValidator.setMinOccurs(0);
1227     { // -- local scope
1228     }
1229     desc.setValidator(fieldValidator);
1230   }
1231
1232   // -----------/
1233   // - Methods -/
1234   // -----------/
1235
1236   /**
1237    * Method getAccessMode.
1238    * 
1239    * @return the access mode specified for this class.
1240    */
1241   public org.exolab.castor.mapping.AccessMode getAccessMode()
1242   {
1243     return null;
1244   }
1245
1246   /**
1247    * Method getIdentity.
1248    * 
1249    * @return the identity field, null if this class has no identity.
1250    */
1251   public org.exolab.castor.mapping.FieldDescriptor getIdentity()
1252   {
1253     return super.getIdentity();
1254   }
1255
1256   /**
1257    * Method getJavaClass.
1258    * 
1259    * @return the Java class represented by this descriptor.
1260    */
1261   public java.lang.Class getJavaClass()
1262   {
1263     return jalview.schemabinding.version2.Annotation.class;
1264   }
1265
1266   /**
1267    * Method getNameSpacePrefix.
1268    * 
1269    * @return the namespace prefix to use when marshaling as XML.
1270    */
1271   public java.lang.String getNameSpacePrefix()
1272   {
1273     return _nsPrefix;
1274   }
1275
1276   /**
1277    * Method getNameSpaceURI.
1278    * 
1279    * @return the namespace URI used when marshaling and unmarshaling as XML.
1280    */
1281   public java.lang.String getNameSpaceURI()
1282   {
1283     return _nsURI;
1284   }
1285
1286   /**
1287    * Method getValidator.
1288    * 
1289    * @return a specific validator for the class described by this
1290    *         ClassDescriptor.
1291    */
1292   public org.exolab.castor.xml.TypeValidator getValidator()
1293   {
1294     return this;
1295   }
1296
1297   /**
1298    * Method getXMLName.
1299    * 
1300    * @return the XML Name for the Class being described.
1301    */
1302   public java.lang.String getXMLName()
1303   {
1304     return _xmlName;
1305   }
1306
1307   /**
1308    * Method isElementDefinition.
1309    * 
1310    * @return true if XML schema definition of this Class is that of a global
1311    *         element or element with anonymous type definition.
1312    */
1313   public boolean isElementDefinition()
1314   {
1315     return _elementDefinition;
1316   }
1317
1318 }