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