001//
002// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.10-b140310.1920 
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: 2015.08.10 at 11:21:36 AM EDT 
006//
007
008
009package org.apache.activemq.schema.core;
010
011import java.util.HashMap;
012import java.util.Map;
013import javax.xml.bind.annotation.XmlAccessType;
014import javax.xml.bind.annotation.XmlAccessorType;
015import javax.xml.bind.annotation.XmlAnyAttribute;
016import javax.xml.bind.annotation.XmlAttribute;
017import javax.xml.bind.annotation.XmlID;
018import javax.xml.bind.annotation.XmlRootElement;
019import javax.xml.bind.annotation.XmlSchemaType;
020import javax.xml.bind.annotation.XmlType;
021import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
022import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
023import javax.xml.namespace.QName;
024import org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy;
025import org.jvnet.jaxb2_commons.lang.Equals;
026import org.jvnet.jaxb2_commons.lang.EqualsStrategy;
027import org.jvnet.jaxb2_commons.lang.HashCode;
028import org.jvnet.jaxb2_commons.lang.HashCodeStrategy;
029import org.jvnet.jaxb2_commons.lang.JAXBHashCodeStrategy;
030import org.jvnet.jaxb2_commons.lang.JAXBToStringStrategy;
031import org.jvnet.jaxb2_commons.lang.ToString;
032import org.jvnet.jaxb2_commons.lang.ToStringStrategy;
033import org.jvnet.jaxb2_commons.locator.ObjectLocator;
034import org.jvnet.jaxb2_commons.locator.util.LocatorUtils;
035
036
037/**
038 * <p>Java class for anonymous complex type.
039 * 
040 * <p>The following schema fragment specifies the expected content contained within this class.
041 * 
042 * <pre>
043 * &lt;complexType>
044 *   &lt;complexContent>
045 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
046 *       &lt;attribute name="concurrentSend" type="{http://www.w3.org/2001/XMLSchema}boolean" />
047 *       &lt;attribute name="local" type="{http://www.w3.org/2001/XMLSchema}boolean" />
048 *       &lt;attribute name="name" type="{http://www.w3.org/2001/XMLSchema}string" />
049 *       &lt;attribute name="postfix" type="{http://www.w3.org/2001/XMLSchema}string" />
050 *       &lt;attribute name="prefix" type="{http://www.w3.org/2001/XMLSchema}string" />
051 *       &lt;attribute name="selectorAware" type="{http://www.w3.org/2001/XMLSchema}boolean" />
052 *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
053 *       &lt;anyAttribute processContents='lax' namespace='##other'/>
054 *     &lt;/restriction>
055 *   &lt;/complexContent>
056 * &lt;/complexType>
057 * </pre>
058 * 
059 * 
060 */
061@XmlAccessorType(XmlAccessType.FIELD)
062@XmlType(name = "")
063@XmlRootElement(name = "virtualTopic")
064public class DtoVirtualTopic implements Equals, HashCode, ToString
065{
066
067    @XmlAttribute(name = "concurrentSend")
068    protected Boolean concurrentSend;
069    @XmlAttribute(name = "local")
070    protected Boolean local;
071    @XmlAttribute(name = "name")
072    protected String name;
073    @XmlAttribute(name = "postfix")
074    protected String postfix;
075    @XmlAttribute(name = "prefix")
076    protected String prefix;
077    @XmlAttribute(name = "selectorAware")
078    protected Boolean selectorAware;
079    @XmlAttribute(name = "id")
080    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
081    @XmlID
082    @XmlSchemaType(name = "ID")
083    protected String id;
084    @XmlAnyAttribute
085    private Map<QName, String> otherAttributes = new HashMap<QName, String>();
086
087    /**
088     * Gets the value of the concurrentSend property.
089     * 
090     * @return
091     *     possible object is
092     *     {@link Boolean }
093     *     
094     */
095    public Boolean isConcurrentSend() {
096        return concurrentSend;
097    }
098
099    /**
100     * Sets the value of the concurrentSend property.
101     * 
102     * @param value
103     *     allowed object is
104     *     {@link Boolean }
105     *     
106     */
107    public void setConcurrentSend(Boolean value) {
108        this.concurrentSend = value;
109    }
110
111    /**
112     * Gets the value of the local property.
113     * 
114     * @return
115     *     possible object is
116     *     {@link Boolean }
117     *     
118     */
119    public Boolean isLocal() {
120        return local;
121    }
122
123    /**
124     * Sets the value of the local property.
125     * 
126     * @param value
127     *     allowed object is
128     *     {@link Boolean }
129     *     
130     */
131    public void setLocal(Boolean value) {
132        this.local = value;
133    }
134
135    /**
136     * Gets the value of the name property.
137     * 
138     * @return
139     *     possible object is
140     *     {@link String }
141     *     
142     */
143    public String getName() {
144        return name;
145    }
146
147    /**
148     * Sets the value of the name property.
149     * 
150     * @param value
151     *     allowed object is
152     *     {@link String }
153     *     
154     */
155    public void setName(String value) {
156        this.name = value;
157    }
158
159    /**
160     * Gets the value of the postfix property.
161     * 
162     * @return
163     *     possible object is
164     *     {@link String }
165     *     
166     */
167    public String getPostfix() {
168        return postfix;
169    }
170
171    /**
172     * Sets the value of the postfix property.
173     * 
174     * @param value
175     *     allowed object is
176     *     {@link String }
177     *     
178     */
179    public void setPostfix(String value) {
180        this.postfix = value;
181    }
182
183    /**
184     * Gets the value of the prefix property.
185     * 
186     * @return
187     *     possible object is
188     *     {@link String }
189     *     
190     */
191    public String getPrefix() {
192        return prefix;
193    }
194
195    /**
196     * Sets the value of the prefix property.
197     * 
198     * @param value
199     *     allowed object is
200     *     {@link String }
201     *     
202     */
203    public void setPrefix(String value) {
204        this.prefix = value;
205    }
206
207    /**
208     * Gets the value of the selectorAware property.
209     * 
210     * @return
211     *     possible object is
212     *     {@link Boolean }
213     *     
214     */
215    public Boolean isSelectorAware() {
216        return selectorAware;
217    }
218
219    /**
220     * Sets the value of the selectorAware property.
221     * 
222     * @param value
223     *     allowed object is
224     *     {@link Boolean }
225     *     
226     */
227    public void setSelectorAware(Boolean value) {
228        this.selectorAware = value;
229    }
230
231    /**
232     * Gets the value of the id property.
233     * 
234     * @return
235     *     possible object is
236     *     {@link String }
237     *     
238     */
239    public String getId() {
240        return id;
241    }
242
243    /**
244     * Sets the value of the id property.
245     * 
246     * @param value
247     *     allowed object is
248     *     {@link String }
249     *     
250     */
251    public void setId(String value) {
252        this.id = value;
253    }
254
255    /**
256     * Gets a map that contains attributes that aren't bound to any typed property on this class.
257     * 
258     * <p>
259     * the map is keyed by the name of the attribute and 
260     * the value is the string value of the attribute.
261     * 
262     * the map returned by this method is live, and you can add new attribute
263     * by updating the map directly. Because of this design, there's no setter.
264     * 
265     * 
266     * @return
267     *     always non-null
268     */
269    public Map<QName, String> getOtherAttributes() {
270        return otherAttributes;
271    }
272
273    public String toString() {
274        final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
275        final StringBuilder buffer = new StringBuilder();
276        append(null, buffer, strategy);
277        return buffer.toString();
278    }
279
280    public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
281        strategy.appendStart(locator, this, buffer);
282        appendFields(locator, buffer, strategy);
283        strategy.appendEnd(locator, this, buffer);
284        return buffer;
285    }
286
287    public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
288        {
289            Boolean theConcurrentSend;
290            theConcurrentSend = this.isConcurrentSend();
291            strategy.appendField(locator, this, "concurrentSend", buffer, theConcurrentSend);
292        }
293        {
294            Boolean theLocal;
295            theLocal = this.isLocal();
296            strategy.appendField(locator, this, "local", buffer, theLocal);
297        }
298        {
299            String theName;
300            theName = this.getName();
301            strategy.appendField(locator, this, "name", buffer, theName);
302        }
303        {
304            String thePostfix;
305            thePostfix = this.getPostfix();
306            strategy.appendField(locator, this, "postfix", buffer, thePostfix);
307        }
308        {
309            String thePrefix;
310            thePrefix = this.getPrefix();
311            strategy.appendField(locator, this, "prefix", buffer, thePrefix);
312        }
313        {
314            Boolean theSelectorAware;
315            theSelectorAware = this.isSelectorAware();
316            strategy.appendField(locator, this, "selectorAware", buffer, theSelectorAware);
317        }
318        {
319            String theId;
320            theId = this.getId();
321            strategy.appendField(locator, this, "id", buffer, theId);
322        }
323        return buffer;
324    }
325
326    public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
327        int currentHashCode = 1;
328        {
329            Boolean theConcurrentSend;
330            theConcurrentSend = this.isConcurrentSend();
331            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "concurrentSend", theConcurrentSend), currentHashCode, theConcurrentSend);
332        }
333        {
334            Boolean theLocal;
335            theLocal = this.isLocal();
336            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "local", theLocal), currentHashCode, theLocal);
337        }
338        {
339            String theName;
340            theName = this.getName();
341            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "name", theName), currentHashCode, theName);
342        }
343        {
344            String thePostfix;
345            thePostfix = this.getPostfix();
346            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "postfix", thePostfix), currentHashCode, thePostfix);
347        }
348        {
349            String thePrefix;
350            thePrefix = this.getPrefix();
351            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "prefix", thePrefix), currentHashCode, thePrefix);
352        }
353        {
354            Boolean theSelectorAware;
355            theSelectorAware = this.isSelectorAware();
356            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "selectorAware", theSelectorAware), currentHashCode, theSelectorAware);
357        }
358        {
359            String theId;
360            theId = this.getId();
361            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "id", theId), currentHashCode, theId);
362        }
363        return currentHashCode;
364    }
365
366    public int hashCode() {
367        final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
368        return this.hashCode(null, strategy);
369    }
370
371    public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
372        if (!(object instanceof DtoVirtualTopic)) {
373            return false;
374        }
375        if (this == object) {
376            return true;
377        }
378        final DtoVirtualTopic that = ((DtoVirtualTopic) object);
379        {
380            Boolean lhsConcurrentSend;
381            lhsConcurrentSend = this.isConcurrentSend();
382            Boolean rhsConcurrentSend;
383            rhsConcurrentSend = that.isConcurrentSend();
384            if (!strategy.equals(LocatorUtils.property(thisLocator, "concurrentSend", lhsConcurrentSend), LocatorUtils.property(thatLocator, "concurrentSend", rhsConcurrentSend), lhsConcurrentSend, rhsConcurrentSend)) {
385                return false;
386            }
387        }
388        {
389            Boolean lhsLocal;
390            lhsLocal = this.isLocal();
391            Boolean rhsLocal;
392            rhsLocal = that.isLocal();
393            if (!strategy.equals(LocatorUtils.property(thisLocator, "local", lhsLocal), LocatorUtils.property(thatLocator, "local", rhsLocal), lhsLocal, rhsLocal)) {
394                return false;
395            }
396        }
397        {
398            String lhsName;
399            lhsName = this.getName();
400            String rhsName;
401            rhsName = that.getName();
402            if (!strategy.equals(LocatorUtils.property(thisLocator, "name", lhsName), LocatorUtils.property(thatLocator, "name", rhsName), lhsName, rhsName)) {
403                return false;
404            }
405        }
406        {
407            String lhsPostfix;
408            lhsPostfix = this.getPostfix();
409            String rhsPostfix;
410            rhsPostfix = that.getPostfix();
411            if (!strategy.equals(LocatorUtils.property(thisLocator, "postfix", lhsPostfix), LocatorUtils.property(thatLocator, "postfix", rhsPostfix), lhsPostfix, rhsPostfix)) {
412                return false;
413            }
414        }
415        {
416            String lhsPrefix;
417            lhsPrefix = this.getPrefix();
418            String rhsPrefix;
419            rhsPrefix = that.getPrefix();
420            if (!strategy.equals(LocatorUtils.property(thisLocator, "prefix", lhsPrefix), LocatorUtils.property(thatLocator, "prefix", rhsPrefix), lhsPrefix, rhsPrefix)) {
421                return false;
422            }
423        }
424        {
425            Boolean lhsSelectorAware;
426            lhsSelectorAware = this.isSelectorAware();
427            Boolean rhsSelectorAware;
428            rhsSelectorAware = that.isSelectorAware();
429            if (!strategy.equals(LocatorUtils.property(thisLocator, "selectorAware", lhsSelectorAware), LocatorUtils.property(thatLocator, "selectorAware", rhsSelectorAware), lhsSelectorAware, rhsSelectorAware)) {
430                return false;
431            }
432        }
433        {
434            String lhsId;
435            lhsId = this.getId();
436            String rhsId;
437            rhsId = that.getId();
438            if (!strategy.equals(LocatorUtils.property(thisLocator, "id", lhsId), LocatorUtils.property(thatLocator, "id", rhsId), lhsId, rhsId)) {
439                return false;
440            }
441        }
442        return true;
443    }
444
445    public boolean equals(Object object) {
446        final EqualsStrategy strategy = new ElementAwareEqualsStrategy();
447        return equals(null, null, object, strategy);
448    }
449
450}