001 //
002 // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-833
003 // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
004 // Any modifications to this file will be lost upon recompilation of the source schema.
005 // Generated on: 2013.02.07 at 02:32:38 PM CET
006 //
007
008
009 package jabber.server;
010
011 import java.util.ArrayList;
012 import java.util.List;
013 import javax.xml.bind.JAXBElement;
014 import javax.xml.bind.annotation.XmlAccessType;
015 import javax.xml.bind.annotation.XmlAccessorType;
016 import javax.xml.bind.annotation.XmlAnyElement;
017 import javax.xml.bind.annotation.XmlAttribute;
018 import javax.xml.bind.annotation.XmlElementRef;
019 import javax.xml.bind.annotation.XmlElementRefs;
020 import javax.xml.bind.annotation.XmlRootElement;
021 import javax.xml.bind.annotation.XmlSchemaType;
022 import javax.xml.bind.annotation.XmlType;
023 import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
024 import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
025
026
027 /**
028 * <p>Java class for anonymous complex type.
029 *
030 * <p>The following schema fragment specifies the expected content contained within this class.
031 *
032 * <pre>
033 * <complexType>
034 * <complexContent>
035 * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
036 * <sequence>
037 * <choice maxOccurs="unbounded" minOccurs="0">
038 * <element ref="{jabber:server}subject"/>
039 * <element ref="{jabber:server}body"/>
040 * <element ref="{jabber:server}thread"/>
041 * </choice>
042 * <any namespace='##other' maxOccurs="unbounded" minOccurs="0"/>
043 * <element ref="{jabber:server}error" minOccurs="0"/>
044 * </sequence>
045 * <attribute name="from" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
046 * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}NMTOKEN" />
047 * <attribute name="to" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
048 * <attribute name="type" default="normal">
049 * <simpleType>
050 * <restriction base="{http://www.w3.org/2001/XMLSchema}NCName">
051 * <enumeration value="chat"/>
052 * <enumeration value="error"/>
053 * <enumeration value="groupchat"/>
054 * <enumeration value="headline"/>
055 * <enumeration value="normal"/>
056 * </restriction>
057 * </simpleType>
058 * </attribute>
059 * <attribute ref="{http://www.w3.org/XML/1998/namespace}lang"/>
060 * </restriction>
061 * </complexContent>
062 * </complexType>
063 * </pre>
064 *
065 *
066 */
067 @XmlAccessorType(XmlAccessType.FIELD)
068 @XmlType(name = "", propOrder = {
069 "subjectOrBodyOrThread",
070 "any",
071 "error"
072 })
073 @XmlRootElement(name = "message")
074 public class Message {
075
076 @XmlElementRefs({
077 @XmlElementRef(name = "body", namespace = "jabber:server", type = Body.class),
078 @XmlElementRef(name = "subject", namespace = "jabber:server", type = Subject.class),
079 @XmlElementRef(name = "thread", namespace = "jabber:server", type = JAXBElement.class)
080 })
081 protected List<Object> subjectOrBodyOrThread;
082 @XmlAnyElement(lax = true)
083 protected List<Object> any;
084 protected Error error;
085 @XmlAttribute(required = true)
086 protected String from;
087 @XmlAttribute
088 @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
089 @XmlSchemaType(name = "NMTOKEN")
090 protected String id;
091 @XmlAttribute(required = true)
092 protected String to;
093 @XmlAttribute
094 @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
095 protected String type;
096 @XmlAttribute(namespace = "http://www.w3.org/XML/1998/namespace")
097 @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
098 @XmlSchemaType(name = "language")
099 protected String lang;
100
101 /**
102 * Gets the value of the subjectOrBodyOrThread property.
103 *
104 * <p>
105 * This accessor method returns a reference to the live list,
106 * not a snapshot. Therefore any modification you make to the
107 * returned list will be present inside the JAXB object.
108 * This is why there is not a <CODE>set</CODE> method for the subjectOrBodyOrThread property.
109 *
110 * <p>
111 * For example, to add a new item, do as follows:
112 * <pre>
113 * getSubjectOrBodyOrThread().add(newItem);
114 * </pre>
115 *
116 *
117 * <p>
118 * Objects of the following type(s) are allowed in the list
119 * {@link Body }
120 * {@link JAXBElement }{@code <}{@link String }{@code >}
121 * {@link Subject }
122 *
123 *
124 */
125 public List<Object> getSubjectOrBodyOrThread() {
126 if (subjectOrBodyOrThread == null) {
127 subjectOrBodyOrThread = new ArrayList<Object>();
128 }
129 return this.subjectOrBodyOrThread;
130 }
131
132 /**
133 * Gets the value of the any property.
134 *
135 * <p>
136 * This accessor method returns a reference to the live list,
137 * not a snapshot. Therefore any modification you make to the
138 * returned list will be present inside the JAXB object.
139 * This is why there is not a <CODE>set</CODE> method for the any property.
140 *
141 * <p>
142 * For example, to add a new item, do as follows:
143 * <pre>
144 * getAny().add(newItem);
145 * </pre>
146 *
147 *
148 * <p>
149 * Objects of the following type(s) are allowed in the list
150 * {@link Object }
151 *
152 *
153 */
154 public List<Object> getAny() {
155 if (any == null) {
156 any = new ArrayList<Object>();
157 }
158 return this.any;
159 }
160
161 /**
162 * Gets the value of the error property.
163 *
164 * @return
165 * possible object is
166 * {@link Error }
167 *
168 */
169 public Error getError() {
170 return error;
171 }
172
173 /**
174 * Sets the value of the error property.
175 *
176 * @param value
177 * allowed object is
178 * {@link Error }
179 *
180 */
181 public void setError(Error value) {
182 this.error = value;
183 }
184
185 /**
186 * Gets the value of the from property.
187 *
188 * @return
189 * possible object is
190 * {@link String }
191 *
192 */
193 public String getFrom() {
194 return from;
195 }
196
197 /**
198 * Sets the value of the from property.
199 *
200 * @param value
201 * allowed object is
202 * {@link String }
203 *
204 */
205 public void setFrom(String value) {
206 this.from = value;
207 }
208
209 /**
210 * Gets the value of the id property.
211 *
212 * @return
213 * possible object is
214 * {@link String }
215 *
216 */
217 public String getId() {
218 return id;
219 }
220
221 /**
222 * Sets the value of the id property.
223 *
224 * @param value
225 * allowed object is
226 * {@link String }
227 *
228 */
229 public void setId(String value) {
230 this.id = value;
231 }
232
233 /**
234 * Gets the value of the to property.
235 *
236 * @return
237 * possible object is
238 * {@link String }
239 *
240 */
241 public String getTo() {
242 return to;
243 }
244
245 /**
246 * Sets the value of the to property.
247 *
248 * @param value
249 * allowed object is
250 * {@link String }
251 *
252 */
253 public void setTo(String value) {
254 this.to = value;
255 }
256
257 /**
258 * Gets the value of the type property.
259 *
260 * @return
261 * possible object is
262 * {@link String }
263 *
264 */
265 public String getType() {
266 if (type == null) {
267 return "normal";
268 } else {
269 return type;
270 }
271 }
272
273 /**
274 * Sets the value of the type property.
275 *
276 * @param value
277 * allowed object is
278 * {@link String }
279 *
280 */
281 public void setType(String value) {
282 this.type = value;
283 }
284
285 /**
286 * Gets the value of the lang property.
287 *
288 * @return
289 * possible object is
290 * {@link String }
291 *
292 */
293 public String getLang() {
294 return lang;
295 }
296
297 /**
298 * Sets the value of the lang property.
299 *
300 * @param value
301 * allowed object is
302 * {@link String }
303 *
304 */
305 public void setLang(String value) {
306 this.lang = value;
307 }
308
309 }