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