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