merge from 2_4_Release branch
[jalview.git] / src / jalview / binding / UserColours.java
1 /*
2  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.4)
3  * Copyright (C) 2008 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle
4  * 
5  * This program is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU General Public License
7  * as published by the Free Software Foundation; either version 2
8  * of the License, or (at your option) any later version.
9  * 
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  * 
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
18  */
19 package jalview.binding;
20
21 // ---------------------------------/
22 // - Imported classes and packages -/
23 // ---------------------------------/
24
25 import org.exolab.castor.xml.Marshaller;
26 import org.exolab.castor.xml.Unmarshaller;
27
28 /**
29  * Class UserColours.
30  * 
31  * @version $Revision$ $Date$
32  */
33 public class UserColours implements java.io.Serializable
34 {
35
36   // --------------------------/
37   // - Class/Member Variables -/
38   // --------------------------/
39
40   /**
41    * Field _id.
42    */
43   private java.lang.String _id;
44
45   /**
46    * Field _userColourScheme.
47    */
48   private jalview.binding.UserColourScheme _userColourScheme;
49
50   // ----------------/
51   // - Constructors -/
52   // ----------------/
53
54   public UserColours()
55   {
56     super();
57   }
58
59   // -----------/
60   // - Methods -/
61   // -----------/
62
63   /**
64    * Returns the value of field 'id'.
65    * 
66    * @return the value of field 'Id'.
67    */
68   public java.lang.String getId()
69   {
70     return this._id;
71   }
72
73   /**
74    * Returns the value of field 'userColourScheme'.
75    * 
76    * @return the value of field 'UserColourScheme'.
77    */
78   public jalview.binding.UserColourScheme getUserColourScheme()
79   {
80     return this._userColourScheme;
81   }
82
83   /**
84    * Method isValid.
85    * 
86    * @return true if this object is valid according to the schema
87    */
88   public boolean isValid()
89   {
90     try
91     {
92       validate();
93     } catch (org.exolab.castor.xml.ValidationException vex)
94     {
95       return false;
96     }
97     return true;
98   }
99
100   /**
101    * 
102    * 
103    * @param out
104    * @throws org.exolab.castor.xml.MarshalException
105    *                 if object is null or if any SAXException is thrown during
106    *                 marshaling
107    * @throws org.exolab.castor.xml.ValidationException
108    *                 if this object is an invalid instance according to the
109    *                 schema
110    */
111   public void marshal(final java.io.Writer out)
112           throws org.exolab.castor.xml.MarshalException,
113           org.exolab.castor.xml.ValidationException
114   {
115     Marshaller.marshal(this, out);
116   }
117
118   /**
119    * 
120    * 
121    * @param handler
122    * @throws java.io.IOException
123    *                 if an IOException occurs during marshaling
124    * @throws org.exolab.castor.xml.ValidationException
125    *                 if this object is an invalid instance according to the
126    *                 schema
127    * @throws org.exolab.castor.xml.MarshalException
128    *                 if object is null or if any SAXException is thrown during
129    *                 marshaling
130    */
131   public void marshal(final org.xml.sax.ContentHandler handler)
132           throws java.io.IOException,
133           org.exolab.castor.xml.MarshalException,
134           org.exolab.castor.xml.ValidationException
135   {
136     Marshaller.marshal(this, handler);
137   }
138
139   /**
140    * Sets the value of field 'id'.
141    * 
142    * @param id
143    *                the value of field 'id'.
144    */
145   public void setId(final java.lang.String id)
146   {
147     this._id = id;
148   }
149
150   /**
151    * Sets the value of field 'userColourScheme'.
152    * 
153    * @param userColourScheme
154    *                the value of field 'userColourScheme'
155    */
156   public void setUserColourScheme(
157           final jalview.binding.UserColourScheme userColourScheme)
158   {
159     this._userColourScheme = userColourScheme;
160   }
161
162   /**
163    * Method unmarshal.
164    * 
165    * @param reader
166    * @throws org.exolab.castor.xml.MarshalException
167    *                 if object is null or if any SAXException is thrown during
168    *                 marshaling
169    * @throws org.exolab.castor.xml.ValidationException
170    *                 if this object is an invalid instance according to the
171    *                 schema
172    * @return the unmarshaled jalview.binding.UserColours
173    */
174   public static jalview.binding.UserColours unmarshal(
175           final java.io.Reader reader)
176           throws org.exolab.castor.xml.MarshalException,
177           org.exolab.castor.xml.ValidationException
178   {
179     return (jalview.binding.UserColours) Unmarshaller.unmarshal(
180             jalview.binding.UserColours.class, reader);
181   }
182
183   /**
184    * 
185    * 
186    * @throws org.exolab.castor.xml.ValidationException
187    *                 if this object is an invalid instance according to the
188    *                 schema
189    */
190   public void validate() throws org.exolab.castor.xml.ValidationException
191   {
192     org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
193     validator.validate(this);
194   }
195
196 }