d23f6379edfe82275b5021ebd96e5fe11e2f025d
[jalview.git] / src / jalview / schemabinding / version2 / descriptors / DBRefDescriptor.java
1 /*\r
2  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.4)\r
3  * Copyright (C) 2008 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
4  * \r
5  * This program is free software; you can redistribute it and/or\r
6  * modify it under the terms of the GNU General Public License\r
7  * as published by the Free Software Foundation; either version 2\r
8  * of the License, or (at your option) any later version.\r
9  * \r
10  * This program is distributed in the hope that it will be useful,\r
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
13  * GNU General Public License for more details.\r
14  * \r
15  * You should have received a copy of the GNU General Public License\r
16  * along with this program; if not, write to the Free Software\r
17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA\r
18  */\r
19 package jalview.schemabinding.version2.descriptors;\r
20 \r
21 // ---------------------------------/\r
22 // - Imported classes and packages -/\r
23 // ---------------------------------/\r
24 \r
25 import jalview.schemabinding.version2.DBRef;\r
26 \r
27 /**\r
28  * Class DBRefDescriptor.\r
29  * \r
30  * @version $Revision$ $Date$\r
31  */\r
32 public class DBRefDescriptor extends\r
33         org.exolab.castor.xml.util.XMLClassDescriptorImpl\r
34 {\r
35 \r
36   // --------------------------/\r
37   // - Class/Member Variables -/\r
38   // --------------------------/\r
39 \r
40   /**\r
41    * Field _elementDefinition.\r
42    */\r
43   private boolean _elementDefinition;\r
44 \r
45   /**\r
46    * Field _nsPrefix.\r
47    */\r
48   private java.lang.String _nsPrefix;\r
49 \r
50   /**\r
51    * Field _nsURI.\r
52    */\r
53   private java.lang.String _nsURI;\r
54 \r
55   /**\r
56    * Field _xmlName.\r
57    */\r
58   private java.lang.String _xmlName;\r
59 \r
60   // ----------------/\r
61   // - Constructors -/\r
62   // ----------------/\r
63 \r
64   public DBRefDescriptor()\r
65   {\r
66     super();\r
67     _nsURI = "www.vamsas.ac.uk/jalview/version2";\r
68     _xmlName = "DBRef";\r
69     _elementDefinition = true;\r
70 \r
71     // -- set grouping compositor\r
72     setCompositorAsSequence();\r
73     org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;\r
74     org.exolab.castor.mapping.FieldHandler handler = null;\r
75     org.exolab.castor.xml.FieldValidator fieldValidator = null;\r
76     // -- initialize attribute descriptors\r
77 \r
78     // -- _source\r
79     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
80             java.lang.String.class, "_source", "source",\r
81             org.exolab.castor.xml.NodeType.Attribute);\r
82     desc.setImmutable(true);\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         DBRef target = (DBRef) object;\r
89         return target.getSource();\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           DBRef target = (DBRef) object;\r
98           target.setSource((java.lang.String) 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 null;\r
108       }\r
109     };\r
110     desc.setHandler(handler);\r
111     desc.setMultivalued(false);\r
112     addFieldDescriptor(desc);\r
113 \r
114     // -- validation code for: _source\r
115     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
116     { // -- local scope\r
117       org.exolab.castor.xml.validators.StringValidator typeValidator;\r
118       typeValidator = new org.exolab.castor.xml.validators.StringValidator();\r
119       fieldValidator.setValidator(typeValidator);\r
120       typeValidator.setWhiteSpace("preserve");\r
121     }\r
122     desc.setValidator(fieldValidator);\r
123     // -- _version\r
124     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
125             java.lang.String.class, "_version", "version",\r
126             org.exolab.castor.xml.NodeType.Attribute);\r
127     desc.setImmutable(true);\r
128     handler = new org.exolab.castor.xml.XMLFieldHandler()\r
129     {\r
130       public java.lang.Object getValue(java.lang.Object object)\r
131               throws IllegalStateException\r
132       {\r
133         DBRef target = (DBRef) object;\r
134         return target.getVersion();\r
135       }\r
136 \r
137       public void setValue(java.lang.Object object, java.lang.Object value)\r
138               throws IllegalStateException, IllegalArgumentException\r
139       {\r
140         try\r
141         {\r
142           DBRef target = (DBRef) object;\r
143           target.setVersion((java.lang.String) value);\r
144         } catch (java.lang.Exception ex)\r
145         {\r
146           throw new IllegalStateException(ex.toString());\r
147         }\r
148       }\r
149 \r
150       public java.lang.Object newInstance(java.lang.Object parent)\r
151       {\r
152         return null;\r
153       }\r
154     };\r
155     desc.setHandler(handler);\r
156     desc.setMultivalued(false);\r
157     addFieldDescriptor(desc);\r
158 \r
159     // -- validation code for: _version\r
160     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
161     { // -- local scope\r
162       org.exolab.castor.xml.validators.StringValidator typeValidator;\r
163       typeValidator = new org.exolab.castor.xml.validators.StringValidator();\r
164       fieldValidator.setValidator(typeValidator);\r
165       typeValidator.setWhiteSpace("preserve");\r
166     }\r
167     desc.setValidator(fieldValidator);\r
168     // -- _accessionId\r
169     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
170             java.lang.String.class, "_accessionId", "accessionId",\r
171             org.exolab.castor.xml.NodeType.Attribute);\r
172     desc.setImmutable(true);\r
173     handler = new org.exolab.castor.xml.XMLFieldHandler()\r
174     {\r
175       public java.lang.Object getValue(java.lang.Object object)\r
176               throws IllegalStateException\r
177       {\r
178         DBRef target = (DBRef) object;\r
179         return target.getAccessionId();\r
180       }\r
181 \r
182       public void setValue(java.lang.Object object, java.lang.Object value)\r
183               throws IllegalStateException, IllegalArgumentException\r
184       {\r
185         try\r
186         {\r
187           DBRef target = (DBRef) object;\r
188           target.setAccessionId((java.lang.String) value);\r
189         } catch (java.lang.Exception ex)\r
190         {\r
191           throw new IllegalStateException(ex.toString());\r
192         }\r
193       }\r
194 \r
195       public java.lang.Object newInstance(java.lang.Object parent)\r
196       {\r
197         return null;\r
198       }\r
199     };\r
200     desc.setHandler(handler);\r
201     desc.setMultivalued(false);\r
202     addFieldDescriptor(desc);\r
203 \r
204     // -- validation code for: _accessionId\r
205     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
206     { // -- local scope\r
207       org.exolab.castor.xml.validators.StringValidator typeValidator;\r
208       typeValidator = new org.exolab.castor.xml.validators.StringValidator();\r
209       fieldValidator.setValidator(typeValidator);\r
210       typeValidator.setWhiteSpace("preserve");\r
211     }\r
212     desc.setValidator(fieldValidator);\r
213     // -- initialize element descriptors\r
214 \r
215     // -- _mapping\r
216     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
217             jalview.schemabinding.version2.Mapping.class, "_mapping",\r
218             "Mapping", org.exolab.castor.xml.NodeType.Element);\r
219     handler = new org.exolab.castor.xml.XMLFieldHandler()\r
220     {\r
221       public java.lang.Object getValue(java.lang.Object object)\r
222               throws IllegalStateException\r
223       {\r
224         DBRef target = (DBRef) object;\r
225         return target.getMapping();\r
226       }\r
227 \r
228       public void setValue(java.lang.Object object, java.lang.Object value)\r
229               throws IllegalStateException, IllegalArgumentException\r
230       {\r
231         try\r
232         {\r
233           DBRef target = (DBRef) object;\r
234           target.setMapping((jalview.schemabinding.version2.Mapping) value);\r
235         } catch (java.lang.Exception ex)\r
236         {\r
237           throw new IllegalStateException(ex.toString());\r
238         }\r
239       }\r
240 \r
241       public java.lang.Object newInstance(java.lang.Object parent)\r
242       {\r
243         return new jalview.schemabinding.version2.Mapping();\r
244       }\r
245     };\r
246     desc.setHandler(handler);\r
247     desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");\r
248     desc.setMultivalued(false);\r
249     addFieldDescriptor(desc);\r
250 \r
251     // -- validation code for: _mapping\r
252     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
253     { // -- local scope\r
254     }\r
255     desc.setValidator(fieldValidator);\r
256   }\r
257 \r
258   // -----------/\r
259   // - Methods -/\r
260   // -----------/\r
261 \r
262   /**\r
263    * Method getAccessMode.\r
264    * \r
265    * @return the access mode specified for this class.\r
266    */\r
267   public org.exolab.castor.mapping.AccessMode getAccessMode()\r
268   {\r
269     return null;\r
270   }\r
271 \r
272   /**\r
273    * Method getIdentity.\r
274    * \r
275    * @return the identity field, null if this class has no identity.\r
276    */\r
277   public org.exolab.castor.mapping.FieldDescriptor getIdentity()\r
278   {\r
279     return super.getIdentity();\r
280   }\r
281 \r
282   /**\r
283    * Method getJavaClass.\r
284    * \r
285    * @return the Java class represented by this descriptor.\r
286    */\r
287   public java.lang.Class getJavaClass()\r
288   {\r
289     return jalview.schemabinding.version2.DBRef.class;\r
290   }\r
291 \r
292   /**\r
293    * Method getNameSpacePrefix.\r
294    * \r
295    * @return the namespace prefix to use when marshaling as XML.\r
296    */\r
297   public java.lang.String getNameSpacePrefix()\r
298   {\r
299     return _nsPrefix;\r
300   }\r
301 \r
302   /**\r
303    * Method getNameSpaceURI.\r
304    * \r
305    * @return the namespace URI used when marshaling and unmarshaling as XML.\r
306    */\r
307   public java.lang.String getNameSpaceURI()\r
308   {\r
309     return _nsURI;\r
310   }\r
311 \r
312   /**\r
313    * Method getValidator.\r
314    * \r
315    * @return a specific validator for the class described by this\r
316    *         ClassDescriptor.\r
317    */\r
318   public org.exolab.castor.xml.TypeValidator getValidator()\r
319   {\r
320     return this;\r
321   }\r
322 \r
323   /**\r
324    * Method getXMLName.\r
325    * \r
326    * @return the XML Name for the Class being described.\r
327    */\r
328   public java.lang.String getXMLName()\r
329   {\r
330     return _xmlName;\r
331   }\r
332 \r
333   /**\r
334    * Method isElementDefinition.\r
335    * \r
336    * @return true if XML schema definition of this Class is that of a global\r
337    *         element or element with anonymous type definition.\r
338    */\r
339   public boolean isElementDefinition()\r
340   {\r
341     return _elementDefinition;\r
342   }\r
343 \r
344 }\r