884c39051ba964ae9711ce557654659d6d091c38
[vamsas.git] / src / org / vamsas / objects / core / AlignmentAnnotation.java
1 /*\r
2  * This class was automatically generated with \r
3  * <a href="http://www.castor.org">Castor 0.9.9M2</a>, using an XML\r
4  * Schema.\r
5  * $Id$\r
6  */\r
7 \r
8 package org.vamsas.objects.core;\r
9 \r
10   //---------------------------------/\r
11  //- Imported classes and packages -/\r
12 //---------------------------------/\r
13 \r
14 import java.io.IOException;\r
15 import java.io.Reader;\r
16 import java.io.Serializable;\r
17 import java.io.Writer;\r
18 import org.exolab.castor.xml.MarshalException;\r
19 import org.exolab.castor.xml.Marshaller;\r
20 import org.exolab.castor.xml.Unmarshaller;\r
21 import org.exolab.castor.xml.ValidationException;\r
22 import org.xml.sax.ContentHandler;\r
23 \r
24 /**\r
25  * This is annotation over the\r
26  *  coordinate frame defined by all\r
27  *  the columns in the alignment.\r
28  *  \r
29  * \r
30  * @version $Revision$ $Date$\r
31  */\r
32 public class AlignmentAnnotation extends org.vamsas.objects.core.RangeAnnotation \r
33 implements java.io.Serializable\r
34 {\r
35 \r
36 \r
37       //--------------------------/\r
38      //- Class/Member Variables -/\r
39     //--------------------------/\r
40 \r
41     /**\r
42      * TODO: decide if\r
43      *  this flag is\r
44      *  redundant - when\r
45      *  true it would\r
46      *  suggest that the\r
47      *  annotationElement\r
48      *  values together\r
49      *  form a graph\r
50      *  \r
51      */\r
52     private boolean _graph;\r
53 \r
54     /**\r
55      * keeps track of state for field: _graph\r
56      */\r
57     private boolean _has_graph;\r
58 \r
59     /**\r
60      * Field _provenance\r
61      */\r
62     private org.vamsas.objects.core.Provenance _provenance;\r
63 \r
64 \r
65       //----------------/\r
66      //- Constructors -/\r
67     //----------------/\r
68 \r
69     public AlignmentAnnotation() \r
70      {\r
71         super();\r
72     } //-- org.vamsas.objects.core.AlignmentAnnotation()\r
73 \r
74 \r
75       //-----------/\r
76      //- Methods -/\r
77     //-----------/\r
78 \r
79     /**\r
80      * Method deleteGraph\r
81      * \r
82      */\r
83     public void deleteGraph()\r
84     {\r
85         this._has_graph= false;\r
86     } //-- void deleteGraph() \r
87 \r
88     /**\r
89      * Note: hashCode() has not been overriden\r
90      * \r
91      * @param obj\r
92      * @return boolean\r
93      */\r
94     public boolean equals(java.lang.Object obj)\r
95     {\r
96         if ( this == obj )\r
97             return true;\r
98         \r
99         if (super.equals(obj)==false)\r
100             return false;\r
101         \r
102         if (obj instanceof AlignmentAnnotation) {\r
103         \r
104             AlignmentAnnotation temp = (AlignmentAnnotation)obj;\r
105             if (this._graph != temp._graph)\r
106                 return false;\r
107             if (this._has_graph != temp._has_graph)\r
108                 return false;\r
109             if (this._provenance != null) {\r
110                 if (temp._provenance == null) return false;\r
111                 else if (!(this._provenance.equals(temp._provenance))) \r
112                     return false;\r
113             }\r
114             else if (temp._provenance != null)\r
115                 return false;\r
116             return true;\r
117         }\r
118         return false;\r
119     } //-- boolean equals(java.lang.Object) \r
120 \r
121     /**\r
122      * Returns the value of field 'graph'. The field 'graph' has\r
123      * the following description: TODO: decide if\r
124      *  this flag is\r
125      *  redundant - when\r
126      *  true it would\r
127      *  suggest that the\r
128      *  annotationElement\r
129      *  values together\r
130      *  form a graph\r
131      *  \r
132      * \r
133      * @return boolean\r
134      * @return the value of field 'graph'.\r
135      */\r
136     public boolean getGraph()\r
137     {\r
138         return this._graph;\r
139     } //-- boolean getGraph() \r
140 \r
141     /**\r
142      * Returns the value of field 'provenance'.\r
143      * \r
144      * @return Provenance\r
145      * @return the value of field 'provenance'.\r
146      */\r
147     public org.vamsas.objects.core.Provenance getProvenance()\r
148     {\r
149         return this._provenance;\r
150     } //-- org.vamsas.objects.core.Provenance getProvenance() \r
151 \r
152     /**\r
153      * Method hasGraph\r
154      * \r
155      * \r
156      * \r
157      * @return boolean\r
158      */\r
159     public boolean hasGraph()\r
160     {\r
161         return this._has_graph;\r
162     } //-- boolean hasGraph() \r
163 \r
164     /**\r
165      * Method isValid\r
166      * \r
167      * \r
168      * \r
169      * @return boolean\r
170      */\r
171     public boolean isValid()\r
172     {\r
173         try {\r
174             validate();\r
175         }\r
176         catch (org.exolab.castor.xml.ValidationException vex) {\r
177             return false;\r
178         }\r
179         return true;\r
180     } //-- boolean isValid() \r
181 \r
182     /**\r
183      * Method marshal\r
184      * \r
185      * \r
186      * \r
187      * @param out\r
188      */\r
189     public void marshal(java.io.Writer out)\r
190         throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
191     {\r
192         \r
193         Marshaller.marshal(this, out);\r
194     } //-- void marshal(java.io.Writer) \r
195 \r
196     /**\r
197      * Method marshal\r
198      * \r
199      * \r
200      * \r
201      * @param handler\r
202      */\r
203     public void marshal(org.xml.sax.ContentHandler handler)\r
204         throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
205     {\r
206         \r
207         Marshaller.marshal(this, handler);\r
208     } //-- void marshal(org.xml.sax.ContentHandler) \r
209 \r
210     /**\r
211      * Sets the value of field 'graph'. The field 'graph' has the\r
212      * following description: TODO: decide if\r
213      *  this flag is\r
214      *  redundant - when\r
215      *  true it would\r
216      *  suggest that the\r
217      *  annotationElement\r
218      *  values together\r
219      *  form a graph\r
220      *  \r
221      * \r
222      * @param graph the value of field 'graph'.\r
223      */\r
224     public void setGraph(boolean graph)\r
225     {\r
226         this._graph = graph;\r
227         this._has_graph = true;\r
228     } //-- void setGraph(boolean) \r
229 \r
230     /**\r
231      * Sets the value of field 'provenance'.\r
232      * \r
233      * @param provenance the value of field 'provenance'.\r
234      */\r
235     public void setProvenance(org.vamsas.objects.core.Provenance provenance)\r
236     {\r
237         this._provenance = provenance;\r
238     } //-- void setProvenance(org.vamsas.objects.core.Provenance) \r
239 \r
240     /**\r
241      * Method unmarshal\r
242      * \r
243      * \r
244      * \r
245      * @param reader\r
246      * @return RangeType\r
247      */\r
248     public static org.vamsas.objects.core.RangeType unmarshal(java.io.Reader reader)\r
249         throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
250     {\r
251         return (org.vamsas.objects.core.AlignmentAnnotation) Unmarshaller.unmarshal(org.vamsas.objects.core.AlignmentAnnotation.class, reader);\r
252     } //-- org.vamsas.objects.core.RangeType unmarshal(java.io.Reader) \r
253 \r
254     /**\r
255      * Method validate\r
256      * \r
257      */\r
258     public void validate()\r
259         throws org.exolab.castor.xml.ValidationException\r
260     {\r
261         org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
262         validator.validate(this);\r
263     } //-- void validate() \r
264 \r
265 }\r