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