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