4532250d87c13d10a1e730803a6baf40f499dabf
[jalview.git] / src / jalview / schemabinding / version2 / descriptors / JalviewModelSequenceDescriptor.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.JalviewModelSequence;
25
26 /**
27  * Class JalviewModelSequenceDescriptor.
28  * 
29  * @version $Revision$ $Date$
30  */
31 public class JalviewModelSequenceDescriptor 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 JalviewModelSequenceDescriptor()
64   {
65     super();
66     _nsURI = "www.jalview.org";
67     _elementDefinition = false;
68
69     // -- set grouping compositor
70     setCompositorAsSequence();
71     org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
72     org.exolab.castor.mapping.FieldHandler handler = null;
73     org.exolab.castor.xml.FieldValidator fieldValidator = null;
74     // -- initialize attribute descriptors
75
76     // -- initialize element descriptors
77
78     // -- _JSeqList
79     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
80             jalview.schemabinding.version2.JSeq.class, "_JSeqList", "JSeq",
81             org.exolab.castor.xml.NodeType.Element);
82     handler = new org.exolab.castor.xml.XMLFieldHandler()
83     {
84       public java.lang.Object getValue(java.lang.Object object)
85               throws IllegalStateException
86       {
87         JalviewModelSequence target = (JalviewModelSequence) object;
88         return target.getJSeq();
89       }
90
91       public void setValue(java.lang.Object object, java.lang.Object value)
92               throws IllegalStateException, IllegalArgumentException
93       {
94         try
95         {
96           JalviewModelSequence target = (JalviewModelSequence) object;
97           target.addJSeq((jalview.schemabinding.version2.JSeq) value);
98         } catch (java.lang.Exception ex)
99         {
100           throw new IllegalStateException(ex.toString());
101         }
102       }
103
104       public void resetValue(Object object) throws IllegalStateException,
105               IllegalArgumentException
106       {
107         try
108         {
109           JalviewModelSequence target = (JalviewModelSequence) object;
110           target.removeAllJSeq();
111         } catch (java.lang.Exception ex)
112         {
113           throw new IllegalStateException(ex.toString());
114         }
115       }
116
117       public java.lang.Object newInstance(java.lang.Object parent)
118       {
119         return new jalview.schemabinding.version2.JSeq();
120       }
121     };
122     desc.setHandler(handler);
123     desc.setNameSpaceURI("www.jalview.org");
124     desc.setRequired(true);
125     desc.setMultivalued(true);
126     addFieldDescriptor(desc);
127
128     // -- validation code for: _JSeqList
129     fieldValidator = new org.exolab.castor.xml.FieldValidator();
130     fieldValidator.setMinOccurs(1);
131     { // -- local scope
132     }
133     desc.setValidator(fieldValidator);
134     // -- _JGroupList
135     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
136             jalview.schemabinding.version2.JGroup.class, "_JGroupList",
137             "JGroup", org.exolab.castor.xml.NodeType.Element);
138     handler = new org.exolab.castor.xml.XMLFieldHandler()
139     {
140       public java.lang.Object getValue(java.lang.Object object)
141               throws IllegalStateException
142       {
143         JalviewModelSequence target = (JalviewModelSequence) object;
144         return target.getJGroup();
145       }
146
147       public void setValue(java.lang.Object object, java.lang.Object value)
148               throws IllegalStateException, IllegalArgumentException
149       {
150         try
151         {
152           JalviewModelSequence target = (JalviewModelSequence) object;
153           target.addJGroup((jalview.schemabinding.version2.JGroup) value);
154         } catch (java.lang.Exception ex)
155         {
156           throw new IllegalStateException(ex.toString());
157         }
158       }
159
160       public void resetValue(Object object) throws IllegalStateException,
161               IllegalArgumentException
162       {
163         try
164         {
165           JalviewModelSequence target = (JalviewModelSequence) object;
166           target.removeAllJGroup();
167         } catch (java.lang.Exception ex)
168         {
169           throw new IllegalStateException(ex.toString());
170         }
171       }
172
173       public java.lang.Object newInstance(java.lang.Object parent)
174       {
175         return new jalview.schemabinding.version2.JGroup();
176       }
177     };
178     desc.setHandler(handler);
179     desc.setNameSpaceURI("www.jalview.org");
180     desc.setMultivalued(true);
181     addFieldDescriptor(desc);
182
183     // -- validation code for: _JGroupList
184     fieldValidator = new org.exolab.castor.xml.FieldValidator();
185     fieldValidator.setMinOccurs(0);
186     { // -- local scope
187     }
188     desc.setValidator(fieldValidator);
189     // -- _viewportList
190     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
191             jalview.schemabinding.version2.Viewport.class, "_viewportList",
192             "Viewport", org.exolab.castor.xml.NodeType.Element);
193     handler = new org.exolab.castor.xml.XMLFieldHandler()
194     {
195       public java.lang.Object getValue(java.lang.Object object)
196               throws IllegalStateException
197       {
198         JalviewModelSequence target = (JalviewModelSequence) object;
199         return target.getViewport();
200       }
201
202       public void setValue(java.lang.Object object, java.lang.Object value)
203               throws IllegalStateException, IllegalArgumentException
204       {
205         try
206         {
207           JalviewModelSequence target = (JalviewModelSequence) object;
208           target.addViewport((jalview.schemabinding.version2.Viewport) value);
209         } catch (java.lang.Exception ex)
210         {
211           throw new IllegalStateException(ex.toString());
212         }
213       }
214
215       public void resetValue(Object object) throws IllegalStateException,
216               IllegalArgumentException
217       {
218         try
219         {
220           JalviewModelSequence target = (JalviewModelSequence) object;
221           target.removeAllViewport();
222         } catch (java.lang.Exception ex)
223         {
224           throw new IllegalStateException(ex.toString());
225         }
226       }
227
228       public java.lang.Object newInstance(java.lang.Object parent)
229       {
230         return new jalview.schemabinding.version2.Viewport();
231       }
232     };
233     desc.setHandler(handler);
234     desc.setNameSpaceURI("www.jalview.org");
235     desc.setRequired(true);
236     desc.setMultivalued(true);
237     addFieldDescriptor(desc);
238
239     // -- validation code for: _viewportList
240     fieldValidator = new org.exolab.castor.xml.FieldValidator();
241     fieldValidator.setMinOccurs(1);
242     { // -- local scope
243     }
244     desc.setValidator(fieldValidator);
245     // -- _userColoursList
246     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
247             jalview.schemabinding.version2.UserColours.class,
248             "_userColoursList", "UserColours",
249             org.exolab.castor.xml.NodeType.Element);
250     handler = new org.exolab.castor.xml.XMLFieldHandler()
251     {
252       public java.lang.Object getValue(java.lang.Object object)
253               throws IllegalStateException
254       {
255         JalviewModelSequence target = (JalviewModelSequence) object;
256         return target.getUserColours();
257       }
258
259       public void setValue(java.lang.Object object, java.lang.Object value)
260               throws IllegalStateException, IllegalArgumentException
261       {
262         try
263         {
264           JalviewModelSequence target = (JalviewModelSequence) object;
265           target.addUserColours((jalview.schemabinding.version2.UserColours) value);
266         } catch (java.lang.Exception ex)
267         {
268           throw new IllegalStateException(ex.toString());
269         }
270       }
271
272       public void resetValue(Object object) throws IllegalStateException,
273               IllegalArgumentException
274       {
275         try
276         {
277           JalviewModelSequence target = (JalviewModelSequence) object;
278           target.removeAllUserColours();
279         } catch (java.lang.Exception ex)
280         {
281           throw new IllegalStateException(ex.toString());
282         }
283       }
284
285       public java.lang.Object newInstance(java.lang.Object parent)
286       {
287         return new jalview.schemabinding.version2.UserColours();
288       }
289     };
290     desc.setHandler(handler);
291     desc.setNameSpaceURI("www.jalview.org");
292     desc.setMultivalued(true);
293     addFieldDescriptor(desc);
294
295     // -- validation code for: _userColoursList
296     fieldValidator = new org.exolab.castor.xml.FieldValidator();
297     fieldValidator.setMinOccurs(0);
298     { // -- local scope
299     }
300     desc.setValidator(fieldValidator);
301     // -- _treeList
302     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
303             jalview.schemabinding.version2.Tree.class, "_treeList", "tree",
304             org.exolab.castor.xml.NodeType.Element);
305     handler = new org.exolab.castor.xml.XMLFieldHandler()
306     {
307       public java.lang.Object getValue(java.lang.Object object)
308               throws IllegalStateException
309       {
310         JalviewModelSequence target = (JalviewModelSequence) object;
311         return target.getTree();
312       }
313
314       public void setValue(java.lang.Object object, java.lang.Object value)
315               throws IllegalStateException, IllegalArgumentException
316       {
317         try
318         {
319           JalviewModelSequence target = (JalviewModelSequence) object;
320           target.addTree((jalview.schemabinding.version2.Tree) value);
321         } catch (java.lang.Exception ex)
322         {
323           throw new IllegalStateException(ex.toString());
324         }
325       }
326
327       public void resetValue(Object object) throws IllegalStateException,
328               IllegalArgumentException
329       {
330         try
331         {
332           JalviewModelSequence target = (JalviewModelSequence) object;
333           target.removeAllTree();
334         } catch (java.lang.Exception ex)
335         {
336           throw new IllegalStateException(ex.toString());
337         }
338       }
339
340       public java.lang.Object newInstance(java.lang.Object parent)
341       {
342         return new jalview.schemabinding.version2.Tree();
343       }
344     };
345     desc.setHandler(handler);
346     desc.setNameSpaceURI("www.jalview.org");
347     desc.setMultivalued(true);
348     addFieldDescriptor(desc);
349
350     // -- validation code for: _treeList
351     fieldValidator = new org.exolab.castor.xml.FieldValidator();
352     fieldValidator.setMinOccurs(0);
353     { // -- local scope
354     }
355     desc.setValidator(fieldValidator);
356     // -- _featureSettings
357     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
358             jalview.schemabinding.version2.FeatureSettings.class,
359             "_featureSettings", "FeatureSettings",
360             org.exolab.castor.xml.NodeType.Element);
361     handler = new org.exolab.castor.xml.XMLFieldHandler()
362     {
363       public java.lang.Object getValue(java.lang.Object object)
364               throws IllegalStateException
365       {
366         JalviewModelSequence target = (JalviewModelSequence) object;
367         return target.getFeatureSettings();
368       }
369
370       public void setValue(java.lang.Object object, java.lang.Object value)
371               throws IllegalStateException, IllegalArgumentException
372       {
373         try
374         {
375           JalviewModelSequence target = (JalviewModelSequence) object;
376           target.setFeatureSettings((jalview.schemabinding.version2.FeatureSettings) value);
377         } catch (java.lang.Exception ex)
378         {
379           throw new IllegalStateException(ex.toString());
380         }
381       }
382
383       public java.lang.Object newInstance(java.lang.Object parent)
384       {
385         return new jalview.schemabinding.version2.FeatureSettings();
386       }
387     };
388     desc.setHandler(handler);
389     desc.setNameSpaceURI("www.jalview.org");
390     desc.setMultivalued(false);
391     addFieldDescriptor(desc);
392
393     // -- validation code for: _featureSettings
394     fieldValidator = new org.exolab.castor.xml.FieldValidator();
395     { // -- local scope
396     }
397     desc.setValidator(fieldValidator);
398   }
399
400   // -----------/
401   // - Methods -/
402   // -----------/
403
404   /**
405    * Method getAccessMode.
406    * 
407    * @return the access mode specified for this class.
408    */
409   public org.exolab.castor.mapping.AccessMode getAccessMode()
410   {
411     return null;
412   }
413
414   /**
415    * Method getIdentity.
416    * 
417    * @return the identity field, null if this class has no identity.
418    */
419   public org.exolab.castor.mapping.FieldDescriptor getIdentity()
420   {
421     return super.getIdentity();
422   }
423
424   /**
425    * Method getJavaClass.
426    * 
427    * @return the Java class represented by this descriptor.
428    */
429   public java.lang.Class getJavaClass()
430   {
431     return jalview.schemabinding.version2.JalviewModelSequence.class;
432   }
433
434   /**
435    * Method getNameSpacePrefix.
436    * 
437    * @return the namespace prefix to use when marshaling as XML.
438    */
439   public java.lang.String getNameSpacePrefix()
440   {
441     return _nsPrefix;
442   }
443
444   /**
445    * Method getNameSpaceURI.
446    * 
447    * @return the namespace URI used when marshaling and unmarshaling as XML.
448    */
449   public java.lang.String getNameSpaceURI()
450   {
451     return _nsURI;
452   }
453
454   /**
455    * Method getValidator.
456    * 
457    * @return a specific validator for the class described by this
458    *         ClassDescriptor.
459    */
460   public org.exolab.castor.xml.TypeValidator getValidator()
461   {
462     return this;
463   }
464
465   /**
466    * Method getXMLName.
467    * 
468    * @return the XML Name for the Class being described.
469    */
470   public java.lang.String getXMLName()
471   {
472     return _xmlName;
473   }
474
475   /**
476    * Method isElementDefinition.
477    * 
478    * @return true if XML schema definition of this Class is that of a global
479    *         element or element with anonymous type definition.
480    */
481   public boolean isElementDefinition()
482   {
483     return _elementDefinition;
484   }
485
486 }