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