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