2 * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
3 * Copyright (C) 2014 The Jalview Authors
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 * The Jalview Authors are detailed in the 'AUTHORS' file.
19 package jalview.schemabinding.version2.descriptors;
21 //---------------------------------/
22 //- Imported classes and packages -/
23 //---------------------------------/
25 import jalview.schemabinding.version2.JalviewModel;
28 * Class JalviewModelDescriptor.
30 * @version $Revision$ $Date$
32 public class JalviewModelDescriptor extends
33 org.exolab.castor.xml.util.XMLClassDescriptorImpl
36 // --------------------------/
37 // - Class/Member Variables -/
38 // --------------------------/
41 * Field _elementDefinition.
43 private boolean _elementDefinition;
48 private java.lang.String _nsPrefix;
53 private java.lang.String _nsURI;
58 private java.lang.String _xmlName;
64 public JalviewModelDescriptor()
67 _nsURI = "www.jalview.org";
68 _xmlName = "JalviewModel";
69 _elementDefinition = false;
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
78 // -- initialize element descriptors
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()
86 public java.lang.Object getValue(java.lang.Object object)
87 throws IllegalStateException
89 JalviewModel target = (JalviewModel) object;
90 return target.getCreationDate();
93 public void setValue(java.lang.Object object, java.lang.Object value)
94 throws IllegalStateException, IllegalArgumentException
98 JalviewModel target = (JalviewModel) object;
99 target.setCreationDate((java.util.Date) value);
100 } catch (java.lang.Exception ex)
102 throw new IllegalStateException(ex.toString());
106 public java.lang.Object newInstance(java.lang.Object parent)
108 return new java.util.Date();
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);
119 // -- validation code for: _creationDate
120 fieldValidator = new org.exolab.castor.xml.FieldValidator();
121 fieldValidator.setMinOccurs(1);
123 org.exolab.castor.xml.validators.DateTimeValidator typeValidator;
124 typeValidator = new org.exolab.castor.xml.validators.DateTimeValidator();
125 fieldValidator.setValidator(typeValidator);
127 desc.setValidator(fieldValidator);
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()
135 public java.lang.Object getValue(java.lang.Object object)
136 throws IllegalStateException
138 JalviewModel target = (JalviewModel) object;
139 return target.getVersion();
142 public void setValue(java.lang.Object object, java.lang.Object value)
143 throws IllegalStateException, IllegalArgumentException
147 JalviewModel target = (JalviewModel) object;
148 target.setVersion((java.lang.String) value);
149 } catch (java.lang.Exception ex)
151 throw new IllegalStateException(ex.toString());
155 public java.lang.Object newInstance(java.lang.Object parent)
160 desc.setHandler(handler);
161 desc.setNameSpaceURI("www.jalview.org");
162 desc.setRequired(true);
163 desc.setMultivalued(false);
164 addFieldDescriptor(desc);
166 // -- validation code for: _version
167 fieldValidator = new org.exolab.castor.xml.FieldValidator();
168 fieldValidator.setMinOccurs(1);
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");
175 desc.setValidator(fieldValidator);
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()
183 public java.lang.Object getValue(java.lang.Object object)
184 throws IllegalStateException
186 JalviewModel target = (JalviewModel) object;
187 return target.getVamsasModel();
190 public void setValue(java.lang.Object object, java.lang.Object value)
191 throws IllegalStateException, IllegalArgumentException
195 JalviewModel target = (JalviewModel) object;
196 target.setVamsasModel((jalview.schemabinding.version2.VamsasModel) value);
197 } catch (java.lang.Exception ex)
199 throw new IllegalStateException(ex.toString());
203 public java.lang.Object newInstance(java.lang.Object parent)
205 return new jalview.schemabinding.version2.VamsasModel();
208 desc.setHandler(handler);
209 desc.setNameSpaceURI("www.jalview.org");
210 desc.setRequired(true);
211 desc.setMultivalued(false);
212 addFieldDescriptor(desc);
214 // -- validation code for: _vamsasModel
215 fieldValidator = new org.exolab.castor.xml.FieldValidator();
216 fieldValidator.setMinOccurs(1);
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()
227 public java.lang.Object getValue(java.lang.Object object)
228 throws IllegalStateException
230 JalviewModel target = (JalviewModel) object;
231 return target.getJalviewModelSequence();
234 public void setValue(java.lang.Object object, java.lang.Object value)
235 throws IllegalStateException, IllegalArgumentException
239 JalviewModel target = (JalviewModel) object;
240 target.setJalviewModelSequence((jalview.schemabinding.version2.JalviewModelSequence) value);
241 } catch (java.lang.Exception ex)
243 throw new IllegalStateException(ex.toString());
247 public java.lang.Object newInstance(java.lang.Object parent)
249 return new jalview.schemabinding.version2.JalviewModelSequence();
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);
260 // -- validation code for: _jalviewModelSequence
261 fieldValidator = new org.exolab.castor.xml.FieldValidator();
262 fieldValidator.setMinOccurs(1);
265 desc.setValidator(fieldValidator);
273 * Method getAccessMode.
275 * @return the access mode specified for this class.
277 public org.exolab.castor.mapping.AccessMode getAccessMode()
283 * Method getIdentity.
285 * @return the identity field, null if this class has no identity.
287 public org.exolab.castor.mapping.FieldDescriptor getIdentity()
289 return super.getIdentity();
293 * Method getJavaClass.
295 * @return the Java class represented by this descriptor.
297 public java.lang.Class getJavaClass()
299 return jalview.schemabinding.version2.JalviewModel.class;
303 * Method getNameSpacePrefix.
305 * @return the namespace prefix to use when marshaling as XML.
307 public java.lang.String getNameSpacePrefix()
313 * Method getNameSpaceURI.
315 * @return the namespace URI used when marshaling and unmarshaling as XML.
317 public java.lang.String getNameSpaceURI()
323 * Method getValidator.
325 * @return a specific validator for the class described by this
328 public org.exolab.castor.xml.TypeValidator getValidator()
336 * @return the XML Name for the Class being described.
338 public java.lang.String getXMLName()
344 * Method isElementDefinition.
346 * @return true if XML schema definition of this Class is that of a global
347 * element or element with anonymous type definition.
349 public boolean isElementDefinition()
351 return _elementDefinition;