6909f5cd16a99ba4db6d5caa027b55cfe15e0703
[jalview.git] / src / jalview / schemabinding / version2 / descriptors / SettingDescriptor.java
1 /*\r
2  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.4.1)\r
3  * Copyright (C) 2009 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
4  * \r
5  * This program is free software; you can redistribute it and/or\r
6  * modify it under the terms of the GNU General Public License\r
7  * as published by the Free Software Foundation; either version 2\r
8  * of the License, or (at your option) any later version.\r
9  * \r
10  * This program is distributed in the hope that it will be useful,\r
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
13  * GNU General Public License for more details.\r
14  * \r
15  * You should have received a copy of the GNU General Public License\r
16  * along with this program; if not, write to the Free Software\r
17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA\r
18  */\r
19 package jalview.schemabinding.version2.descriptors;\r
20 \r
21   //---------------------------------/\r
22  //- Imported classes and packages -/\r
23 //---------------------------------/\r
24 \r
25 import jalview.schemabinding.version2.Setting;\r
26 \r
27 /**\r
28  * Class SettingDescriptor.\r
29  * \r
30  * @version $Revision$ $Date$\r
31  */\r
32 public class SettingDescriptor extends 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       //----------------/\r
61      //- Constructors -/\r
62     //----------------/\r
63 \r
64     public SettingDescriptor() {\r
65         super();\r
66         _nsURI = "www.jalview.org";\r
67         _xmlName = "setting";\r
68         _elementDefinition = true;\r
69         org.exolab.castor.xml.util.XMLFieldDescriptorImpl  desc           = null;\r
70         org.exolab.castor.mapping.FieldHandler             handler        = null;\r
71         org.exolab.castor.xml.FieldValidator               fieldValidator = null;\r
72         //-- initialize attribute descriptors\r
73         \r
74         //-- _type\r
75         desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_type", "type", org.exolab.castor.xml.NodeType.Attribute);\r
76         desc.setImmutable(true);\r
77         handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
78             public java.lang.Object getValue( java.lang.Object object ) \r
79                 throws IllegalStateException\r
80             {\r
81                 Setting target = (Setting) object;\r
82                 return target.getType();\r
83             }\r
84             public void setValue( java.lang.Object object, java.lang.Object value) \r
85                 throws IllegalStateException, IllegalArgumentException\r
86             {\r
87                 try {\r
88                     Setting target = (Setting) object;\r
89                     target.setType( (java.lang.String) value);\r
90                 } catch (java.lang.Exception ex) {\r
91                     throw new IllegalStateException(ex.toString());\r
92                 }\r
93             }\r
94             public java.lang.Object newInstance(java.lang.Object parent) {\r
95                 return null;\r
96             }\r
97         };\r
98         desc.setHandler(handler);\r
99         desc.setRequired(true);\r
100         desc.setMultivalued(false);\r
101         addFieldDescriptor(desc);\r
102         \r
103         //-- validation code for: _type\r
104         fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
105         fieldValidator.setMinOccurs(1);\r
106         { //-- local scope\r
107             org.exolab.castor.xml.validators.StringValidator typeValidator;\r
108             typeValidator = new org.exolab.castor.xml.validators.StringValidator();\r
109             fieldValidator.setValidator(typeValidator);\r
110             typeValidator.setWhiteSpace("preserve");\r
111         }\r
112         desc.setValidator(fieldValidator);\r
113         //-- _colour\r
114         desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Integer.TYPE, "_colour", "colour", org.exolab.castor.xml.NodeType.Attribute);\r
115         handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
116             public java.lang.Object getValue( java.lang.Object object ) \r
117                 throws IllegalStateException\r
118             {\r
119                 Setting target = (Setting) object;\r
120                 if (!target.hasColour()) { return null; }\r
121                 return new java.lang.Integer(target.getColour());\r
122             }\r
123             public void setValue( java.lang.Object object, java.lang.Object value) \r
124                 throws IllegalStateException, IllegalArgumentException\r
125             {\r
126                 try {\r
127                     Setting target = (Setting) object;\r
128                     // ignore null values for non optional primitives\r
129                     if (value == null) { return; }\r
130                     \r
131                     target.setColour( ((java.lang.Integer) value).intValue());\r
132                 } catch (java.lang.Exception ex) {\r
133                     throw new IllegalStateException(ex.toString());\r
134                 }\r
135             }\r
136             public java.lang.Object newInstance(java.lang.Object parent) {\r
137                 return null;\r
138             }\r
139         };\r
140         desc.setHandler(handler);\r
141         desc.setRequired(true);\r
142         desc.setMultivalued(false);\r
143         addFieldDescriptor(desc);\r
144         \r
145         //-- validation code for: _colour\r
146         fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
147         fieldValidator.setMinOccurs(1);\r
148         { //-- local scope\r
149             org.exolab.castor.xml.validators.IntValidator typeValidator;\r
150             typeValidator = new org.exolab.castor.xml.validators.IntValidator();\r
151             fieldValidator.setValidator(typeValidator);\r
152             typeValidator.setMinInclusive(-2147483648);\r
153             typeValidator.setMaxInclusive(2147483647);\r
154         }\r
155         desc.setValidator(fieldValidator);\r
156         //-- _display\r
157         desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_display", "display", org.exolab.castor.xml.NodeType.Attribute);\r
158         handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
159             public java.lang.Object getValue( java.lang.Object object ) \r
160                 throws IllegalStateException\r
161             {\r
162                 Setting target = (Setting) object;\r
163                 if (!target.hasDisplay()) { return null; }\r
164                 return (target.getDisplay() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);\r
165             }\r
166             public void setValue( java.lang.Object object, java.lang.Object value) \r
167                 throws IllegalStateException, IllegalArgumentException\r
168             {\r
169                 try {\r
170                     Setting target = (Setting) object;\r
171                     // ignore null values for non optional primitives\r
172                     if (value == null) { return; }\r
173                     \r
174                     target.setDisplay( ((java.lang.Boolean) value).booleanValue());\r
175                 } catch (java.lang.Exception ex) {\r
176                     throw new IllegalStateException(ex.toString());\r
177                 }\r
178             }\r
179             public java.lang.Object newInstance(java.lang.Object parent) {\r
180                 return null;\r
181             }\r
182         };\r
183         desc.setHandler(handler);\r
184         desc.setRequired(true);\r
185         desc.setMultivalued(false);\r
186         addFieldDescriptor(desc);\r
187         \r
188         //-- validation code for: _display\r
189         fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
190         fieldValidator.setMinOccurs(1);\r
191         { //-- local scope\r
192             org.exolab.castor.xml.validators.BooleanValidator typeValidator;\r
193             typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();\r
194             fieldValidator.setValidator(typeValidator);\r
195         }\r
196         desc.setValidator(fieldValidator);\r
197         //-- _order\r
198         desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Float.TYPE, "_order", "order", org.exolab.castor.xml.NodeType.Attribute);\r
199         handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
200             public java.lang.Object getValue( java.lang.Object object ) \r
201                 throws IllegalStateException\r
202             {\r
203                 Setting target = (Setting) object;\r
204                 if (!target.hasOrder()) { return null; }\r
205                 return new java.lang.Float(target.getOrder());\r
206             }\r
207             public void setValue( java.lang.Object object, java.lang.Object value) \r
208                 throws IllegalStateException, IllegalArgumentException\r
209             {\r
210                 try {\r
211                     Setting target = (Setting) object;\r
212                     // if null, use delete method for optional primitives \r
213                     if (value == null) {\r
214                         target.deleteOrder();\r
215                         return;\r
216                     }\r
217                     target.setOrder( ((java.lang.Float) value).floatValue());\r
218                 } catch (java.lang.Exception ex) {\r
219                     throw new IllegalStateException(ex.toString());\r
220                 }\r
221             }\r
222             public java.lang.Object newInstance(java.lang.Object parent) {\r
223                 return null;\r
224             }\r
225         };\r
226         desc.setHandler(handler);\r
227         desc.setMultivalued(false);\r
228         addFieldDescriptor(desc);\r
229         \r
230         //-- validation code for: _order\r
231         fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
232         { //-- local scope\r
233             org.exolab.castor.xml.validators.FloatValidator typeValidator;\r
234             typeValidator = new org.exolab.castor.xml.validators.FloatValidator();\r
235             fieldValidator.setValidator(typeValidator);\r
236             typeValidator.setMinInclusive((float) -3.4028235E38);\r
237             typeValidator.setMaxInclusive((float) 3.4028235E38);\r
238         }\r
239         desc.setValidator(fieldValidator);\r
240         //-- _mincolour\r
241         desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Integer.TYPE, "_mincolour", "mincolour", org.exolab.castor.xml.NodeType.Attribute);\r
242         handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
243             public java.lang.Object getValue( java.lang.Object object ) \r
244                 throws IllegalStateException\r
245             {\r
246                 Setting target = (Setting) object;\r
247                 if (!target.hasMincolour()) { return null; }\r
248                 return new java.lang.Integer(target.getMincolour());\r
249             }\r
250             public void setValue( java.lang.Object object, java.lang.Object value) \r
251                 throws IllegalStateException, IllegalArgumentException\r
252             {\r
253                 try {\r
254                     Setting target = (Setting) object;\r
255                     // if null, use delete method for optional primitives \r
256                     if (value == null) {\r
257                         target.deleteMincolour();\r
258                         return;\r
259                     }\r
260                     target.setMincolour( ((java.lang.Integer) value).intValue());\r
261                 } catch (java.lang.Exception ex) {\r
262                     throw new IllegalStateException(ex.toString());\r
263                 }\r
264             }\r
265             public java.lang.Object newInstance(java.lang.Object parent) {\r
266                 return null;\r
267             }\r
268         };\r
269         desc.setHandler(handler);\r
270         desc.setMultivalued(false);\r
271         addFieldDescriptor(desc);\r
272         \r
273         //-- validation code for: _mincolour\r
274         fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
275         { //-- local scope\r
276             org.exolab.castor.xml.validators.IntValidator typeValidator;\r
277             typeValidator = new org.exolab.castor.xml.validators.IntValidator();\r
278             fieldValidator.setValidator(typeValidator);\r
279             typeValidator.setMinInclusive(-2147483648);\r
280             typeValidator.setMaxInclusive(2147483647);\r
281         }\r
282         desc.setValidator(fieldValidator);\r
283         //-- _threshold\r
284         desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Float.TYPE, "_threshold", "threshold", org.exolab.castor.xml.NodeType.Attribute);\r
285         handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
286             public java.lang.Object getValue( java.lang.Object object ) \r
287                 throws IllegalStateException\r
288             {\r
289                 Setting target = (Setting) object;\r
290                 if (!target.hasThreshold()) { return null; }\r
291                 return new java.lang.Float(target.getThreshold());\r
292             }\r
293             public void setValue( java.lang.Object object, java.lang.Object value) \r
294                 throws IllegalStateException, IllegalArgumentException\r
295             {\r
296                 try {\r
297                     Setting target = (Setting) object;\r
298                     // if null, use delete method for optional primitives \r
299                     if (value == null) {\r
300                         target.deleteThreshold();\r
301                         return;\r
302                     }\r
303                     target.setThreshold( ((java.lang.Float) value).floatValue());\r
304                 } catch (java.lang.Exception ex) {\r
305                     throw new IllegalStateException(ex.toString());\r
306                 }\r
307             }\r
308             public java.lang.Object newInstance(java.lang.Object parent) {\r
309                 return null;\r
310             }\r
311         };\r
312         desc.setHandler(handler);\r
313         desc.setMultivalued(false);\r
314         addFieldDescriptor(desc);\r
315         \r
316         //-- validation code for: _threshold\r
317         fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
318         { //-- local scope\r
319             org.exolab.castor.xml.validators.FloatValidator typeValidator;\r
320             typeValidator = new org.exolab.castor.xml.validators.FloatValidator();\r
321             fieldValidator.setValidator(typeValidator);\r
322             typeValidator.setMinInclusive((float) -3.4028235E38);\r
323             typeValidator.setMaxInclusive((float) 3.4028235E38);\r
324         }\r
325         desc.setValidator(fieldValidator);\r
326         //-- _threshstate\r
327         desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Integer.TYPE, "_threshstate", "threshstate", org.exolab.castor.xml.NodeType.Attribute);\r
328         handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
329             public java.lang.Object getValue( java.lang.Object object ) \r
330                 throws IllegalStateException\r
331             {\r
332                 Setting target = (Setting) object;\r
333                 if (!target.hasThreshstate()) { return null; }\r
334                 return new java.lang.Integer(target.getThreshstate());\r
335             }\r
336             public void setValue( java.lang.Object object, java.lang.Object value) \r
337                 throws IllegalStateException, IllegalArgumentException\r
338             {\r
339                 try {\r
340                     Setting target = (Setting) object;\r
341                     // if null, use delete method for optional primitives \r
342                     if (value == null) {\r
343                         target.deleteThreshstate();\r
344                         return;\r
345                     }\r
346                     target.setThreshstate( ((java.lang.Integer) value).intValue());\r
347                 } catch (java.lang.Exception ex) {\r
348                     throw new IllegalStateException(ex.toString());\r
349                 }\r
350             }\r
351             public java.lang.Object newInstance(java.lang.Object parent) {\r
352                 return null;\r
353             }\r
354         };\r
355         desc.setHandler(handler);\r
356         desc.setMultivalued(false);\r
357         addFieldDescriptor(desc);\r
358         \r
359         //-- validation code for: _threshstate\r
360         fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
361         { //-- local scope\r
362             org.exolab.castor.xml.validators.IntValidator typeValidator;\r
363             typeValidator = new org.exolab.castor.xml.validators.IntValidator();\r
364             fieldValidator.setValidator(typeValidator);\r
365             typeValidator.setMinInclusive(-2147483648);\r
366             typeValidator.setMaxInclusive(2147483647);\r
367         }\r
368         desc.setValidator(fieldValidator);\r
369         //-- initialize element descriptors\r
370         \r
371     }\r
372 \r
373 \r
374       //-----------/\r
375      //- Methods -/\r
376     //-----------/\r
377 \r
378     /**\r
379      * Method getAccessMode.\r
380      * \r
381      * @return the access mode specified for this class.\r
382      */\r
383     public org.exolab.castor.mapping.AccessMode getAccessMode(\r
384     ) {\r
385         return null;\r
386     }\r
387 \r
388     /**\r
389      * Method getIdentity.\r
390      * \r
391      * @return the identity field, null if this class has no\r
392      * identity.\r
393      */\r
394     public org.exolab.castor.mapping.FieldDescriptor getIdentity(\r
395     ) {\r
396         return super.getIdentity();\r
397     }\r
398 \r
399     /**\r
400      * Method getJavaClass.\r
401      * \r
402      * @return the Java class represented by this descriptor.\r
403      */\r
404     public java.lang.Class getJavaClass(\r
405     ) {\r
406         return jalview.schemabinding.version2.Setting.class;\r
407     }\r
408 \r
409     /**\r
410      * Method getNameSpacePrefix.\r
411      * \r
412      * @return the namespace prefix to use when marshaling as XML.\r
413      */\r
414     public java.lang.String getNameSpacePrefix(\r
415     ) {\r
416         return _nsPrefix;\r
417     }\r
418 \r
419     /**\r
420      * Method getNameSpaceURI.\r
421      * \r
422      * @return the namespace URI used when marshaling and\r
423      * unmarshaling as XML.\r
424      */\r
425     public java.lang.String getNameSpaceURI(\r
426     ) {\r
427         return _nsURI;\r
428     }\r
429 \r
430     /**\r
431      * Method getValidator.\r
432      * \r
433      * @return a specific validator for the class described by this\r
434      * ClassDescriptor.\r
435      */\r
436     public org.exolab.castor.xml.TypeValidator getValidator(\r
437     ) {\r
438         return this;\r
439     }\r
440 \r
441     /**\r
442      * Method getXMLName.\r
443      * \r
444      * @return the XML Name for the Class being described.\r
445      */\r
446     public java.lang.String getXMLName(\r
447     ) {\r
448         return _xmlName;\r
449     }\r
450 \r
451     /**\r
452      * Method isElementDefinition.\r
453      * \r
454      * @return true if XML schema definition of this Class is that\r
455      * of a global\r
456      * element or element with anonymous type definition.\r
457      */\r
458     public boolean isElementDefinition(\r
459     ) {\r
460         return _elementDefinition;\r
461     }\r
462 \r
463 }\r