Jalview 2.6 source licence
[jalview.git] / src / jalview / schemabinding / version2 / descriptors / JalviewModelSequenceDescriptor.java
1 /*\r
2  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6)\r
3  * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle\r
4  * \r
5  * This file is part of Jalview.\r
6  * \r
7  * Jalview is free software: you can redistribute it and/or\r
8  * modify it under the terms of the GNU General Public License \r
9  * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.\r
10  * \r
11  * Jalview is distributed in the hope that it will be useful, but \r
12  * WITHOUT ANY WARRANTY; without even the implied warranty \r
13  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR \r
14  * PURPOSE.  See the GNU General Public License for more details.\r
15  * \r
16  * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.\r
17  */\r
18 package jalview.schemabinding.version2.descriptors;\r
19 \r
20 //---------------------------------/\r
21 //- Imported classes and packages -/\r
22 //---------------------------------/\r
23 \r
24 import jalview.schemabinding.version2.JalviewModelSequence;\r
25 \r
26 /**\r
27  * Class JalviewModelSequenceDescriptor.\r
28  * \r
29  * @version $Revision$ $Date$\r
30  */\r
31 public class JalviewModelSequenceDescriptor extends\r
32         org.exolab.castor.xml.util.XMLClassDescriptorImpl\r
33 {\r
34 \r
35   // --------------------------/\r
36   // - Class/Member Variables -/\r
37   // --------------------------/\r
38 \r
39   /**\r
40    * Field _elementDefinition.\r
41    */\r
42   private boolean _elementDefinition;\r
43 \r
44   /**\r
45    * Field _nsPrefix.\r
46    */\r
47   private java.lang.String _nsPrefix;\r
48 \r
49   /**\r
50    * Field _nsURI.\r
51    */\r
52   private java.lang.String _nsURI;\r
53 \r
54   /**\r
55    * Field _xmlName.\r
56    */\r
57   private java.lang.String _xmlName;\r
58 \r
59   // ----------------/\r
60   // - Constructors -/\r
61   // ----------------/\r
62 \r
63   public JalviewModelSequenceDescriptor()\r
64   {\r
65     super();\r
66     _nsURI = "www.jalview.org";\r
67     _elementDefinition = false;\r
68 \r
69     // -- set grouping compositor\r
70     setCompositorAsSequence();\r
71     org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;\r
72     org.exolab.castor.mapping.FieldHandler handler = null;\r
73     org.exolab.castor.xml.FieldValidator fieldValidator = null;\r
74     // -- initialize attribute descriptors\r
75 \r
76     // -- initialize element descriptors\r
77 \r
78     // -- _JSeqList\r
79     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
80             jalview.schemabinding.version2.JSeq.class, "_JSeqList", "JSeq",\r
81             org.exolab.castor.xml.NodeType.Element);\r
82     handler = new org.exolab.castor.xml.XMLFieldHandler()\r
83     {\r
84       public java.lang.Object getValue(java.lang.Object object)\r
85               throws IllegalStateException\r
86       {\r
87         JalviewModelSequence target = (JalviewModelSequence) object;\r
88         return target.getJSeq();\r
89       }\r
90 \r
91       public void setValue(java.lang.Object object, java.lang.Object value)\r
92               throws IllegalStateException, IllegalArgumentException\r
93       {\r
94         try\r
95         {\r
96           JalviewModelSequence target = (JalviewModelSequence) object;\r
97           target.addJSeq((jalview.schemabinding.version2.JSeq) value);\r
98         } catch (java.lang.Exception ex)\r
99         {\r
100           throw new IllegalStateException(ex.toString());\r
101         }\r
102       }\r
103 \r
104       public void resetValue(Object object) throws IllegalStateException,\r
105               IllegalArgumentException\r
106       {\r
107         try\r
108         {\r
109           JalviewModelSequence target = (JalviewModelSequence) object;\r
110           target.removeAllJSeq();\r
111         } catch (java.lang.Exception ex)\r
112         {\r
113           throw new IllegalStateException(ex.toString());\r
114         }\r
115       }\r
116 \r
117       public java.lang.Object newInstance(java.lang.Object parent)\r
118       {\r
119         return new jalview.schemabinding.version2.JSeq();\r
120       }\r
121     };\r
122     desc.setHandler(handler);\r
123     desc.setNameSpaceURI("www.jalview.org");\r
124     desc.setRequired(true);\r
125     desc.setMultivalued(true);\r
126     addFieldDescriptor(desc);\r
127 \r
128     // -- validation code for: _JSeqList\r
129     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
130     fieldValidator.setMinOccurs(1);\r
131     { // -- local scope\r
132     }\r
133     desc.setValidator(fieldValidator);\r
134     // -- _JGroupList\r
135     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
136             jalview.schemabinding.version2.JGroup.class, "_JGroupList",\r
137             "JGroup", org.exolab.castor.xml.NodeType.Element);\r
138     handler = new org.exolab.castor.xml.XMLFieldHandler()\r
139     {\r
140       public java.lang.Object getValue(java.lang.Object object)\r
141               throws IllegalStateException\r
142       {\r
143         JalviewModelSequence target = (JalviewModelSequence) object;\r
144         return target.getJGroup();\r
145       }\r
146 \r
147       public void setValue(java.lang.Object object, java.lang.Object value)\r
148               throws IllegalStateException, IllegalArgumentException\r
149       {\r
150         try\r
151         {\r
152           JalviewModelSequence target = (JalviewModelSequence) object;\r
153           target.addJGroup((jalview.schemabinding.version2.JGroup) value);\r
154         } catch (java.lang.Exception ex)\r
155         {\r
156           throw new IllegalStateException(ex.toString());\r
157         }\r
158       }\r
159 \r
160       public void resetValue(Object object) throws IllegalStateException,\r
161               IllegalArgumentException\r
162       {\r
163         try\r
164         {\r
165           JalviewModelSequence target = (JalviewModelSequence) object;\r
166           target.removeAllJGroup();\r
167         } catch (java.lang.Exception ex)\r
168         {\r
169           throw new IllegalStateException(ex.toString());\r
170         }\r
171       }\r
172 \r
173       public java.lang.Object newInstance(java.lang.Object parent)\r
174       {\r
175         return new jalview.schemabinding.version2.JGroup();\r
176       }\r
177     };\r
178     desc.setHandler(handler);\r
179     desc.setNameSpaceURI("www.jalview.org");\r
180     desc.setMultivalued(true);\r
181     addFieldDescriptor(desc);\r
182 \r
183     // -- validation code for: _JGroupList\r
184     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
185     fieldValidator.setMinOccurs(0);\r
186     { // -- local scope\r
187     }\r
188     desc.setValidator(fieldValidator);\r
189     // -- _viewportList\r
190     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
191             jalview.schemabinding.version2.Viewport.class, "_viewportList",\r
192             "Viewport", org.exolab.castor.xml.NodeType.Element);\r
193     handler = new org.exolab.castor.xml.XMLFieldHandler()\r
194     {\r
195       public java.lang.Object getValue(java.lang.Object object)\r
196               throws IllegalStateException\r
197       {\r
198         JalviewModelSequence target = (JalviewModelSequence) object;\r
199         return target.getViewport();\r
200       }\r
201 \r
202       public void setValue(java.lang.Object object, java.lang.Object value)\r
203               throws IllegalStateException, IllegalArgumentException\r
204       {\r
205         try\r
206         {\r
207           JalviewModelSequence target = (JalviewModelSequence) object;\r
208           target\r
209                   .addViewport((jalview.schemabinding.version2.Viewport) value);\r
210         } catch (java.lang.Exception ex)\r
211         {\r
212           throw new IllegalStateException(ex.toString());\r
213         }\r
214       }\r
215 \r
216       public void resetValue(Object object) throws IllegalStateException,\r
217               IllegalArgumentException\r
218       {\r
219         try\r
220         {\r
221           JalviewModelSequence target = (JalviewModelSequence) object;\r
222           target.removeAllViewport();\r
223         } catch (java.lang.Exception ex)\r
224         {\r
225           throw new IllegalStateException(ex.toString());\r
226         }\r
227       }\r
228 \r
229       public java.lang.Object newInstance(java.lang.Object parent)\r
230       {\r
231         return new jalview.schemabinding.version2.Viewport();\r
232       }\r
233     };\r
234     desc.setHandler(handler);\r
235     desc.setNameSpaceURI("www.jalview.org");\r
236     desc.setRequired(true);\r
237     desc.setMultivalued(true);\r
238     addFieldDescriptor(desc);\r
239 \r
240     // -- validation code for: _viewportList\r
241     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
242     fieldValidator.setMinOccurs(1);\r
243     { // -- local scope\r
244     }\r
245     desc.setValidator(fieldValidator);\r
246     // -- _userColoursList\r
247     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
248             jalview.schemabinding.version2.UserColours.class,\r
249             "_userColoursList", "UserColours",\r
250             org.exolab.castor.xml.NodeType.Element);\r
251     handler = new org.exolab.castor.xml.XMLFieldHandler()\r
252     {\r
253       public java.lang.Object getValue(java.lang.Object object)\r
254               throws IllegalStateException\r
255       {\r
256         JalviewModelSequence target = (JalviewModelSequence) object;\r
257         return target.getUserColours();\r
258       }\r
259 \r
260       public void setValue(java.lang.Object object, java.lang.Object value)\r
261               throws IllegalStateException, IllegalArgumentException\r
262       {\r
263         try\r
264         {\r
265           JalviewModelSequence target = (JalviewModelSequence) object;\r
266           target\r
267                   .addUserColours((jalview.schemabinding.version2.UserColours) value);\r
268         } catch (java.lang.Exception ex)\r
269         {\r
270           throw new IllegalStateException(ex.toString());\r
271         }\r
272       }\r
273 \r
274       public void resetValue(Object object) throws IllegalStateException,\r
275               IllegalArgumentException\r
276       {\r
277         try\r
278         {\r
279           JalviewModelSequence target = (JalviewModelSequence) object;\r
280           target.removeAllUserColours();\r
281         } catch (java.lang.Exception ex)\r
282         {\r
283           throw new IllegalStateException(ex.toString());\r
284         }\r
285       }\r
286 \r
287       public java.lang.Object newInstance(java.lang.Object parent)\r
288       {\r
289         return new jalview.schemabinding.version2.UserColours();\r
290       }\r
291     };\r
292     desc.setHandler(handler);\r
293     desc.setNameSpaceURI("www.jalview.org");\r
294     desc.setMultivalued(true);\r
295     addFieldDescriptor(desc);\r
296 \r
297     // -- validation code for: _userColoursList\r
298     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
299     fieldValidator.setMinOccurs(0);\r
300     { // -- local scope\r
301     }\r
302     desc.setValidator(fieldValidator);\r
303     // -- _treeList\r
304     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
305             jalview.schemabinding.version2.Tree.class, "_treeList", "tree",\r
306             org.exolab.castor.xml.NodeType.Element);\r
307     handler = new org.exolab.castor.xml.XMLFieldHandler()\r
308     {\r
309       public java.lang.Object getValue(java.lang.Object object)\r
310               throws IllegalStateException\r
311       {\r
312         JalviewModelSequence target = (JalviewModelSequence) object;\r
313         return target.getTree();\r
314       }\r
315 \r
316       public void setValue(java.lang.Object object, java.lang.Object value)\r
317               throws IllegalStateException, IllegalArgumentException\r
318       {\r
319         try\r
320         {\r
321           JalviewModelSequence target = (JalviewModelSequence) object;\r
322           target.addTree((jalview.schemabinding.version2.Tree) value);\r
323         } catch (java.lang.Exception ex)\r
324         {\r
325           throw new IllegalStateException(ex.toString());\r
326         }\r
327       }\r
328 \r
329       public void resetValue(Object object) throws IllegalStateException,\r
330               IllegalArgumentException\r
331       {\r
332         try\r
333         {\r
334           JalviewModelSequence target = (JalviewModelSequence) object;\r
335           target.removeAllTree();\r
336         } catch (java.lang.Exception ex)\r
337         {\r
338           throw new IllegalStateException(ex.toString());\r
339         }\r
340       }\r
341 \r
342       public java.lang.Object newInstance(java.lang.Object parent)\r
343       {\r
344         return new jalview.schemabinding.version2.Tree();\r
345       }\r
346     };\r
347     desc.setHandler(handler);\r
348     desc.setNameSpaceURI("www.jalview.org");\r
349     desc.setMultivalued(true);\r
350     addFieldDescriptor(desc);\r
351 \r
352     // -- validation code for: _treeList\r
353     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
354     fieldValidator.setMinOccurs(0);\r
355     { // -- local scope\r
356     }\r
357     desc.setValidator(fieldValidator);\r
358     // -- _featureSettings\r
359     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
360             jalview.schemabinding.version2.FeatureSettings.class,\r
361             "_featureSettings", "FeatureSettings",\r
362             org.exolab.castor.xml.NodeType.Element);\r
363     handler = new org.exolab.castor.xml.XMLFieldHandler()\r
364     {\r
365       public java.lang.Object getValue(java.lang.Object object)\r
366               throws IllegalStateException\r
367       {\r
368         JalviewModelSequence target = (JalviewModelSequence) object;\r
369         return target.getFeatureSettings();\r
370       }\r
371 \r
372       public void setValue(java.lang.Object object, java.lang.Object value)\r
373               throws IllegalStateException, IllegalArgumentException\r
374       {\r
375         try\r
376         {\r
377           JalviewModelSequence target = (JalviewModelSequence) object;\r
378           target\r
379                   .setFeatureSettings((jalview.schemabinding.version2.FeatureSettings) value);\r
380         } catch (java.lang.Exception ex)\r
381         {\r
382           throw new IllegalStateException(ex.toString());\r
383         }\r
384       }\r
385 \r
386       public java.lang.Object newInstance(java.lang.Object parent)\r
387       {\r
388         return new jalview.schemabinding.version2.FeatureSettings();\r
389       }\r
390     };\r
391     desc.setHandler(handler);\r
392     desc.setNameSpaceURI("www.jalview.org");\r
393     desc.setMultivalued(false);\r
394     addFieldDescriptor(desc);\r
395 \r
396     // -- validation code for: _featureSettings\r
397     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
398     { // -- local scope\r
399     }\r
400     desc.setValidator(fieldValidator);\r
401   }\r
402 \r
403   // -----------/\r
404   // - Methods -/\r
405   // -----------/\r
406 \r
407   /**\r
408    * Method getAccessMode.\r
409    * \r
410    * @return the access mode specified for this class.\r
411    */\r
412   public org.exolab.castor.mapping.AccessMode getAccessMode()\r
413   {\r
414     return null;\r
415   }\r
416 \r
417   /**\r
418    * Method getIdentity.\r
419    * \r
420    * @return the identity field, null if this class has no identity.\r
421    */\r
422   public org.exolab.castor.mapping.FieldDescriptor getIdentity()\r
423   {\r
424     return super.getIdentity();\r
425   }\r
426 \r
427   /**\r
428    * Method getJavaClass.\r
429    * \r
430    * @return the Java class represented by this descriptor.\r
431    */\r
432   public java.lang.Class getJavaClass()\r
433   {\r
434     return jalview.schemabinding.version2.JalviewModelSequence.class;\r
435   }\r
436 \r
437   /**\r
438    * Method getNameSpacePrefix.\r
439    * \r
440    * @return the namespace prefix to use when marshaling as XML.\r
441    */\r
442   public java.lang.String getNameSpacePrefix()\r
443   {\r
444     return _nsPrefix;\r
445   }\r
446 \r
447   /**\r
448    * Method getNameSpaceURI.\r
449    * \r
450    * @return the namespace URI used when marshaling and unmarshaling as XML.\r
451    */\r
452   public java.lang.String getNameSpaceURI()\r
453   {\r
454     return _nsURI;\r
455   }\r
456 \r
457   /**\r
458    * Method getValidator.\r
459    * \r
460    * @return a specific validator for the class described by this\r
461    *         ClassDescriptor.\r
462    */\r
463   public org.exolab.castor.xml.TypeValidator getValidator()\r
464   {\r
465     return this;\r
466   }\r
467 \r
468   /**\r
469    * Method getXMLName.\r
470    * \r
471    * @return the XML Name for the Class being described.\r
472    */\r
473   public java.lang.String getXMLName()\r
474   {\r
475     return _xmlName;\r
476   }\r
477 \r
478   /**\r
479    * Method isElementDefinition.\r
480    * \r
481    * @return true if XML schema definition of this Class is that of a global\r
482    *         element or element with anonymous type definition.\r
483    */\r
484   public boolean isElementDefinition()\r
485   {\r
486     return _elementDefinition;\r
487   }\r
488 \r
489 }\r