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