Jalview 2.6 source licence
[jalview.git] / src / jalview / schemabinding / version2 / descriptors / JalviewModelDescriptor.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.JalviewModel;\r
25 \r
26 /**\r
27  * Class JalviewModelDescriptor.\r
28  * \r
29  * @version $Revision$ $Date$\r
30  */\r
31 public class JalviewModelDescriptor 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 JalviewModelDescriptor()\r
64   {\r
65     super();\r
66     _nsURI = "www.jalview.org";\r
67     _xmlName = "JalviewModel";\r
68     _elementDefinition = false;\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     // -- initialize element descriptors\r
78 \r
79     // -- _creationDate\r
80     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
81             java.util.Date.class, "_creationDate", "creationDate",\r
82             org.exolab.castor.xml.NodeType.Element);\r
83     handler = new org.exolab.castor.xml.XMLFieldHandler()\r
84     {\r
85       public java.lang.Object getValue(java.lang.Object object)\r
86               throws IllegalStateException\r
87       {\r
88         JalviewModel target = (JalviewModel) object;\r
89         return target.getCreationDate();\r
90       }\r
91 \r
92       public void setValue(java.lang.Object object, java.lang.Object value)\r
93               throws IllegalStateException, IllegalArgumentException\r
94       {\r
95         try\r
96         {\r
97           JalviewModel target = (JalviewModel) object;\r
98           target.setCreationDate((java.util.Date) value);\r
99         } catch (java.lang.Exception ex)\r
100         {\r
101           throw new IllegalStateException(ex.toString());\r
102         }\r
103       }\r
104 \r
105       public java.lang.Object newInstance(java.lang.Object parent)\r
106       {\r
107         return new java.util.Date();\r
108       }\r
109     };\r
110     handler = new org.exolab.castor.xml.handlers.DateFieldHandler(handler);\r
111     desc.setImmutable(true);\r
112     desc.setHandler(handler);\r
113     desc.setNameSpaceURI("www.jalview.org");\r
114     desc.setRequired(true);\r
115     desc.setMultivalued(false);\r
116     addFieldDescriptor(desc);\r
117 \r
118     // -- validation code for: _creationDate\r
119     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
120     fieldValidator.setMinOccurs(1);\r
121     { // -- local scope\r
122       org.exolab.castor.xml.validators.DateTimeValidator typeValidator;\r
123       typeValidator = new org.exolab.castor.xml.validators.DateTimeValidator();\r
124       fieldValidator.setValidator(typeValidator);\r
125     }\r
126     desc.setValidator(fieldValidator);\r
127     // -- _version\r
128     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
129             java.lang.String.class, "_version", "version",\r
130             org.exolab.castor.xml.NodeType.Element);\r
131     desc.setImmutable(true);\r
132     handler = new org.exolab.castor.xml.XMLFieldHandler()\r
133     {\r
134       public java.lang.Object getValue(java.lang.Object object)\r
135               throws IllegalStateException\r
136       {\r
137         JalviewModel target = (JalviewModel) object;\r
138         return target.getVersion();\r
139       }\r
140 \r
141       public void setValue(java.lang.Object object, java.lang.Object value)\r
142               throws IllegalStateException, IllegalArgumentException\r
143       {\r
144         try\r
145         {\r
146           JalviewModel target = (JalviewModel) object;\r
147           target.setVersion((java.lang.String) value);\r
148         } catch (java.lang.Exception ex)\r
149         {\r
150           throw new IllegalStateException(ex.toString());\r
151         }\r
152       }\r
153 \r
154       public java.lang.Object newInstance(java.lang.Object parent)\r
155       {\r
156         return null;\r
157       }\r
158     };\r
159     desc.setHandler(handler);\r
160     desc.setNameSpaceURI("www.jalview.org");\r
161     desc.setRequired(true);\r
162     desc.setMultivalued(false);\r
163     addFieldDescriptor(desc);\r
164 \r
165     // -- validation code for: _version\r
166     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
167     fieldValidator.setMinOccurs(1);\r
168     { // -- local scope\r
169       org.exolab.castor.xml.validators.StringValidator typeValidator;\r
170       typeValidator = new org.exolab.castor.xml.validators.StringValidator();\r
171       fieldValidator.setValidator(typeValidator);\r
172       typeValidator.setWhiteSpace("preserve");\r
173     }\r
174     desc.setValidator(fieldValidator);\r
175     // -- _vamsasModel\r
176     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
177             jalview.schemabinding.version2.VamsasModel.class,\r
178             "_vamsasModel", "vamsasModel",\r
179             org.exolab.castor.xml.NodeType.Element);\r
180     handler = new org.exolab.castor.xml.XMLFieldHandler()\r
181     {\r
182       public java.lang.Object getValue(java.lang.Object object)\r
183               throws IllegalStateException\r
184       {\r
185         JalviewModel target = (JalviewModel) object;\r
186         return target.getVamsasModel();\r
187       }\r
188 \r
189       public void setValue(java.lang.Object object, java.lang.Object value)\r
190               throws IllegalStateException, IllegalArgumentException\r
191       {\r
192         try\r
193         {\r
194           JalviewModel target = (JalviewModel) object;\r
195           target\r
196                   .setVamsasModel((jalview.schemabinding.version2.VamsasModel) value);\r
197         } catch (java.lang.Exception ex)\r
198         {\r
199           throw new IllegalStateException(ex.toString());\r
200         }\r
201       }\r
202 \r
203       public java.lang.Object newInstance(java.lang.Object parent)\r
204       {\r
205         return new jalview.schemabinding.version2.VamsasModel();\r
206       }\r
207     };\r
208     desc.setHandler(handler);\r
209     desc.setNameSpaceURI("www.jalview.org");\r
210     desc.setRequired(true);\r
211     desc.setMultivalued(false);\r
212     addFieldDescriptor(desc);\r
213 \r
214     // -- validation code for: _vamsasModel\r
215     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
216     fieldValidator.setMinOccurs(1);\r
217     { // -- local scope\r
218     }\r
219     desc.setValidator(fieldValidator);\r
220     // -- _jalviewModelSequence\r
221     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
222             jalview.schemabinding.version2.JalviewModelSequence.class,\r
223             "_jalviewModelSequence", "-error-if-this-is-used-",\r
224             org.exolab.castor.xml.NodeType.Element);\r
225     handler = new org.exolab.castor.xml.XMLFieldHandler()\r
226     {\r
227       public java.lang.Object getValue(java.lang.Object object)\r
228               throws IllegalStateException\r
229       {\r
230         JalviewModel target = (JalviewModel) object;\r
231         return target.getJalviewModelSequence();\r
232       }\r
233 \r
234       public void setValue(java.lang.Object object, java.lang.Object value)\r
235               throws IllegalStateException, IllegalArgumentException\r
236       {\r
237         try\r
238         {\r
239           JalviewModel target = (JalviewModel) object;\r
240           target\r
241                   .setJalviewModelSequence((jalview.schemabinding.version2.JalviewModelSequence) value);\r
242         } catch (java.lang.Exception ex)\r
243         {\r
244           throw new IllegalStateException(ex.toString());\r
245         }\r
246       }\r
247 \r
248       public java.lang.Object newInstance(java.lang.Object parent)\r
249       {\r
250         return new jalview.schemabinding.version2.JalviewModelSequence();\r
251       }\r
252     };\r
253     desc.setHandler(handler);\r
254     desc.setContainer(true);\r
255     desc\r
256             .setClassDescriptor(new jalview.schemabinding.version2.descriptors.JalviewModelSequenceDescriptor());\r
257     desc.setNameSpaceURI("www.jalview.org");\r
258     desc.setRequired(true);\r
259     desc.setMultivalued(false);\r
260     addFieldDescriptor(desc);\r
261 \r
262     // -- validation code for: _jalviewModelSequence\r
263     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
264     fieldValidator.setMinOccurs(1);\r
265     { // -- local scope\r
266     }\r
267     desc.setValidator(fieldValidator);\r
268   }\r
269 \r
270   // -----------/\r
271   // - Methods -/\r
272   // -----------/\r
273 \r
274   /**\r
275    * Method getAccessMode.\r
276    * \r
277    * @return the access mode specified for this class.\r
278    */\r
279   public org.exolab.castor.mapping.AccessMode getAccessMode()\r
280   {\r
281     return null;\r
282   }\r
283 \r
284   /**\r
285    * Method getIdentity.\r
286    * \r
287    * @return the identity field, null if this class has no identity.\r
288    */\r
289   public org.exolab.castor.mapping.FieldDescriptor getIdentity()\r
290   {\r
291     return super.getIdentity();\r
292   }\r
293 \r
294   /**\r
295    * Method getJavaClass.\r
296    * \r
297    * @return the Java class represented by this descriptor.\r
298    */\r
299   public java.lang.Class getJavaClass()\r
300   {\r
301     return jalview.schemabinding.version2.JalviewModel.class;\r
302   }\r
303 \r
304   /**\r
305    * Method getNameSpacePrefix.\r
306    * \r
307    * @return the namespace prefix to use when marshaling as XML.\r
308    */\r
309   public java.lang.String getNameSpacePrefix()\r
310   {\r
311     return _nsPrefix;\r
312   }\r
313 \r
314   /**\r
315    * Method getNameSpaceURI.\r
316    * \r
317    * @return the namespace URI used when marshaling and unmarshaling as XML.\r
318    */\r
319   public java.lang.String getNameSpaceURI()\r
320   {\r
321     return _nsURI;\r
322   }\r
323 \r
324   /**\r
325    * Method getValidator.\r
326    * \r
327    * @return a specific validator for the class described by this\r
328    *         ClassDescriptor.\r
329    */\r
330   public org.exolab.castor.xml.TypeValidator getValidator()\r
331   {\r
332     return this;\r
333   }\r
334 \r
335   /**\r
336    * Method getXMLName.\r
337    * \r
338    * @return the XML Name for the Class being described.\r
339    */\r
340   public java.lang.String getXMLName()\r
341   {\r
342     return _xmlName;\r
343   }\r
344 \r
345   /**\r
346    * Method isElementDefinition.\r
347    * \r
348    * @return true if XML schema definition of this Class is that of a global\r
349    *         element or element with anonymous type definition.\r
350    */\r
351   public boolean isElementDefinition()\r
352   {\r
353     return _elementDefinition;\r
354   }\r
355 \r
356 }\r