001
002 package org.oasis_open.docs.wsn.t_1;
003
004 import java.util.ArrayList;
005 import java.util.List;
006 import javax.xml.bind.annotation.XmlAccessType;
007 import javax.xml.bind.annotation.XmlAccessorType;
008 import javax.xml.bind.annotation.XmlAnyElement;
009 import javax.xml.bind.annotation.XmlAttribute;
010 import javax.xml.bind.annotation.XmlElement;
011 import javax.xml.bind.annotation.XmlType;
012 import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
013 import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
014 import javax.xml.namespace.QName;
015
016
017 /**
018 * <p>Java class for TopicType complex type.
019 *
020 * <p>The following schema fragment specifies the expected content contained within this class.
021 *
022 * <pre>
023 * <complexType name="TopicType">
024 * <complexContent>
025 * <extension base="{http://docs.oasis-open.org/wsn/t-1}ExtensibleDocumented">
026 * <sequence>
027 * <element name="MessagePattern" type="{http://docs.oasis-open.org/wsn/t-1}QueryExpressionType" minOccurs="0"/>
028 * <element name="Topic" type="{http://docs.oasis-open.org/wsn/t-1}TopicType" maxOccurs="unbounded" minOccurs="0"/>
029 * <any/>
030 * </sequence>
031 * <attribute name="final" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
032 * <attribute name="messageTypes">
033 * <simpleType>
034 * <list itemType="{http://www.w3.org/2001/XMLSchema}QName" />
035 * </simpleType>
036 * </attribute>
037 * <attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}NCName" />
038 * </extension>
039 * </complexContent>
040 * </complexType>
041 * </pre>
042 *
043 *
044 */
045 @XmlAccessorType(XmlAccessType.FIELD)
046 @XmlType(name = "TopicType", propOrder = {
047 "messagePattern",
048 "topic",
049 "any"
050 })
051 public class TopicType
052 extends ExtensibleDocumented
053 {
054
055 @XmlElement(name = "MessagePattern")
056 protected QueryExpressionType messagePattern;
057 @XmlElement(name = "Topic")
058 protected List<TopicType> topic;
059 @XmlAnyElement(lax = true)
060 protected List<Object> any;
061 @XmlAttribute(name = "final")
062 protected Boolean _final;
063 @XmlAttribute
064 protected List<QName> messageTypes;
065 @XmlAttribute(required = true)
066 @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
067 protected String name;
068
069 /**
070 * Gets the value of the messagePattern property.
071 *
072 * @return
073 * possible object is
074 * {@link QueryExpressionType }
075 *
076 */
077 public QueryExpressionType getMessagePattern() {
078 return messagePattern;
079 }
080
081 /**
082 * Sets the value of the messagePattern property.
083 *
084 * @param value
085 * allowed object is
086 * {@link QueryExpressionType }
087 *
088 */
089 public void setMessagePattern(QueryExpressionType value) {
090 this.messagePattern = value;
091 }
092
093 /**
094 * Gets the value of the topic property.
095 *
096 * <p>
097 * This accessor method returns a reference to the live list,
098 * not a snapshot. Therefore any modification you make to the
099 * returned list will be present inside the JAXB object.
100 * This is why there is not a <CODE>set</CODE> method for the topic property.
101 *
102 * <p>
103 * For example, to add a new item, do as follows:
104 * <pre>
105 * getTopic().add(newItem);
106 * </pre>
107 *
108 *
109 * <p>
110 * Objects of the following type(s) are allowed in the list
111 * {@link TopicType }
112 *
113 *
114 */
115 public List<TopicType> getTopic() {
116 if (topic == null) {
117 topic = new ArrayList<TopicType>();
118 }
119 return this.topic;
120 }
121
122 /**
123 * Gets the value of the any property.
124 *
125 * <p>
126 * This accessor method returns a reference to the live list,
127 * not a snapshot. Therefore any modification you make to the
128 * returned list will be present inside the JAXB object.
129 * This is why there is not a <CODE>set</CODE> method for the any property.
130 *
131 * <p>
132 * For example, to add a new item, do as follows:
133 * <pre>
134 * getAny().add(newItem);
135 * </pre>
136 *
137 *
138 * <p>
139 * Objects of the following type(s) are allowed in the list
140 * {@link Object }
141 *
142 *
143 */
144 public List<Object> getAny() {
145 if (any == null) {
146 any = new ArrayList<Object>();
147 }
148 return this.any;
149 }
150
151 /**
152 * Gets the value of the final property.
153 *
154 * @return
155 * possible object is
156 * {@link Boolean }
157 *
158 */
159 public boolean isFinal() {
160 if (_final == null) {
161 return false;
162 } else {
163 return _final;
164 }
165 }
166
167 /**
168 * Sets the value of the final property.
169 *
170 * @param value
171 * allowed object is
172 * {@link Boolean }
173 *
174 */
175 public void setFinal(Boolean value) {
176 this._final = value;
177 }
178
179 /**
180 * Gets the value of the messageTypes property.
181 *
182 * <p>
183 * This accessor method returns a reference to the live list,
184 * not a snapshot. Therefore any modification you make to the
185 * returned list will be present inside the JAXB object.
186 * This is why there is not a <CODE>set</CODE> method for the messageTypes property.
187 *
188 * <p>
189 * For example, to add a new item, do as follows:
190 * <pre>
191 * getMessageTypes().add(newItem);
192 * </pre>
193 *
194 *
195 * <p>
196 * Objects of the following type(s) are allowed in the list
197 * {@link QName }
198 *
199 *
200 */
201 public List<QName> getMessageTypes() {
202 if (messageTypes == null) {
203 messageTypes = new ArrayList<QName>();
204 }
205 return this.messageTypes;
206 }
207
208 /**
209 * Gets the value of the name property.
210 *
211 * @return
212 * possible object is
213 * {@link String }
214 *
215 */
216 public String getName() {
217 return name;
218 }
219
220 /**
221 * Sets the value of the name property.
222 *
223 * @param value
224 * allowed object is
225 * {@link String }
226 *
227 */
228 public void setName(String value) {
229 this.name = value;
230 }
231
232 }