8848f1479ff60793f3af6a8fb7b16badd8b8c210
[jalview.git] / src / jalview / schemabinding / version2 / descriptors / UserColoursDescriptor.java
1 /*
2  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8)
3  * Copyright (C) 2012 J Procter, AM Waterhouse, LM Lui, J Engelhardt, G Barton, M Clamp, S Searle
4  * 
5  * This file is part of Jalview.
6  * 
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.
10  *  
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.
15  * 
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  */
18 package jalview.schemabinding.version2.descriptors;
19
20 //---------------------------------/
21 //- Imported classes and packages -/
22 //---------------------------------/
23
24 import jalview.schemabinding.version2.UserColours;
25
26 /**
27  * Class UserColoursDescriptor.
28  * 
29  * @version $Revision$ $Date$
30  */
31 public class UserColoursDescriptor extends
32         org.exolab.castor.xml.util.XMLClassDescriptorImpl
33 {
34
35   // --------------------------/
36   // - Class/Member Variables -/
37   // --------------------------/
38
39   /**
40    * Field _elementDefinition.
41    */
42   private boolean _elementDefinition;
43
44   /**
45    * Field _nsPrefix.
46    */
47   private java.lang.String _nsPrefix;
48
49   /**
50    * Field _nsURI.
51    */
52   private java.lang.String _nsURI;
53
54   /**
55    * Field _xmlName.
56    */
57   private java.lang.String _xmlName;
58
59   // ----------------/
60   // - Constructors -/
61   // ----------------/
62
63   public UserColoursDescriptor()
64   {
65     super();
66     _nsURI = "www.jalview.org";
67     _xmlName = "UserColours";
68     _elementDefinition = true;
69
70     // -- set grouping compositor
71     setCompositorAsSequence();
72     org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
73     org.exolab.castor.mapping.FieldHandler handler = null;
74     org.exolab.castor.xml.FieldValidator fieldValidator = null;
75     // -- initialize attribute descriptors
76
77     // -- _id
78     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
79             java.lang.String.class, "_id", "id",
80             org.exolab.castor.xml.NodeType.Attribute);
81     desc.setImmutable(true);
82     handler = new org.exolab.castor.xml.XMLFieldHandler()
83     {
84       public java.lang.Object getValue(java.lang.Object object)
85               throws IllegalStateException
86       {
87         UserColours target = (UserColours) object;
88         return target.getId();
89       }
90
91       public void setValue(java.lang.Object object, java.lang.Object value)
92               throws IllegalStateException, IllegalArgumentException
93       {
94         try
95         {
96           UserColours target = (UserColours) object;
97           target.setId((java.lang.String) value);
98         } catch (java.lang.Exception ex)
99         {
100           throw new IllegalStateException(ex.toString());
101         }
102       }
103
104       public java.lang.Object newInstance(java.lang.Object parent)
105       {
106         return null;
107       }
108     };
109     desc.setHandler(handler);
110     desc.setMultivalued(false);
111     addFieldDescriptor(desc);
112
113     // -- validation code for: _id
114     fieldValidator = new org.exolab.castor.xml.FieldValidator();
115     { // -- local scope
116       org.exolab.castor.xml.validators.StringValidator typeValidator;
117       typeValidator = new org.exolab.castor.xml.validators.StringValidator();
118       fieldValidator.setValidator(typeValidator);
119       typeValidator.setWhiteSpace("preserve");
120     }
121     desc.setValidator(fieldValidator);
122     // -- initialize element descriptors
123
124     // -- _userColourScheme
125     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
126             jalview.schemabinding.version2.UserColourScheme.class,
127             "_userColourScheme", "UserColourScheme",
128             org.exolab.castor.xml.NodeType.Element);
129     handler = new org.exolab.castor.xml.XMLFieldHandler()
130     {
131       public java.lang.Object getValue(java.lang.Object object)
132               throws IllegalStateException
133       {
134         UserColours target = (UserColours) object;
135         return target.getUserColourScheme();
136       }
137
138       public void setValue(java.lang.Object object, java.lang.Object value)
139               throws IllegalStateException, IllegalArgumentException
140       {
141         try
142         {
143           UserColours target = (UserColours) object;
144           target.setUserColourScheme((jalview.schemabinding.version2.UserColourScheme) value);
145         } catch (java.lang.Exception ex)
146         {
147           throw new IllegalStateException(ex.toString());
148         }
149       }
150
151       public java.lang.Object newInstance(java.lang.Object parent)
152       {
153         return new jalview.schemabinding.version2.UserColourScheme();
154       }
155     };
156     desc.setHandler(handler);
157     desc.setNameSpaceURI("www.jalview.org");
158     desc.setRequired(true);
159     desc.setMultivalued(false);
160     addFieldDescriptor(desc);
161
162     // -- validation code for: _userColourScheme
163     fieldValidator = new org.exolab.castor.xml.FieldValidator();
164     fieldValidator.setMinOccurs(1);
165     { // -- local scope
166     }
167     desc.setValidator(fieldValidator);
168   }
169
170   // -----------/
171   // - Methods -/
172   // -----------/
173
174   /**
175    * Method getAccessMode.
176    * 
177    * @return the access mode specified for this class.
178    */
179   public org.exolab.castor.mapping.AccessMode getAccessMode()
180   {
181     return null;
182   }
183
184   /**
185    * Method getIdentity.
186    * 
187    * @return the identity field, null if this class has no identity.
188    */
189   public org.exolab.castor.mapping.FieldDescriptor getIdentity()
190   {
191     return super.getIdentity();
192   }
193
194   /**
195    * Method getJavaClass.
196    * 
197    * @return the Java class represented by this descriptor.
198    */
199   public java.lang.Class getJavaClass()
200   {
201     return jalview.schemabinding.version2.UserColours.class;
202   }
203
204   /**
205    * Method getNameSpacePrefix.
206    * 
207    * @return the namespace prefix to use when marshaling as XML.
208    */
209   public java.lang.String getNameSpacePrefix()
210   {
211     return _nsPrefix;
212   }
213
214   /**
215    * Method getNameSpaceURI.
216    * 
217    * @return the namespace URI used when marshaling and unmarshaling as XML.
218    */
219   public java.lang.String getNameSpaceURI()
220   {
221     return _nsURI;
222   }
223
224   /**
225    * Method getValidator.
226    * 
227    * @return a specific validator for the class described by this
228    *         ClassDescriptor.
229    */
230   public org.exolab.castor.xml.TypeValidator getValidator()
231   {
232     return this;
233   }
234
235   /**
236    * Method getXMLName.
237    * 
238    * @return the XML Name for the Class being described.
239    */
240   public java.lang.String getXMLName()
241   {
242     return _xmlName;
243   }
244
245   /**
246    * Method isElementDefinition.
247    * 
248    * @return true if XML schema definition of this Class is that of a global
249    *         element or element with anonymous type definition.
250    */
251   public boolean isElementDefinition()
252   {
253     return _elementDefinition;
254   }
255
256 }