extended Colour element with additional optional attributes for graduated colour
[jalview.git] / src / jalview / schemabinding / version2 / descriptors / VAMSASDescriptor.java
1 /*\r
2  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.4.1)\r
3  * Copyright (C) 2009 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.VAMSAS;\r
26 \r
27 /**\r
28  * Class VAMSASDescriptor.\r
29  * \r
30  * @version $Revision$ $Date$\r
31  */\r
32 public class VAMSASDescriptor extends 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       //----------------/\r
61      //- Constructors -/\r
62     //----------------/\r
63 \r
64     public VAMSASDescriptor() {\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(java.lang.String.class, "_treeList", "Tree", org.exolab.castor.xml.NodeType.Element);\r
81         desc.setImmutable(true);\r
82         handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
83             public java.lang.Object getValue( java.lang.Object object ) \r
84                 throws IllegalStateException\r
85             {\r
86                 VAMSAS target = (VAMSAS) object;\r
87                 return target.getTree();\r
88             }\r
89             public void setValue( java.lang.Object object, java.lang.Object value) \r
90                 throws IllegalStateException, IllegalArgumentException\r
91             {\r
92                 try {\r
93                     VAMSAS target = (VAMSAS) object;\r
94                     target.addTree( (java.lang.String) value);\r
95                 } catch (java.lang.Exception ex) {\r
96                     throw new IllegalStateException(ex.toString());\r
97                 }\r
98             }\r
99             public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {\r
100                 try {\r
101                     VAMSAS target = (VAMSAS) object;\r
102                     target.removeAllTree();\r
103                 } catch (java.lang.Exception ex) {\r
104                     throw new IllegalStateException(ex.toString());\r
105                 }\r
106             }\r
107             public java.lang.Object newInstance(java.lang.Object parent) {\r
108                 return null;\r
109             }\r
110         };\r
111         desc.setHandler(handler);\r
112         desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");\r
113         desc.setMultivalued(true);\r
114         addFieldDescriptor(desc);\r
115         \r
116         //-- validation code for: _treeList\r
117         fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
118         fieldValidator.setMinOccurs(0);\r
119         { //-- local scope\r
120             org.exolab.castor.xml.validators.StringValidator typeValidator;\r
121             typeValidator = new org.exolab.castor.xml.validators.StringValidator();\r
122             fieldValidator.setValidator(typeValidator);\r
123             typeValidator.setWhiteSpace("preserve");\r
124         }\r
125         desc.setValidator(fieldValidator);\r
126         //-- _sequenceSetList\r
127         desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(jalview.schemabinding.version2.SequenceSet.class, "_sequenceSetList", "SequenceSet", org.exolab.castor.xml.NodeType.Element);\r
128         handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
129             public java.lang.Object getValue( java.lang.Object object ) \r
130                 throws IllegalStateException\r
131             {\r
132                 VAMSAS target = (VAMSAS) object;\r
133                 return target.getSequenceSet();\r
134             }\r
135             public void setValue( java.lang.Object object, java.lang.Object value) \r
136                 throws IllegalStateException, IllegalArgumentException\r
137             {\r
138                 try {\r
139                     VAMSAS target = (VAMSAS) object;\r
140                     target.addSequenceSet( (jalview.schemabinding.version2.SequenceSet) value);\r
141                 } catch (java.lang.Exception ex) {\r
142                     throw new IllegalStateException(ex.toString());\r
143                 }\r
144             }\r
145             public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {\r
146                 try {\r
147                     VAMSAS target = (VAMSAS) object;\r
148                     target.removeAllSequenceSet();\r
149                 } catch (java.lang.Exception ex) {\r
150                     throw new IllegalStateException(ex.toString());\r
151                 }\r
152             }\r
153             public java.lang.Object newInstance(java.lang.Object parent) {\r
154                 return new jalview.schemabinding.version2.SequenceSet();\r
155             }\r
156         };\r
157         desc.setHandler(handler);\r
158         desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");\r
159         desc.setMultivalued(true);\r
160         addFieldDescriptor(desc);\r
161         \r
162         //-- validation code for: _sequenceSetList\r
163         fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
164         fieldValidator.setMinOccurs(0);\r
165         { //-- local scope\r
166         }\r
167         desc.setValidator(fieldValidator);\r
168     }\r
169 \r
170 \r
171       //-----------/\r
172      //- Methods -/\r
173     //-----------/\r
174 \r
175     /**\r
176      * Method getAccessMode.\r
177      * \r
178      * @return the access mode specified for this class.\r
179      */\r
180     public org.exolab.castor.mapping.AccessMode getAccessMode(\r
181     ) {\r
182         return null;\r
183     }\r
184 \r
185     /**\r
186      * Method getIdentity.\r
187      * \r
188      * @return the identity field, null if this class has no\r
189      * identity.\r
190      */\r
191     public org.exolab.castor.mapping.FieldDescriptor getIdentity(\r
192     ) {\r
193         return super.getIdentity();\r
194     }\r
195 \r
196     /**\r
197      * Method getJavaClass.\r
198      * \r
199      * @return the Java class represented by this descriptor.\r
200      */\r
201     public java.lang.Class getJavaClass(\r
202     ) {\r
203         return jalview.schemabinding.version2.VAMSAS.class;\r
204     }\r
205 \r
206     /**\r
207      * Method getNameSpacePrefix.\r
208      * \r
209      * @return the namespace prefix to use when marshaling as XML.\r
210      */\r
211     public java.lang.String getNameSpacePrefix(\r
212     ) {\r
213         return _nsPrefix;\r
214     }\r
215 \r
216     /**\r
217      * Method getNameSpaceURI.\r
218      * \r
219      * @return the namespace URI used when marshaling and\r
220      * unmarshaling as XML.\r
221      */\r
222     public java.lang.String getNameSpaceURI(\r
223     ) {\r
224         return _nsURI;\r
225     }\r
226 \r
227     /**\r
228      * Method getValidator.\r
229      * \r
230      * @return a specific validator for the class described by this\r
231      * ClassDescriptor.\r
232      */\r
233     public org.exolab.castor.xml.TypeValidator getValidator(\r
234     ) {\r
235         return this;\r
236     }\r
237 \r
238     /**\r
239      * Method getXMLName.\r
240      * \r
241      * @return the XML Name for the Class being described.\r
242      */\r
243     public java.lang.String getXMLName(\r
244     ) {\r
245         return _xmlName;\r
246     }\r
247 \r
248     /**\r
249      * Method isElementDefinition.\r
250      * \r
251      * @return true if XML schema definition of this Class is that\r
252      * of a global\r
253      * element or element with anonymous type definition.\r
254      */\r
255     public boolean isElementDefinition(\r
256     ) {\r
257         return _elementDefinition;\r
258     }\r
259 \r
260 }\r