1 /*******************************************************************************
2 * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7)
3 * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle
5 * This file is part of Jalview.
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.
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.
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 *******************************************************************************/
19 * This class was automatically generated with
20 * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
25 package jalview.schemabinding.version2.descriptors;
27 //---------------------------------/
28 //- Imported classes and packages -/
29 //---------------------------------/
31 import jalview.schemabinding.version2.Feature;
34 * Class FeatureDescriptor.
36 * @version $Revision$ $Date$
38 public class FeatureDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
41 //--------------------------/
42 //- Class/Member Variables -/
43 //--------------------------/
46 * Field _elementDefinition.
48 private boolean _elementDefinition;
53 private java.lang.String _nsPrefix;
58 private java.lang.String _nsURI;
63 private java.lang.String _xmlName;
70 public FeatureDescriptor() {
72 _nsURI = "www.jalview.org";
74 _elementDefinition = false;
76 //-- set grouping compositor
77 setCompositorAsSequence();
78 org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
79 org.exolab.castor.mapping.FieldHandler handler = null;
80 org.exolab.castor.xml.FieldValidator fieldValidator = null;
81 //-- initialize attribute descriptors
84 desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Integer.TYPE, "_begin", "begin", org.exolab.castor.xml.NodeType.Attribute);
85 handler = new org.exolab.castor.xml.XMLFieldHandler() {
86 public java.lang.Object getValue( java.lang.Object object )
87 throws IllegalStateException
89 Feature target = (Feature) object;
90 if (!target.hasBegin()) { return null; }
91 return new java.lang.Integer(target.getBegin());
93 public void setValue( java.lang.Object object, java.lang.Object value)
94 throws IllegalStateException, IllegalArgumentException
97 Feature target = (Feature) object;
98 // ignore null values for non optional primitives
99 if (value == null) { return; }
101 target.setBegin( ((java.lang.Integer) value).intValue());
102 } catch (java.lang.Exception ex) {
103 throw new IllegalStateException(ex.toString());
106 public java.lang.Object newInstance(java.lang.Object parent) {
110 desc.setHandler(handler);
111 desc.setRequired(true);
112 desc.setMultivalued(false);
113 addFieldDescriptor(desc);
115 //-- validation code for: _begin
116 fieldValidator = new org.exolab.castor.xml.FieldValidator();
117 fieldValidator.setMinOccurs(1);
119 org.exolab.castor.xml.validators.IntValidator typeValidator;
120 typeValidator = new org.exolab.castor.xml.validators.IntValidator();
121 fieldValidator.setValidator(typeValidator);
122 typeValidator.setMinInclusive(-2147483648);
123 typeValidator.setMaxInclusive(2147483647);
125 desc.setValidator(fieldValidator);
127 desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Integer.TYPE, "_end", "end", org.exolab.castor.xml.NodeType.Attribute);
128 handler = new org.exolab.castor.xml.XMLFieldHandler() {
129 public java.lang.Object getValue( java.lang.Object object )
130 throws IllegalStateException
132 Feature target = (Feature) object;
133 if (!target.hasEnd()) { return null; }
134 return new java.lang.Integer(target.getEnd());
136 public void setValue( java.lang.Object object, java.lang.Object value)
137 throws IllegalStateException, IllegalArgumentException
140 Feature target = (Feature) object;
141 // ignore null values for non optional primitives
142 if (value == null) { return; }
144 target.setEnd( ((java.lang.Integer) value).intValue());
145 } catch (java.lang.Exception ex) {
146 throw new IllegalStateException(ex.toString());
149 public java.lang.Object newInstance(java.lang.Object parent) {
153 desc.setHandler(handler);
154 desc.setRequired(true);
155 desc.setMultivalued(false);
156 addFieldDescriptor(desc);
158 //-- validation code for: _end
159 fieldValidator = new org.exolab.castor.xml.FieldValidator();
160 fieldValidator.setMinOccurs(1);
162 org.exolab.castor.xml.validators.IntValidator typeValidator;
163 typeValidator = new org.exolab.castor.xml.validators.IntValidator();
164 fieldValidator.setValidator(typeValidator);
165 typeValidator.setMinInclusive(-2147483648);
166 typeValidator.setMaxInclusive(2147483647);
168 desc.setValidator(fieldValidator);
170 desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_type", "type", org.exolab.castor.xml.NodeType.Attribute);
171 desc.setImmutable(true);
172 handler = new org.exolab.castor.xml.XMLFieldHandler() {
173 public java.lang.Object getValue( java.lang.Object object )
174 throws IllegalStateException
176 Feature target = (Feature) object;
177 return target.getType();
179 public void setValue( java.lang.Object object, java.lang.Object value)
180 throws IllegalStateException, IllegalArgumentException
183 Feature target = (Feature) object;
184 target.setType( (java.lang.String) value);
185 } catch (java.lang.Exception ex) {
186 throw new IllegalStateException(ex.toString());
189 public java.lang.Object newInstance(java.lang.Object parent) {
193 desc.setHandler(handler);
194 desc.setRequired(true);
195 desc.setMultivalued(false);
196 addFieldDescriptor(desc);
198 //-- validation code for: _type
199 fieldValidator = new org.exolab.castor.xml.FieldValidator();
200 fieldValidator.setMinOccurs(1);
202 org.exolab.castor.xml.validators.StringValidator typeValidator;
203 typeValidator = new org.exolab.castor.xml.validators.StringValidator();
204 fieldValidator.setValidator(typeValidator);
205 typeValidator.setWhiteSpace("preserve");
207 desc.setValidator(fieldValidator);
209 desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_description", "description", org.exolab.castor.xml.NodeType.Attribute);
210 desc.setImmutable(true);
211 handler = new org.exolab.castor.xml.XMLFieldHandler() {
212 public java.lang.Object getValue( java.lang.Object object )
213 throws IllegalStateException
215 Feature target = (Feature) object;
216 return target.getDescription();
218 public void setValue( java.lang.Object object, java.lang.Object value)
219 throws IllegalStateException, IllegalArgumentException
222 Feature target = (Feature) object;
223 target.setDescription( (java.lang.String) value);
224 } catch (java.lang.Exception ex) {
225 throw new IllegalStateException(ex.toString());
228 public java.lang.Object newInstance(java.lang.Object parent) {
232 desc.setHandler(handler);
233 desc.setMultivalued(false);
234 addFieldDescriptor(desc);
236 //-- validation code for: _description
237 fieldValidator = new org.exolab.castor.xml.FieldValidator();
239 org.exolab.castor.xml.validators.StringValidator typeValidator;
240 typeValidator = new org.exolab.castor.xml.validators.StringValidator();
241 fieldValidator.setValidator(typeValidator);
242 typeValidator.setWhiteSpace("preserve");
244 desc.setValidator(fieldValidator);
246 desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_status", "status", org.exolab.castor.xml.NodeType.Attribute);
247 desc.setImmutable(true);
248 handler = new org.exolab.castor.xml.XMLFieldHandler() {
249 public java.lang.Object getValue( java.lang.Object object )
250 throws IllegalStateException
252 Feature target = (Feature) object;
253 return target.getStatus();
255 public void setValue( java.lang.Object object, java.lang.Object value)
256 throws IllegalStateException, IllegalArgumentException
259 Feature target = (Feature) object;
260 target.setStatus( (java.lang.String) value);
261 } catch (java.lang.Exception ex) {
262 throw new IllegalStateException(ex.toString());
265 public java.lang.Object newInstance(java.lang.Object parent) {
269 desc.setHandler(handler);
270 desc.setMultivalued(false);
271 addFieldDescriptor(desc);
273 //-- validation code for: _status
274 fieldValidator = new org.exolab.castor.xml.FieldValidator();
276 org.exolab.castor.xml.validators.StringValidator typeValidator;
277 typeValidator = new org.exolab.castor.xml.validators.StringValidator();
278 fieldValidator.setValidator(typeValidator);
279 typeValidator.setWhiteSpace("preserve");
281 desc.setValidator(fieldValidator);
283 desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_featureGroup", "featureGroup", org.exolab.castor.xml.NodeType.Attribute);
284 desc.setImmutable(true);
285 handler = new org.exolab.castor.xml.XMLFieldHandler() {
286 public java.lang.Object getValue( java.lang.Object object )
287 throws IllegalStateException
289 Feature target = (Feature) object;
290 return target.getFeatureGroup();
292 public void setValue( java.lang.Object object, java.lang.Object value)
293 throws IllegalStateException, IllegalArgumentException
296 Feature target = (Feature) object;
297 target.setFeatureGroup( (java.lang.String) value);
298 } catch (java.lang.Exception ex) {
299 throw new IllegalStateException(ex.toString());
302 public java.lang.Object newInstance(java.lang.Object parent) {
306 desc.setHandler(handler);
307 desc.setMultivalued(false);
308 addFieldDescriptor(desc);
310 //-- validation code for: _featureGroup
311 fieldValidator = new org.exolab.castor.xml.FieldValidator();
313 org.exolab.castor.xml.validators.StringValidator typeValidator;
314 typeValidator = new org.exolab.castor.xml.validators.StringValidator();
315 fieldValidator.setValidator(typeValidator);
316 typeValidator.setWhiteSpace("preserve");
318 desc.setValidator(fieldValidator);
320 desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Float.TYPE, "_score", "score", org.exolab.castor.xml.NodeType.Attribute);
321 handler = new org.exolab.castor.xml.XMLFieldHandler() {
322 public java.lang.Object getValue( java.lang.Object object )
323 throws IllegalStateException
325 Feature target = (Feature) object;
326 if (!target.hasScore()) { return null; }
327 return new java.lang.Float(target.getScore());
329 public void setValue( java.lang.Object object, java.lang.Object value)
330 throws IllegalStateException, IllegalArgumentException
333 Feature target = (Feature) object;
334 // if null, use delete method for optional primitives
336 target.deleteScore();
339 target.setScore( ((java.lang.Float) value).floatValue());
340 } catch (java.lang.Exception ex) {
341 throw new IllegalStateException(ex.toString());
344 public java.lang.Object newInstance(java.lang.Object parent) {
348 desc.setHandler(handler);
349 desc.setMultivalued(false);
350 addFieldDescriptor(desc);
352 //-- validation code for: _score
353 fieldValidator = new org.exolab.castor.xml.FieldValidator();
355 org.exolab.castor.xml.validators.FloatValidator typeValidator;
356 typeValidator = new org.exolab.castor.xml.validators.FloatValidator();
357 fieldValidator.setValidator(typeValidator);
358 typeValidator.setMinInclusive((float) -3.4028235E38);
359 typeValidator.setMaxInclusive((float) 3.4028235E38);
361 desc.setValidator(fieldValidator);
362 //-- initialize element descriptors
365 desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(jalview.schemabinding.version2.OtherData.class, "_otherDataList", "otherData", org.exolab.castor.xml.NodeType.Element);
366 handler = new org.exolab.castor.xml.XMLFieldHandler() {
367 public java.lang.Object getValue( java.lang.Object object )
368 throws IllegalStateException
370 Feature target = (Feature) object;
371 return target.getOtherData();
373 public void setValue( java.lang.Object object, java.lang.Object value)
374 throws IllegalStateException, IllegalArgumentException
377 Feature target = (Feature) object;
378 target.addOtherData( (jalview.schemabinding.version2.OtherData) value);
379 } catch (java.lang.Exception ex) {
380 throw new IllegalStateException(ex.toString());
383 public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
385 Feature target = (Feature) object;
386 target.removeAllOtherData();
387 } catch (java.lang.Exception ex) {
388 throw new IllegalStateException(ex.toString());
391 public java.lang.Object newInstance(java.lang.Object parent) {
392 return new jalview.schemabinding.version2.OtherData();
395 desc.setHandler(handler);
396 desc.setNameSpaceURI("www.jalview.org");
397 desc.setMultivalued(true);
398 addFieldDescriptor(desc);
400 //-- validation code for: _otherDataList
401 fieldValidator = new org.exolab.castor.xml.FieldValidator();
402 fieldValidator.setMinOccurs(0);
405 desc.setValidator(fieldValidator);
414 * Method getAccessMode.
416 * @return the access mode specified for this class.
418 public org.exolab.castor.mapping.AccessMode getAccessMode(
424 * Method getIdentity.
426 * @return the identity field, null if this class has no
429 public org.exolab.castor.mapping.FieldDescriptor getIdentity(
431 return super.getIdentity();
435 * Method getJavaClass.
437 * @return the Java class represented by this descriptor.
439 public java.lang.Class getJavaClass(
441 return jalview.schemabinding.version2.Feature.class;
445 * Method getNameSpacePrefix.
447 * @return the namespace prefix to use when marshaling as XML.
449 public java.lang.String getNameSpacePrefix(
455 * Method getNameSpaceURI.
457 * @return the namespace URI used when marshaling and
458 * unmarshaling as XML.
460 public java.lang.String getNameSpaceURI(
466 * Method getValidator.
468 * @return a specific validator for the class described by this
471 public org.exolab.castor.xml.TypeValidator getValidator(
479 * @return the XML Name for the Class being described.
481 public java.lang.String getXMLName(
487 * Method isElementDefinition.
489 * @return true if XML schema definition of this Class is that
491 * element or element with anonymous type definition.
493 public boolean isElementDefinition(
495 return _elementDefinition;