JAL-1432 updated copyright notices
[jalview.git] / src / jalview / schemabinding / version2 / descriptors / TreeDescriptor.java
1 /*
2  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
3  * Copyright (C) 2014 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 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  * The Jalview Authors are detailed in the 'AUTHORS' file.
18  */
19 package jalview.schemabinding.version2.descriptors;
20
21 //---------------------------------/
22 //- Imported classes and packages -/
23 //---------------------------------/
24
25 import jalview.schemabinding.version2.Tree;
26
27 /**
28  * Class TreeDescriptor.
29  * 
30  * @version $Revision$ $Date$
31  */
32 public class TreeDescriptor extends
33         org.exolab.castor.xml.util.XMLClassDescriptorImpl
34 {
35
36   // --------------------------/
37   // - Class/Member Variables -/
38   // --------------------------/
39
40   /**
41    * Field _elementDefinition.
42    */
43   private boolean _elementDefinition;
44
45   /**
46    * Field _nsPrefix.
47    */
48   private java.lang.String _nsPrefix;
49
50   /**
51    * Field _nsURI.
52    */
53   private java.lang.String _nsURI;
54
55   /**
56    * Field _xmlName.
57    */
58   private java.lang.String _xmlName;
59
60   // ----------------/
61   // - Constructors -/
62   // ----------------/
63
64   public TreeDescriptor()
65   {
66     super();
67     _nsURI = "www.jalview.org";
68     _xmlName = "tree";
69     _elementDefinition = true;
70
71     // -- set grouping compositor
72     setCompositorAsSequence();
73     org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
74     org.exolab.castor.mapping.FieldHandler handler = null;
75     org.exolab.castor.xml.FieldValidator fieldValidator = null;
76     // -- initialize attribute descriptors
77
78     // -- _fontName
79     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
80             java.lang.String.class, "_fontName", "fontName",
81             org.exolab.castor.xml.NodeType.Attribute);
82     desc.setImmutable(true);
83     handler = new org.exolab.castor.xml.XMLFieldHandler()
84     {
85       public java.lang.Object getValue(java.lang.Object object)
86               throws IllegalStateException
87       {
88         Tree target = (Tree) object;
89         return target.getFontName();
90       }
91
92       public void setValue(java.lang.Object object, java.lang.Object value)
93               throws IllegalStateException, IllegalArgumentException
94       {
95         try
96         {
97           Tree target = (Tree) object;
98           target.setFontName((java.lang.String) value);
99         } catch (java.lang.Exception ex)
100         {
101           throw new IllegalStateException(ex.toString());
102         }
103       }
104
105       public java.lang.Object newInstance(java.lang.Object parent)
106       {
107         return null;
108       }
109     };
110     desc.setHandler(handler);
111     desc.setMultivalued(false);
112     addFieldDescriptor(desc);
113
114     // -- validation code for: _fontName
115     fieldValidator = new org.exolab.castor.xml.FieldValidator();
116     { // -- local scope
117       org.exolab.castor.xml.validators.StringValidator typeValidator;
118       typeValidator = new org.exolab.castor.xml.validators.StringValidator();
119       fieldValidator.setValidator(typeValidator);
120       typeValidator.setWhiteSpace("preserve");
121     }
122     desc.setValidator(fieldValidator);
123     // -- _fontSize
124     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
125             java.lang.Integer.TYPE, "_fontSize", "fontSize",
126             org.exolab.castor.xml.NodeType.Attribute);
127     handler = new org.exolab.castor.xml.XMLFieldHandler()
128     {
129       public java.lang.Object getValue(java.lang.Object object)
130               throws IllegalStateException
131       {
132         Tree target = (Tree) object;
133         if (!target.hasFontSize())
134         {
135           return null;
136         }
137         return new java.lang.Integer(target.getFontSize());
138       }
139
140       public void setValue(java.lang.Object object, java.lang.Object value)
141               throws IllegalStateException, IllegalArgumentException
142       {
143         try
144         {
145           Tree target = (Tree) object;
146           // if null, use delete method for optional primitives
147           if (value == null)
148           {
149             target.deleteFontSize();
150             return;
151           }
152           target.setFontSize(((java.lang.Integer) value).intValue());
153         } catch (java.lang.Exception ex)
154         {
155           throw new IllegalStateException(ex.toString());
156         }
157       }
158
159       public java.lang.Object newInstance(java.lang.Object parent)
160       {
161         return null;
162       }
163     };
164     desc.setHandler(handler);
165     desc.setMultivalued(false);
166     addFieldDescriptor(desc);
167
168     // -- validation code for: _fontSize
169     fieldValidator = new org.exolab.castor.xml.FieldValidator();
170     { // -- local scope
171       org.exolab.castor.xml.validators.IntValidator typeValidator;
172       typeValidator = new org.exolab.castor.xml.validators.IntValidator();
173       fieldValidator.setValidator(typeValidator);
174       typeValidator.setMinInclusive(-2147483648);
175       typeValidator.setMaxInclusive(2147483647);
176     }
177     desc.setValidator(fieldValidator);
178     // -- _fontStyle
179     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
180             java.lang.Integer.TYPE, "_fontStyle", "fontStyle",
181             org.exolab.castor.xml.NodeType.Attribute);
182     handler = new org.exolab.castor.xml.XMLFieldHandler()
183     {
184       public java.lang.Object getValue(java.lang.Object object)
185               throws IllegalStateException
186       {
187         Tree target = (Tree) object;
188         if (!target.hasFontStyle())
189         {
190           return null;
191         }
192         return new java.lang.Integer(target.getFontStyle());
193       }
194
195       public void setValue(java.lang.Object object, java.lang.Object value)
196               throws IllegalStateException, IllegalArgumentException
197       {
198         try
199         {
200           Tree target = (Tree) object;
201           // if null, use delete method for optional primitives
202           if (value == null)
203           {
204             target.deleteFontStyle();
205             return;
206           }
207           target.setFontStyle(((java.lang.Integer) value).intValue());
208         } catch (java.lang.Exception ex)
209         {
210           throw new IllegalStateException(ex.toString());
211         }
212       }
213
214       public java.lang.Object newInstance(java.lang.Object parent)
215       {
216         return null;
217       }
218     };
219     desc.setHandler(handler);
220     desc.setMultivalued(false);
221     addFieldDescriptor(desc);
222
223     // -- validation code for: _fontStyle
224     fieldValidator = new org.exolab.castor.xml.FieldValidator();
225     { // -- local scope
226       org.exolab.castor.xml.validators.IntValidator typeValidator;
227       typeValidator = new org.exolab.castor.xml.validators.IntValidator();
228       fieldValidator.setValidator(typeValidator);
229       typeValidator.setMinInclusive(-2147483648);
230       typeValidator.setMaxInclusive(2147483647);
231     }
232     desc.setValidator(fieldValidator);
233     // -- _threshold
234     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
235             java.lang.Float.TYPE, "_threshold", "threshold",
236             org.exolab.castor.xml.NodeType.Attribute);
237     handler = new org.exolab.castor.xml.XMLFieldHandler()
238     {
239       public java.lang.Object getValue(java.lang.Object object)
240               throws IllegalStateException
241       {
242         Tree target = (Tree) object;
243         if (!target.hasThreshold())
244         {
245           return null;
246         }
247         return new java.lang.Float(target.getThreshold());
248       }
249
250       public void setValue(java.lang.Object object, java.lang.Object value)
251               throws IllegalStateException, IllegalArgumentException
252       {
253         try
254         {
255           Tree target = (Tree) object;
256           // if null, use delete method for optional primitives
257           if (value == null)
258           {
259             target.deleteThreshold();
260             return;
261           }
262           target.setThreshold(((java.lang.Float) value).floatValue());
263         } catch (java.lang.Exception ex)
264         {
265           throw new IllegalStateException(ex.toString());
266         }
267       }
268
269       public java.lang.Object newInstance(java.lang.Object parent)
270       {
271         return null;
272       }
273     };
274     desc.setHandler(handler);
275     desc.setMultivalued(false);
276     addFieldDescriptor(desc);
277
278     // -- validation code for: _threshold
279     fieldValidator = new org.exolab.castor.xml.FieldValidator();
280     { // -- local scope
281       org.exolab.castor.xml.validators.FloatValidator typeValidator;
282       typeValidator = new org.exolab.castor.xml.validators.FloatValidator();
283       fieldValidator.setValidator(typeValidator);
284       typeValidator.setMinInclusive((float) -3.4028235E38);
285       typeValidator.setMaxInclusive((float) 3.4028235E38);
286     }
287     desc.setValidator(fieldValidator);
288     // -- _showBootstrap
289     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
290             java.lang.Boolean.TYPE, "_showBootstrap", "showBootstrap",
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         Tree target = (Tree) object;
298         if (!target.hasShowBootstrap())
299         {
300           return null;
301         }
302         return (target.getShowBootstrap() ? java.lang.Boolean.TRUE
303                 : java.lang.Boolean.FALSE);
304       }
305
306       public void setValue(java.lang.Object object, java.lang.Object value)
307               throws IllegalStateException, IllegalArgumentException
308       {
309         try
310         {
311           Tree target = (Tree) object;
312           // if null, use delete method for optional primitives
313           if (value == null)
314           {
315             target.deleteShowBootstrap();
316             return;
317           }
318           target.setShowBootstrap(((java.lang.Boolean) value)
319                   .booleanValue());
320         } catch (java.lang.Exception ex)
321         {
322           throw new IllegalStateException(ex.toString());
323         }
324       }
325
326       public java.lang.Object newInstance(java.lang.Object parent)
327       {
328         return null;
329       }
330     };
331     desc.setHandler(handler);
332     desc.setMultivalued(false);
333     addFieldDescriptor(desc);
334
335     // -- validation code for: _showBootstrap
336     fieldValidator = new org.exolab.castor.xml.FieldValidator();
337     { // -- local scope
338       org.exolab.castor.xml.validators.BooleanValidator typeValidator;
339       typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
340       fieldValidator.setValidator(typeValidator);
341     }
342     desc.setValidator(fieldValidator);
343     // -- _showDistances
344     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
345             java.lang.Boolean.TYPE, "_showDistances", "showDistances",
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         Tree target = (Tree) object;
353         if (!target.hasShowDistances())
354         {
355           return null;
356         }
357         return (target.getShowDistances() ? java.lang.Boolean.TRUE
358                 : java.lang.Boolean.FALSE);
359       }
360
361       public void setValue(java.lang.Object object, java.lang.Object value)
362               throws IllegalStateException, IllegalArgumentException
363       {
364         try
365         {
366           Tree target = (Tree) object;
367           // if null, use delete method for optional primitives
368           if (value == null)
369           {
370             target.deleteShowDistances();
371             return;
372           }
373           target.setShowDistances(((java.lang.Boolean) value)
374                   .booleanValue());
375         } catch (java.lang.Exception ex)
376         {
377           throw new IllegalStateException(ex.toString());
378         }
379       }
380
381       public java.lang.Object newInstance(java.lang.Object parent)
382       {
383         return null;
384       }
385     };
386     desc.setHandler(handler);
387     desc.setMultivalued(false);
388     addFieldDescriptor(desc);
389
390     // -- validation code for: _showDistances
391     fieldValidator = new org.exolab.castor.xml.FieldValidator();
392     { // -- local scope
393       org.exolab.castor.xml.validators.BooleanValidator typeValidator;
394       typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
395       fieldValidator.setValidator(typeValidator);
396     }
397     desc.setValidator(fieldValidator);
398     // -- _markUnlinked
399     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
400             java.lang.Boolean.TYPE, "_markUnlinked", "markUnlinked",
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         Tree target = (Tree) object;
408         if (!target.hasMarkUnlinked())
409         {
410           return null;
411         }
412         return (target.getMarkUnlinked() ? java.lang.Boolean.TRUE
413                 : java.lang.Boolean.FALSE);
414       }
415
416       public void setValue(java.lang.Object object, java.lang.Object value)
417               throws IllegalStateException, IllegalArgumentException
418       {
419         try
420         {
421           Tree target = (Tree) object;
422           // if null, use delete method for optional primitives
423           if (value == null)
424           {
425             target.deleteMarkUnlinked();
426             return;
427           }
428           target.setMarkUnlinked(((java.lang.Boolean) value).booleanValue());
429         } catch (java.lang.Exception ex)
430         {
431           throw new IllegalStateException(ex.toString());
432         }
433       }
434
435       public java.lang.Object newInstance(java.lang.Object parent)
436       {
437         return null;
438       }
439     };
440     desc.setHandler(handler);
441     desc.setMultivalued(false);
442     addFieldDescriptor(desc);
443
444     // -- validation code for: _markUnlinked
445     fieldValidator = new org.exolab.castor.xml.FieldValidator();
446     { // -- local scope
447       org.exolab.castor.xml.validators.BooleanValidator typeValidator;
448       typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
449       fieldValidator.setValidator(typeValidator);
450     }
451     desc.setValidator(fieldValidator);
452     // -- _fitToWindow
453     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
454             java.lang.Boolean.TYPE, "_fitToWindow", "fitToWindow",
455             org.exolab.castor.xml.NodeType.Attribute);
456     handler = new org.exolab.castor.xml.XMLFieldHandler()
457     {
458       public java.lang.Object getValue(java.lang.Object object)
459               throws IllegalStateException
460       {
461         Tree target = (Tree) object;
462         if (!target.hasFitToWindow())
463         {
464           return null;
465         }
466         return (target.getFitToWindow() ? java.lang.Boolean.TRUE
467                 : java.lang.Boolean.FALSE);
468       }
469
470       public void setValue(java.lang.Object object, java.lang.Object value)
471               throws IllegalStateException, IllegalArgumentException
472       {
473         try
474         {
475           Tree target = (Tree) object;
476           // if null, use delete method for optional primitives
477           if (value == null)
478           {
479             target.deleteFitToWindow();
480             return;
481           }
482           target.setFitToWindow(((java.lang.Boolean) value).booleanValue());
483         } catch (java.lang.Exception ex)
484         {
485           throw new IllegalStateException(ex.toString());
486         }
487       }
488
489       public java.lang.Object newInstance(java.lang.Object parent)
490       {
491         return null;
492       }
493     };
494     desc.setHandler(handler);
495     desc.setMultivalued(false);
496     addFieldDescriptor(desc);
497
498     // -- validation code for: _fitToWindow
499     fieldValidator = new org.exolab.castor.xml.FieldValidator();
500     { // -- local scope
501       org.exolab.castor.xml.validators.BooleanValidator typeValidator;
502       typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
503       fieldValidator.setValidator(typeValidator);
504     }
505     desc.setValidator(fieldValidator);
506     // -- _currentTree
507     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
508             java.lang.Boolean.TYPE, "_currentTree", "currentTree",
509             org.exolab.castor.xml.NodeType.Attribute);
510     handler = new org.exolab.castor.xml.XMLFieldHandler()
511     {
512       public java.lang.Object getValue(java.lang.Object object)
513               throws IllegalStateException
514       {
515         Tree target = (Tree) object;
516         if (!target.hasCurrentTree())
517         {
518           return null;
519         }
520         return (target.getCurrentTree() ? java.lang.Boolean.TRUE
521                 : java.lang.Boolean.FALSE);
522       }
523
524       public void setValue(java.lang.Object object, java.lang.Object value)
525               throws IllegalStateException, IllegalArgumentException
526       {
527         try
528         {
529           Tree target = (Tree) object;
530           // if null, use delete method for optional primitives
531           if (value == null)
532           {
533             target.deleteCurrentTree();
534             return;
535           }
536           target.setCurrentTree(((java.lang.Boolean) value).booleanValue());
537         } catch (java.lang.Exception ex)
538         {
539           throw new IllegalStateException(ex.toString());
540         }
541       }
542
543       public java.lang.Object newInstance(java.lang.Object parent)
544       {
545         return null;
546       }
547     };
548     desc.setHandler(handler);
549     desc.setMultivalued(false);
550     addFieldDescriptor(desc);
551
552     // -- validation code for: _currentTree
553     fieldValidator = new org.exolab.castor.xml.FieldValidator();
554     { // -- local scope
555       org.exolab.castor.xml.validators.BooleanValidator typeValidator;
556       typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
557       fieldValidator.setValidator(typeValidator);
558     }
559     desc.setValidator(fieldValidator);
560     // -- _id
561     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
562             java.lang.String.class, "_id", "id",
563             org.exolab.castor.xml.NodeType.Attribute);
564     super.setIdentity(desc);
565     handler = new org.exolab.castor.xml.XMLFieldHandler()
566     {
567       public java.lang.Object getValue(java.lang.Object object)
568               throws IllegalStateException
569       {
570         Tree target = (Tree) object;
571         return target.getId();
572       }
573
574       public void setValue(java.lang.Object object, java.lang.Object value)
575               throws IllegalStateException, IllegalArgumentException
576       {
577         try
578         {
579           Tree target = (Tree) object;
580           target.setId((java.lang.String) value);
581         } catch (java.lang.Exception ex)
582         {
583           throw new IllegalStateException(ex.toString());
584         }
585       }
586
587       public java.lang.Object newInstance(java.lang.Object parent)
588       {
589         return new java.lang.String();
590       }
591     };
592     desc.setHandler(handler);
593     desc.setMultivalued(false);
594     addFieldDescriptor(desc);
595
596     // -- validation code for: _id
597     fieldValidator = new org.exolab.castor.xml.FieldValidator();
598     { // -- local scope
599       org.exolab.castor.xml.validators.IdValidator typeValidator;
600       typeValidator = new org.exolab.castor.xml.validators.IdValidator();
601       fieldValidator.setValidator(typeValidator);
602     }
603     desc.setValidator(fieldValidator);
604     // -- _width
605     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
606             java.lang.Integer.TYPE, "_width", "width",
607             org.exolab.castor.xml.NodeType.Attribute);
608     handler = new org.exolab.castor.xml.XMLFieldHandler()
609     {
610       public java.lang.Object getValue(java.lang.Object object)
611               throws IllegalStateException
612       {
613         Tree target = (Tree) object;
614         if (!target.hasWidth())
615         {
616           return null;
617         }
618         return new java.lang.Integer(target.getWidth());
619       }
620
621       public void setValue(java.lang.Object object, java.lang.Object value)
622               throws IllegalStateException, IllegalArgumentException
623       {
624         try
625         {
626           Tree target = (Tree) object;
627           // if null, use delete method for optional primitives
628           if (value == null)
629           {
630             target.deleteWidth();
631             return;
632           }
633           target.setWidth(((java.lang.Integer) value).intValue());
634         } catch (java.lang.Exception ex)
635         {
636           throw new IllegalStateException(ex.toString());
637         }
638       }
639
640       public java.lang.Object newInstance(java.lang.Object parent)
641       {
642         return null;
643       }
644     };
645     desc.setHandler(handler);
646     desc.setMultivalued(false);
647     addFieldDescriptor(desc);
648
649     // -- validation code for: _width
650     fieldValidator = new org.exolab.castor.xml.FieldValidator();
651     { // -- local scope
652       org.exolab.castor.xml.validators.IntValidator typeValidator;
653       typeValidator = new org.exolab.castor.xml.validators.IntValidator();
654       fieldValidator.setValidator(typeValidator);
655       typeValidator.setMinInclusive(-2147483648);
656       typeValidator.setMaxInclusive(2147483647);
657     }
658     desc.setValidator(fieldValidator);
659     // -- _height
660     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
661             java.lang.Integer.TYPE, "_height", "height",
662             org.exolab.castor.xml.NodeType.Attribute);
663     handler = new org.exolab.castor.xml.XMLFieldHandler()
664     {
665       public java.lang.Object getValue(java.lang.Object object)
666               throws IllegalStateException
667       {
668         Tree target = (Tree) object;
669         if (!target.hasHeight())
670         {
671           return null;
672         }
673         return new java.lang.Integer(target.getHeight());
674       }
675
676       public void setValue(java.lang.Object object, java.lang.Object value)
677               throws IllegalStateException, IllegalArgumentException
678       {
679         try
680         {
681           Tree target = (Tree) object;
682           // if null, use delete method for optional primitives
683           if (value == null)
684           {
685             target.deleteHeight();
686             return;
687           }
688           target.setHeight(((java.lang.Integer) value).intValue());
689         } catch (java.lang.Exception ex)
690         {
691           throw new IllegalStateException(ex.toString());
692         }
693       }
694
695       public java.lang.Object newInstance(java.lang.Object parent)
696       {
697         return null;
698       }
699     };
700     desc.setHandler(handler);
701     desc.setMultivalued(false);
702     addFieldDescriptor(desc);
703
704     // -- validation code for: _height
705     fieldValidator = new org.exolab.castor.xml.FieldValidator();
706     { // -- local scope
707       org.exolab.castor.xml.validators.IntValidator typeValidator;
708       typeValidator = new org.exolab.castor.xml.validators.IntValidator();
709       fieldValidator.setValidator(typeValidator);
710       typeValidator.setMinInclusive(-2147483648);
711       typeValidator.setMaxInclusive(2147483647);
712     }
713     desc.setValidator(fieldValidator);
714     // -- _xpos
715     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
716             java.lang.Integer.TYPE, "_xpos", "xpos",
717             org.exolab.castor.xml.NodeType.Attribute);
718     handler = new org.exolab.castor.xml.XMLFieldHandler()
719     {
720       public java.lang.Object getValue(java.lang.Object object)
721               throws IllegalStateException
722       {
723         Tree target = (Tree) object;
724         if (!target.hasXpos())
725         {
726           return null;
727         }
728         return new java.lang.Integer(target.getXpos());
729       }
730
731       public void setValue(java.lang.Object object, java.lang.Object value)
732               throws IllegalStateException, IllegalArgumentException
733       {
734         try
735         {
736           Tree target = (Tree) object;
737           // if null, use delete method for optional primitives
738           if (value == null)
739           {
740             target.deleteXpos();
741             return;
742           }
743           target.setXpos(((java.lang.Integer) value).intValue());
744         } catch (java.lang.Exception ex)
745         {
746           throw new IllegalStateException(ex.toString());
747         }
748       }
749
750       public java.lang.Object newInstance(java.lang.Object parent)
751       {
752         return null;
753       }
754     };
755     desc.setHandler(handler);
756     desc.setMultivalued(false);
757     addFieldDescriptor(desc);
758
759     // -- validation code for: _xpos
760     fieldValidator = new org.exolab.castor.xml.FieldValidator();
761     { // -- local scope
762       org.exolab.castor.xml.validators.IntValidator typeValidator;
763       typeValidator = new org.exolab.castor.xml.validators.IntValidator();
764       fieldValidator.setValidator(typeValidator);
765       typeValidator.setMinInclusive(-2147483648);
766       typeValidator.setMaxInclusive(2147483647);
767     }
768     desc.setValidator(fieldValidator);
769     // -- _ypos
770     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
771             java.lang.Integer.TYPE, "_ypos", "ypos",
772             org.exolab.castor.xml.NodeType.Attribute);
773     handler = new org.exolab.castor.xml.XMLFieldHandler()
774     {
775       public java.lang.Object getValue(java.lang.Object object)
776               throws IllegalStateException
777       {
778         Tree target = (Tree) object;
779         if (!target.hasYpos())
780         {
781           return null;
782         }
783         return new java.lang.Integer(target.getYpos());
784       }
785
786       public void setValue(java.lang.Object object, java.lang.Object value)
787               throws IllegalStateException, IllegalArgumentException
788       {
789         try
790         {
791           Tree target = (Tree) object;
792           // if null, use delete method for optional primitives
793           if (value == null)
794           {
795             target.deleteYpos();
796             return;
797           }
798           target.setYpos(((java.lang.Integer) value).intValue());
799         } catch (java.lang.Exception ex)
800         {
801           throw new IllegalStateException(ex.toString());
802         }
803       }
804
805       public java.lang.Object newInstance(java.lang.Object parent)
806       {
807         return null;
808       }
809     };
810     desc.setHandler(handler);
811     desc.setMultivalued(false);
812     addFieldDescriptor(desc);
813
814     // -- validation code for: _ypos
815     fieldValidator = new org.exolab.castor.xml.FieldValidator();
816     { // -- local scope
817       org.exolab.castor.xml.validators.IntValidator typeValidator;
818       typeValidator = new org.exolab.castor.xml.validators.IntValidator();
819       fieldValidator.setValidator(typeValidator);
820       typeValidator.setMinInclusive(-2147483648);
821       typeValidator.setMaxInclusive(2147483647);
822     }
823     desc.setValidator(fieldValidator);
824     // -- initialize element descriptors
825
826     // -- _title
827     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
828             java.lang.String.class, "_title", "title",
829             org.exolab.castor.xml.NodeType.Element);
830     desc.setImmutable(true);
831     handler = new org.exolab.castor.xml.XMLFieldHandler()
832     {
833       public java.lang.Object getValue(java.lang.Object object)
834               throws IllegalStateException
835       {
836         Tree target = (Tree) object;
837         return target.getTitle();
838       }
839
840       public void setValue(java.lang.Object object, java.lang.Object value)
841               throws IllegalStateException, IllegalArgumentException
842       {
843         try
844         {
845           Tree target = (Tree) object;
846           target.setTitle((java.lang.String) value);
847         } catch (java.lang.Exception ex)
848         {
849           throw new IllegalStateException(ex.toString());
850         }
851       }
852
853       public java.lang.Object newInstance(java.lang.Object parent)
854       {
855         return null;
856       }
857     };
858     desc.setHandler(handler);
859     desc.setNameSpaceURI("www.jalview.org");
860     desc.setMultivalued(false);
861     addFieldDescriptor(desc);
862
863     // -- validation code for: _title
864     fieldValidator = new org.exolab.castor.xml.FieldValidator();
865     { // -- local scope
866       org.exolab.castor.xml.validators.StringValidator typeValidator;
867       typeValidator = new org.exolab.castor.xml.validators.StringValidator();
868       fieldValidator.setValidator(typeValidator);
869       typeValidator.setWhiteSpace("preserve");
870     }
871     desc.setValidator(fieldValidator);
872     // -- _newick
873     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
874             java.lang.String.class, "_newick", "newick",
875             org.exolab.castor.xml.NodeType.Element);
876     desc.setImmutable(true);
877     handler = new org.exolab.castor.xml.XMLFieldHandler()
878     {
879       public java.lang.Object getValue(java.lang.Object object)
880               throws IllegalStateException
881       {
882         Tree target = (Tree) object;
883         return target.getNewick();
884       }
885
886       public void setValue(java.lang.Object object, java.lang.Object value)
887               throws IllegalStateException, IllegalArgumentException
888       {
889         try
890         {
891           Tree target = (Tree) object;
892           target.setNewick((java.lang.String) value);
893         } catch (java.lang.Exception ex)
894         {
895           throw new IllegalStateException(ex.toString());
896         }
897       }
898
899       public java.lang.Object newInstance(java.lang.Object parent)
900       {
901         return null;
902       }
903     };
904     desc.setHandler(handler);
905     desc.setNameSpaceURI("www.jalview.org");
906     desc.setMultivalued(false);
907     addFieldDescriptor(desc);
908
909     // -- validation code for: _newick
910     fieldValidator = new org.exolab.castor.xml.FieldValidator();
911     { // -- local scope
912       org.exolab.castor.xml.validators.StringValidator typeValidator;
913       typeValidator = new org.exolab.castor.xml.validators.StringValidator();
914       fieldValidator.setValidator(typeValidator);
915       typeValidator.setWhiteSpace("preserve");
916     }
917     desc.setValidator(fieldValidator);
918   }
919
920   // -----------/
921   // - Methods -/
922   // -----------/
923
924   /**
925    * Method getAccessMode.
926    * 
927    * @return the access mode specified for this class.
928    */
929   public org.exolab.castor.mapping.AccessMode getAccessMode()
930   {
931     return null;
932   }
933
934   /**
935    * Method getIdentity.
936    * 
937    * @return the identity field, null if this class has no identity.
938    */
939   public org.exolab.castor.mapping.FieldDescriptor getIdentity()
940   {
941     return super.getIdentity();
942   }
943
944   /**
945    * Method getJavaClass.
946    * 
947    * @return the Java class represented by this descriptor.
948    */
949   public java.lang.Class getJavaClass()
950   {
951     return jalview.schemabinding.version2.Tree.class;
952   }
953
954   /**
955    * Method getNameSpacePrefix.
956    * 
957    * @return the namespace prefix to use when marshaling as XML.
958    */
959   public java.lang.String getNameSpacePrefix()
960   {
961     return _nsPrefix;
962   }
963
964   /**
965    * Method getNameSpaceURI.
966    * 
967    * @return the namespace URI used when marshaling and unmarshaling as XML.
968    */
969   public java.lang.String getNameSpaceURI()
970   {
971     return _nsURI;
972   }
973
974   /**
975    * Method getValidator.
976    * 
977    * @return a specific validator for the class described by this
978    *         ClassDescriptor.
979    */
980   public org.exolab.castor.xml.TypeValidator getValidator()
981   {
982     return this;
983   }
984
985   /**
986    * Method getXMLName.
987    * 
988    * @return the XML Name for the Class being described.
989    */
990   public java.lang.String getXMLName()
991   {
992     return _xmlName;
993   }
994
995   /**
996    * Method isElementDefinition.
997    * 
998    * @return true if XML schema definition of this Class is that of a global
999    *         element or element with anonymous type definition.
1000    */
1001   public boolean isElementDefinition()
1002   {
1003     return _elementDefinition;
1004   }
1005
1006 }