applied LGPLv3 and source code formatting.
[vamsas.git] / src / uk / ac / vamsas / objects / core / descriptors / ScoreDescriptor.java
1 /*\r
2  * This file is part of the Vamsas Client version 0.1. \r
3  * Copyright 2009 by Jim Procter, Iain Milne, Pierre Marguerite, \r
4  *  Andrew Waterhouse and Dominik Lindner.\r
5  * \r
6  * Earlier versions have also been incorporated into Jalview version 2.4 \r
7  * since 2008, and TOPALi version 2 since 2007.\r
8  * \r
9  * The Vamsas Client is free software: you can redistribute it and/or modify\r
10  * it under the terms of the GNU Lesser General Public License as published by\r
11  * the Free Software Foundation, either version 3 of the License, or\r
12  * (at your option) any later version.\r
13  *  \r
14  * The Vamsas Client is distributed in the hope that it will be useful,\r
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
17  * GNU Lesser General Public License for more details.\r
18  * \r
19  * You should have received a copy of the GNU Lesser General Public License\r
20  * along with the Vamsas Client.  If not, see <http://www.gnu.org/licenses/>.\r
21  */\r
22 package uk.ac.vamsas.objects.core.descriptors;\r
23 \r
24 //---------------------------------/\r
25 //- Imported classes and packages -/\r
26 //---------------------------------/\r
27 \r
28 import uk.ac.vamsas.objects.core.Score;\r
29 \r
30 /**\r
31  * Class ScoreDescriptor.\r
32  * \r
33  * @version $Revision$ $Date$\r
34  */\r
35 public class ScoreDescriptor extends\r
36     org.exolab.castor.xml.util.XMLClassDescriptorImpl {\r
37 \r
38   // --------------------------/\r
39   // - Class/Member Variables -/\r
40   // --------------------------/\r
41 \r
42   /**\r
43    * Field _elementDefinition.\r
44    */\r
45   private boolean _elementDefinition;\r
46 \r
47   /**\r
48    * Field _nsPrefix.\r
49    */\r
50   private java.lang.String _nsPrefix;\r
51 \r
52   /**\r
53    * Field _nsURI.\r
54    */\r
55   private java.lang.String _nsURI;\r
56 \r
57   /**\r
58    * Field _xmlName.\r
59    */\r
60   private java.lang.String _xmlName;\r
61 \r
62   // ----------------/\r
63   // - Constructors -/\r
64   // ----------------/\r
65 \r
66   public ScoreDescriptor() {\r
67     super();\r
68     _nsURI = "http://www.vamsas.ac.uk/schemas/1.0/vamsasTypes";\r
69     _xmlName = "score";\r
70     _elementDefinition = true;\r
71     org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;\r
72     org.exolab.castor.mapping.FieldHandler handler = null;\r
73     org.exolab.castor.xml.FieldValidator fieldValidator = null;\r
74     // -- _content\r
75     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
76         java.lang.Float.TYPE, "_content", "PCDATA",\r
77         org.exolab.castor.xml.NodeType.Text);\r
78     handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
79       public java.lang.Object getValue(java.lang.Object object)\r
80           throws IllegalStateException {\r
81         Score target = (Score) object;\r
82         if (!target.hasContent()) {\r
83           return null;\r
84         }\r
85         return new java.lang.Float(target.getContent());\r
86       }\r
87 \r
88       public void setValue(java.lang.Object object, java.lang.Object value)\r
89           throws IllegalStateException, IllegalArgumentException {\r
90         try {\r
91           Score target = (Score) object;\r
92           // if null, use delete method for optional primitives\r
93           if (value == null) {\r
94             target.deleteContent();\r
95             return;\r
96           }\r
97           target.setContent(((java.lang.Float) value).floatValue());\r
98         } catch (java.lang.Exception ex) {\r
99           throw new IllegalStateException(ex.toString());\r
100         }\r
101       }\r
102 \r
103       public java.lang.Object newInstance(java.lang.Object parent) {\r
104         return null;\r
105       }\r
106     };\r
107     desc.setHandler(handler);\r
108     addFieldDescriptor(desc);\r
109 \r
110     // -- validation code for: _content\r
111     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
112     { // -- local scope\r
113       org.exolab.castor.xml.validators.FloatValidator typeValidator;\r
114       typeValidator = new org.exolab.castor.xml.validators.FloatValidator();\r
115       fieldValidator.setValidator(typeValidator);\r
116       typeValidator.setMinInclusive((float) -3.4028235E38);\r
117       typeValidator.setMaxInclusive((float) 3.4028235E38);\r
118     }\r
119     desc.setValidator(fieldValidator);\r
120     // -- initialize attribute descriptors\r
121 \r
122     // -- _name\r
123     desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(\r
124         java.lang.String.class, "_name", "name",\r
125         org.exolab.castor.xml.NodeType.Attribute);\r
126     desc.setImmutable(true);\r
127     handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
128       public java.lang.Object getValue(java.lang.Object object)\r
129           throws IllegalStateException {\r
130         Score target = (Score) object;\r
131         return target.getName();\r
132       }\r
133 \r
134       public void setValue(java.lang.Object object, java.lang.Object value)\r
135           throws IllegalStateException, IllegalArgumentException {\r
136         try {\r
137           Score target = (Score) object;\r
138           target.setName((java.lang.String) value);\r
139         } catch (java.lang.Exception ex) {\r
140           throw new IllegalStateException(ex.toString());\r
141         }\r
142       }\r
143 \r
144       public java.lang.Object newInstance(java.lang.Object parent) {\r
145         return null;\r
146       }\r
147     };\r
148     desc.setHandler(handler);\r
149     desc.setMultivalued(false);\r
150     addFieldDescriptor(desc);\r
151 \r
152     // -- validation code for: _name\r
153     fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
154     { // -- local scope\r
155       org.exolab.castor.xml.validators.StringValidator typeValidator;\r
156       typeValidator = new org.exolab.castor.xml.validators.StringValidator();\r
157       fieldValidator.setValidator(typeValidator);\r
158       typeValidator.setWhiteSpace("preserve");\r
159     }\r
160     desc.setValidator(fieldValidator);\r
161     // -- initialize element descriptors\r
162 \r
163   }\r
164 \r
165   // -----------/\r
166   // - Methods -/\r
167   // -----------/\r
168 \r
169   /**\r
170    * Method getAccessMode.\r
171    * \r
172    * @return the access mode specified for this class.\r
173    */\r
174   public org.exolab.castor.mapping.AccessMode getAccessMode() {\r
175     return null;\r
176   }\r
177 \r
178   /**\r
179    * Method getIdentity.\r
180    * \r
181    * @return the identity field, null if this class has no identity.\r
182    */\r
183   public org.exolab.castor.mapping.FieldDescriptor getIdentity() {\r
184     return super.getIdentity();\r
185   }\r
186 \r
187   /**\r
188    * Method getJavaClass.\r
189    * \r
190    * @return the Java class represented by this descriptor.\r
191    */\r
192   public java.lang.Class getJavaClass() {\r
193     return uk.ac.vamsas.objects.core.Score.class;\r
194   }\r
195 \r
196   /**\r
197    * Method getNameSpacePrefix.\r
198    * \r
199    * @return the namespace prefix to use when marshaling as XML.\r
200    */\r
201   public java.lang.String getNameSpacePrefix() {\r
202     return _nsPrefix;\r
203   }\r
204 \r
205   /**\r
206    * Method getNameSpaceURI.\r
207    * \r
208    * @return the namespace URI used when marshaling and unmarshaling as XML.\r
209    */\r
210   public java.lang.String getNameSpaceURI() {\r
211     return _nsURI;\r
212   }\r
213 \r
214   /**\r
215    * Method getValidator.\r
216    * \r
217    * @return a specific validator for the class described by this\r
218    *         ClassDescriptor.\r
219    */\r
220   public org.exolab.castor.xml.TypeValidator getValidator() {\r
221     return this;\r
222   }\r
223 \r
224   /**\r
225    * Method getXMLName.\r
226    * \r
227    * @return the XML Name for the Class being described.\r
228    */\r
229   public java.lang.String getXMLName() {\r
230     return _xmlName;\r
231   }\r
232 \r
233   /**\r
234    * Method isElementDefinition.\r
235    * \r
236    * @return true if XML schema definition of this Class is that of a global\r
237    *         element or element with anonymous type definition.\r
238    */\r
239   public boolean isElementDefinition() {\r
240     return _elementDefinition;\r
241   }\r
242 \r
243 }\r