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