Jalview 2.6 source licence
[jalview.git] / src / jalview / schemabinding / version2 / descriptors / VAMSASDescriptor.java
1 /*\r
2  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6)\r
3  * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle\r
4  * \r
5  * This file is part of Jalview.\r
6  * \r
7  * Jalview is free software: you can redistribute it and/or\r
8  * modify it under the terms of the GNU General Public License \r
9  * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.\r
10  * \r
11  * Jalview is distributed in the hope that it will be useful, but \r
12  * WITHOUT ANY WARRANTY; without even the implied warranty \r
13  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR \r
14  * PURPOSE.  See the GNU General Public License for more details.\r
15  * \r
16  * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.\r
17  */\r
18 package jalview.schemabinding.version2.descriptors;\r
19 \r
20 //---------------------------------/\r
21 //- Imported classes and packages -/\r
22 //---------------------------------/\r
23 \r
24 import jalview.schemabinding.version2.VAMSAS;\r
25 \r
26 /**\r
27  * Class VAMSASDescriptor.\r
28  * \r
29  * @version $Revision$ $Date$\r
30  */\r
31 public class VAMSASDescriptor extends\r
32         org.exolab.castor.xml.util.XMLClassDescriptorImpl\r
33 {\r
34 \r
35   // --------------------------/\r
36   // - Class/Member Variables -/\r
37   // --------------------------/\r
38 \r
39   /**\r
40    * Field _elementDefinition.\r
41    */\r
42   private boolean _elementDefinition;\r
43 \r
44   /**\r
45    * Field _nsPrefix.\r
46    */\r
47   private java.lang.String _nsPrefix;\r
48 \r
49   /**\r
50    * Field _nsURI.\r
51    */\r
52   private java.lang.String _nsURI;\r
53 \r
54   /**\r
55    * Field _xmlName.\r
56    */\r
57   private java.lang.String _xmlName;\r
58 \r
59   // ----------------/\r
60   // - Constructors -/\r
61   // ----------------/\r
62 \r
63   public VAMSASDescriptor()\r
64   {\r
65     super();\r
66     _nsURI = "www.vamsas.ac.uk/jalview/version2";\r
67     _xmlName = "VAMSAS";\r
68     _elementDefinition = false;\r
69 \r
70     // -- set grouping compositor\r
71     setCompositorAsSequence();\r
72     org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;\r
73     org.exolab.castor.mapping.FieldHandler handler = null;\r
74     org.exolab.castor.xml.FieldValidator fieldValidator = null;\r
75     // -- initialize attribute descriptors\r
76 \r
77     // -- initialize element descriptors\r
78 \r
79     // -- _treeList\r
80     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
81             java.lang.String.class, "_treeList", "Tree",\r
82             org.exolab.castor.xml.NodeType.Element);\r
83     desc.setImmutable(true);\r
84     handler = new org.exolab.castor.xml.XMLFieldHandler()\r
85     {\r
86       public java.lang.Object getValue(java.lang.Object object)\r
87               throws IllegalStateException\r
88       {\r
89         VAMSAS target = (VAMSAS) object;\r
90         return target.getTree();\r
91       }\r
92 \r
93       public void setValue(java.lang.Object object, java.lang.Object value)\r
94               throws IllegalStateException, IllegalArgumentException\r
95       {\r
96         try\r
97         {\r
98           VAMSAS target = (VAMSAS) object;\r
99           target.addTree((java.lang.String) value);\r
100         } catch (java.lang.Exception ex)\r
101         {\r
102           throw new IllegalStateException(ex.toString());\r
103         }\r
104       }\r
105 \r
106       public void resetValue(Object object) throws IllegalStateException,\r
107               IllegalArgumentException\r
108       {\r
109         try\r
110         {\r
111           VAMSAS target = (VAMSAS) object;\r
112           target.removeAllTree();\r
113         } catch (java.lang.Exception ex)\r
114         {\r
115           throw new IllegalStateException(ex.toString());\r
116         }\r
117       }\r
118 \r
119       public java.lang.Object newInstance(java.lang.Object parent)\r
120       {\r
121         return null;\r
122       }\r
123     };\r
124     desc.setHandler(handler);\r
125     desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");\r
126     desc.setMultivalued(true);\r
127     addFieldDescriptor(desc);\r
128 \r
129     // -- validation code for: _treeList\r
130     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
131     fieldValidator.setMinOccurs(0);\r
132     { // -- local scope\r
133       org.exolab.castor.xml.validators.StringValidator typeValidator;\r
134       typeValidator = new org.exolab.castor.xml.validators.StringValidator();\r
135       fieldValidator.setValidator(typeValidator);\r
136       typeValidator.setWhiteSpace("preserve");\r
137     }\r
138     desc.setValidator(fieldValidator);\r
139     // -- _sequenceSetList\r
140     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
141             jalview.schemabinding.version2.SequenceSet.class,\r
142             "_sequenceSetList", "SequenceSet",\r
143             org.exolab.castor.xml.NodeType.Element);\r
144     handler = new org.exolab.castor.xml.XMLFieldHandler()\r
145     {\r
146       public java.lang.Object getValue(java.lang.Object object)\r
147               throws IllegalStateException\r
148       {\r
149         VAMSAS target = (VAMSAS) object;\r
150         return target.getSequenceSet();\r
151       }\r
152 \r
153       public void setValue(java.lang.Object object, java.lang.Object value)\r
154               throws IllegalStateException, IllegalArgumentException\r
155       {\r
156         try\r
157         {\r
158           VAMSAS target = (VAMSAS) object;\r
159           target\r
160                   .addSequenceSet((jalview.schemabinding.version2.SequenceSet) value);\r
161         } catch (java.lang.Exception ex)\r
162         {\r
163           throw new IllegalStateException(ex.toString());\r
164         }\r
165       }\r
166 \r
167       public void resetValue(Object object) throws IllegalStateException,\r
168               IllegalArgumentException\r
169       {\r
170         try\r
171         {\r
172           VAMSAS target = (VAMSAS) object;\r
173           target.removeAllSequenceSet();\r
174         } catch (java.lang.Exception ex)\r
175         {\r
176           throw new IllegalStateException(ex.toString());\r
177         }\r
178       }\r
179 \r
180       public java.lang.Object newInstance(java.lang.Object parent)\r
181       {\r
182         return new jalview.schemabinding.version2.SequenceSet();\r
183       }\r
184     };\r
185     desc.setHandler(handler);\r
186     desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");\r
187     desc.setMultivalued(true);\r
188     addFieldDescriptor(desc);\r
189 \r
190     // -- validation code for: _sequenceSetList\r
191     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
192     fieldValidator.setMinOccurs(0);\r
193     { // -- local scope\r
194     }\r
195     desc.setValidator(fieldValidator);\r
196   }\r
197 \r
198   // -----------/\r
199   // - Methods -/\r
200   // -----------/\r
201 \r
202   /**\r
203    * Method getAccessMode.\r
204    * \r
205    * @return the access mode specified for this class.\r
206    */\r
207   public org.exolab.castor.mapping.AccessMode getAccessMode()\r
208   {\r
209     return null;\r
210   }\r
211 \r
212   /**\r
213    * Method getIdentity.\r
214    * \r
215    * @return the identity field, null if this class has no identity.\r
216    */\r
217   public org.exolab.castor.mapping.FieldDescriptor getIdentity()\r
218   {\r
219     return super.getIdentity();\r
220   }\r
221 \r
222   /**\r
223    * Method getJavaClass.\r
224    * \r
225    * @return the Java class represented by this descriptor.\r
226    */\r
227   public java.lang.Class getJavaClass()\r
228   {\r
229     return jalview.schemabinding.version2.VAMSAS.class;\r
230   }\r
231 \r
232   /**\r
233    * Method getNameSpacePrefix.\r
234    * \r
235    * @return the namespace prefix to use when marshaling as XML.\r
236    */\r
237   public java.lang.String getNameSpacePrefix()\r
238   {\r
239     return _nsPrefix;\r
240   }\r
241 \r
242   /**\r
243    * Method getNameSpaceURI.\r
244    * \r
245    * @return the namespace URI used when marshaling and unmarshaling as XML.\r
246    */\r
247   public java.lang.String getNameSpaceURI()\r
248   {\r
249     return _nsURI;\r
250   }\r
251 \r
252   /**\r
253    * Method getValidator.\r
254    * \r
255    * @return a specific validator for the class described by this\r
256    *         ClassDescriptor.\r
257    */\r
258   public org.exolab.castor.xml.TypeValidator getValidator()\r
259   {\r
260     return this;\r
261   }\r
262 \r
263   /**\r
264    * Method getXMLName.\r
265    * \r
266    * @return the XML Name for the Class being described.\r
267    */\r
268   public java.lang.String getXMLName()\r
269   {\r
270     return _xmlName;\r
271   }\r
272 \r
273   /**\r
274    * Method isElementDefinition.\r
275    * \r
276    * @return true if XML schema definition of this Class is that of a global\r
277    *         element or element with anonymous type definition.\r
278    */\r
279   public boolean isElementDefinition()\r
280   {\r
281     return _elementDefinition;\r
282   }\r
283 \r
284 }\r