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: 2019.03.15 at 09:00:08 AM EDT 
006//
007
008
009package org.apache.activemq.schema.core;
010
011import java.util.ArrayList;
012import java.util.HashMap;
013import java.util.List;
014import java.util.Map;
015import javax.xml.bind.JAXBElement;
016import javax.xml.bind.annotation.XmlAccessType;
017import javax.xml.bind.annotation.XmlAccessorType;
018import javax.xml.bind.annotation.XmlAnyAttribute;
019import javax.xml.bind.annotation.XmlAnyElement;
020import javax.xml.bind.annotation.XmlAttribute;
021import javax.xml.bind.annotation.XmlElementRef;
022import javax.xml.bind.annotation.XmlElementRefs;
023import javax.xml.bind.annotation.XmlID;
024import javax.xml.bind.annotation.XmlRootElement;
025import javax.xml.bind.annotation.XmlSchemaType;
026import javax.xml.bind.annotation.XmlType;
027import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
028import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
029import javax.xml.namespace.QName;
030import org.jvnet.jaxb2_commons.lang.Equals;
031import org.jvnet.jaxb2_commons.lang.EqualsStrategy;
032import org.jvnet.jaxb2_commons.lang.HashCode;
033import org.jvnet.jaxb2_commons.lang.HashCodeStrategy;
034import org.jvnet.jaxb2_commons.lang.JAXBHashCodeStrategy;
035import org.jvnet.jaxb2_commons.lang.JAXBToStringStrategy;
036import org.jvnet.jaxb2_commons.lang.ToString;
037import org.jvnet.jaxb2_commons.lang.ToStringStrategy;
038import org.jvnet.jaxb2_commons.locator.ObjectLocator;
039import org.jvnet.jaxb2_commons.locator.util.LocatorUtils;
040
041
042/**
043 * <p>Java class for anonymous complex type.
044 * 
045 * <p>The following schema fragment specifies the expected content contained within this class.
046 * 
047 * <pre>
048 * &lt;complexType>
049 *   &lt;complexContent>
050 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
051 *       &lt;choice maxOccurs="unbounded" minOccurs="0">
052 *         &lt;choice>
053 *           &lt;element name="compositeDestinations" maxOccurs="unbounded" minOccurs="0">
054 *             &lt;complexType>
055 *               &lt;complexContent>
056 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
057 *                   &lt;choice maxOccurs="unbounded" minOccurs="0">
058 *                     &lt;element ref="{http://activemq.apache.org/schema/core}queue"/>
059 *                     &lt;element ref="{http://activemq.apache.org/schema/core}tempQueue"/>
060 *                     &lt;element ref="{http://activemq.apache.org/schema/core}tempTopic"/>
061 *                     &lt;element ref="{http://activemq.apache.org/schema/core}topic"/>
062 *                     &lt;any namespace='##other'/>
063 *                   &lt;/choice>
064 *                 &lt;/restriction>
065 *               &lt;/complexContent>
066 *             &lt;/complexType>
067 *           &lt;/element>
068 *           &lt;element name="connection" minOccurs="0">
069 *             &lt;complexType>
070 *               &lt;complexContent>
071 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
072 *                   &lt;sequence minOccurs="0">
073 *                     &lt;any maxOccurs="unbounded" minOccurs="0"/>
074 *                   &lt;/sequence>
075 *                 &lt;/restriction>
076 *               &lt;/complexContent>
077 *             &lt;/complexType>
078 *           &lt;/element>
079 *           &lt;element name="properties" minOccurs="0">
080 *             &lt;complexType>
081 *               &lt;complexContent>
082 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
083 *                   &lt;sequence minOccurs="0">
084 *                     &lt;any maxOccurs="unbounded" minOccurs="0"/>
085 *                   &lt;/sequence>
086 *                 &lt;/restriction>
087 *               &lt;/complexContent>
088 *             &lt;/complexType>
089 *           &lt;/element>
090 *           &lt;any namespace='##other' maxOccurs="unbounded" minOccurs="0"/>
091 *         &lt;/choice>
092 *       &lt;/choice>
093 *       &lt;attribute name="DLQ" type="{http://www.w3.org/2001/XMLSchema}boolean" />
094 *       &lt;attribute name="connection" type="{http://www.w3.org/2001/XMLSchema}string" />
095 *       &lt;attribute name="connectionId" type="{http://www.w3.org/2001/XMLSchema}string" />
096 *       &lt;attribute name="name" type="{http://www.w3.org/2001/XMLSchema}string" />
097 *       &lt;attribute name="physicalName" type="{http://www.w3.org/2001/XMLSchema}string" />
098 *       &lt;attribute name="properties" type="{http://www.w3.org/2001/XMLSchema}string" />
099 *       &lt;attribute name="sequenceId" type="{http://www.w3.org/2001/XMLSchema}long" />
100 *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
101 *       &lt;anyAttribute processContents='lax' namespace='##other'/>
102 *     &lt;/restriction>
103 *   &lt;/complexContent>
104 * &lt;/complexType>
105 * </pre>
106 * 
107 * 
108 */
109@XmlAccessorType(XmlAccessType.FIELD)
110@XmlType(name = "", propOrder = {
111    "compositeDestinationsOrConnectionOrProperties"
112})
113@XmlRootElement(name = "tempTopic")
114public class DtoTempTopic implements Equals, HashCode, ToString
115{
116
117    @XmlElementRefs({
118        @XmlElementRef(name = "compositeDestinations", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false),
119        @XmlElementRef(name = "connection", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false),
120        @XmlElementRef(name = "properties", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false)
121    })
122    @XmlAnyElement(lax = true)
123    protected List<Object> compositeDestinationsOrConnectionOrProperties;
124    @XmlAttribute(name = "DLQ")
125    protected Boolean dlq;
126    @XmlAttribute(name = "connection")
127    protected String connection;
128    @XmlAttribute(name = "connectionId")
129    protected String connectionId;
130    @XmlAttribute(name = "name")
131    protected String name;
132    @XmlAttribute(name = "physicalName")
133    protected String physicalName;
134    @XmlAttribute(name = "properties")
135    protected String properties;
136    @XmlAttribute(name = "sequenceId")
137    protected Long sequenceId;
138    @XmlAttribute(name = "id")
139    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
140    @XmlID
141    @XmlSchemaType(name = "ID")
142    protected String id;
143    @XmlAnyAttribute
144    private Map<QName, String> otherAttributes = new HashMap<QName, String>();
145
146    /**
147     * Gets the value of the compositeDestinationsOrConnectionOrProperties property.
148     * 
149     * <p>
150     * This accessor method returns a reference to the live list,
151     * not a snapshot. Therefore any modification you make to the
152     * returned list will be present inside the JAXB object.
153     * This is why there is not a <CODE>set</CODE> method for the compositeDestinationsOrConnectionOrProperties property.
154     * 
155     * <p>
156     * For example, to add a new item, do as follows:
157     * <pre>
158     *    getCompositeDestinationsOrConnectionOrProperties().add(newItem);
159     * </pre>
160     * 
161     * 
162     * <p>
163     * Objects of the following type(s) are allowed in the list
164     * {@link Object }
165     * {@link JAXBElement }{@code <}{@link DtoTempTopic.Properties }{@code >}
166     * {@link JAXBElement }{@code <}{@link DtoTempTopic.CompositeDestinations }{@code >}
167     * {@link JAXBElement }{@code <}{@link DtoTempTopic.Connection }{@code >}
168     * 
169     * 
170     */
171    public List<Object> getCompositeDestinationsOrConnectionOrProperties() {
172        if (compositeDestinationsOrConnectionOrProperties == null) {
173            compositeDestinationsOrConnectionOrProperties = new ArrayList<Object>();
174        }
175        return this.compositeDestinationsOrConnectionOrProperties;
176    }
177
178    /**
179     * Gets the value of the dlq property.
180     * 
181     * @return
182     *     possible object is
183     *     {@link Boolean }
184     *     
185     */
186    public Boolean isDLQ() {
187        return dlq;
188    }
189
190    /**
191     * Sets the value of the dlq property.
192     * 
193     * @param value
194     *     allowed object is
195     *     {@link Boolean }
196     *     
197     */
198    public void setDLQ(Boolean value) {
199        this.dlq = value;
200    }
201
202    /**
203     * Gets the value of the connection property.
204     * 
205     * @return
206     *     possible object is
207     *     {@link String }
208     *     
209     */
210    public String getConnection() {
211        return connection;
212    }
213
214    /**
215     * Sets the value of the connection property.
216     * 
217     * @param value
218     *     allowed object is
219     *     {@link String }
220     *     
221     */
222    public void setConnection(String value) {
223        this.connection = value;
224    }
225
226    /**
227     * Gets the value of the connectionId property.
228     * 
229     * @return
230     *     possible object is
231     *     {@link String }
232     *     
233     */
234    public String getConnectionId() {
235        return connectionId;
236    }
237
238    /**
239     * Sets the value of the connectionId property.
240     * 
241     * @param value
242     *     allowed object is
243     *     {@link String }
244     *     
245     */
246    public void setConnectionId(String value) {
247        this.connectionId = value;
248    }
249
250    /**
251     * Gets the value of the name property.
252     * 
253     * @return
254     *     possible object is
255     *     {@link String }
256     *     
257     */
258    public String getName() {
259        return name;
260    }
261
262    /**
263     * Sets the value of the name property.
264     * 
265     * @param value
266     *     allowed object is
267     *     {@link String }
268     *     
269     */
270    public void setName(String value) {
271        this.name = value;
272    }
273
274    /**
275     * Gets the value of the physicalName property.
276     * 
277     * @return
278     *     possible object is
279     *     {@link String }
280     *     
281     */
282    public String getPhysicalName() {
283        return physicalName;
284    }
285
286    /**
287     * Sets the value of the physicalName property.
288     * 
289     * @param value
290     *     allowed object is
291     *     {@link String }
292     *     
293     */
294    public void setPhysicalName(String value) {
295        this.physicalName = value;
296    }
297
298    /**
299     * Gets the value of the properties property.
300     * 
301     * @return
302     *     possible object is
303     *     {@link String }
304     *     
305     */
306    public String getProperties() {
307        return properties;
308    }
309
310    /**
311     * Sets the value of the properties property.
312     * 
313     * @param value
314     *     allowed object is
315     *     {@link String }
316     *     
317     */
318    public void setProperties(String value) {
319        this.properties = value;
320    }
321
322    /**
323     * Gets the value of the sequenceId property.
324     * 
325     * @return
326     *     possible object is
327     *     {@link Long }
328     *     
329     */
330    public Long getSequenceId() {
331        return sequenceId;
332    }
333
334    /**
335     * Sets the value of the sequenceId property.
336     * 
337     * @param value
338     *     allowed object is
339     *     {@link Long }
340     *     
341     */
342    public void setSequenceId(Long value) {
343        this.sequenceId = value;
344    }
345
346    /**
347     * Gets the value of the id property.
348     * 
349     * @return
350     *     possible object is
351     *     {@link String }
352     *     
353     */
354    public String getId() {
355        return id;
356    }
357
358    /**
359     * Sets the value of the id property.
360     * 
361     * @param value
362     *     allowed object is
363     *     {@link String }
364     *     
365     */
366    public void setId(String value) {
367        this.id = value;
368    }
369
370    /**
371     * Gets a map that contains attributes that aren't bound to any typed property on this class.
372     * 
373     * <p>
374     * the map is keyed by the name of the attribute and 
375     * the value is the string value of the attribute.
376     * 
377     * the map returned by this method is live, and you can add new attribute
378     * by updating the map directly. Because of this design, there's no setter.
379     * 
380     * 
381     * @return
382     *     always non-null
383     */
384    public Map<QName, String> getOtherAttributes() {
385        return otherAttributes;
386    }
387
388    public String toString() {
389        final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
390        final StringBuilder buffer = new StringBuilder();
391        append(null, buffer, strategy);
392        return buffer.toString();
393    }
394
395    public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
396        strategy.appendStart(locator, this, buffer);
397        appendFields(locator, buffer, strategy);
398        strategy.appendEnd(locator, this, buffer);
399        return buffer;
400    }
401
402    public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
403        {
404            List<Object> theCompositeDestinationsOrConnectionOrProperties;
405            theCompositeDestinationsOrConnectionOrProperties = (((this.compositeDestinationsOrConnectionOrProperties!= null)&&(!this.compositeDestinationsOrConnectionOrProperties.isEmpty()))?this.getCompositeDestinationsOrConnectionOrProperties():null);
406            strategy.appendField(locator, this, "compositeDestinationsOrConnectionOrProperties", buffer, theCompositeDestinationsOrConnectionOrProperties);
407        }
408        {
409            Boolean theDLQ;
410            theDLQ = this.isDLQ();
411            strategy.appendField(locator, this, "dlq", buffer, theDLQ);
412        }
413        {
414            String theConnection;
415            theConnection = this.getConnection();
416            strategy.appendField(locator, this, "connection", buffer, theConnection);
417        }
418        {
419            String theConnectionId;
420            theConnectionId = this.getConnectionId();
421            strategy.appendField(locator, this, "connectionId", buffer, theConnectionId);
422        }
423        {
424            String theName;
425            theName = this.getName();
426            strategy.appendField(locator, this, "name", buffer, theName);
427        }
428        {
429            String thePhysicalName;
430            thePhysicalName = this.getPhysicalName();
431            strategy.appendField(locator, this, "physicalName", buffer, thePhysicalName);
432        }
433        {
434            String theProperties;
435            theProperties = this.getProperties();
436            strategy.appendField(locator, this, "properties", buffer, theProperties);
437        }
438        {
439            Long theSequenceId;
440            theSequenceId = this.getSequenceId();
441            strategy.appendField(locator, this, "sequenceId", buffer, theSequenceId);
442        }
443        {
444            String theId;
445            theId = this.getId();
446            strategy.appendField(locator, this, "id", buffer, theId);
447        }
448        return buffer;
449    }
450
451    public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
452        int currentHashCode = 1;
453        {
454            List<Object> theCompositeDestinationsOrConnectionOrProperties;
455            theCompositeDestinationsOrConnectionOrProperties = (((this.compositeDestinationsOrConnectionOrProperties!= null)&&(!this.compositeDestinationsOrConnectionOrProperties.isEmpty()))?this.getCompositeDestinationsOrConnectionOrProperties():null);
456            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "compositeDestinationsOrConnectionOrProperties", theCompositeDestinationsOrConnectionOrProperties), currentHashCode, theCompositeDestinationsOrConnectionOrProperties);
457        }
458        {
459            Boolean theDLQ;
460            theDLQ = this.isDLQ();
461            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "dlq", theDLQ), currentHashCode, theDLQ);
462        }
463        {
464            String theConnection;
465            theConnection = this.getConnection();
466            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "connection", theConnection), currentHashCode, theConnection);
467        }
468        {
469            String theConnectionId;
470            theConnectionId = this.getConnectionId();
471            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "connectionId", theConnectionId), currentHashCode, theConnectionId);
472        }
473        {
474            String theName;
475            theName = this.getName();
476            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "name", theName), currentHashCode, theName);
477        }
478        {
479            String thePhysicalName;
480            thePhysicalName = this.getPhysicalName();
481            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "physicalName", thePhysicalName), currentHashCode, thePhysicalName);
482        }
483        {
484            String theProperties;
485            theProperties = this.getProperties();
486            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "properties", theProperties), currentHashCode, theProperties);
487        }
488        {
489            Long theSequenceId;
490            theSequenceId = this.getSequenceId();
491            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "sequenceId", theSequenceId), currentHashCode, theSequenceId);
492        }
493        {
494            String theId;
495            theId = this.getId();
496            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "id", theId), currentHashCode, theId);
497        }
498        return currentHashCode;
499    }
500
501    public int hashCode() {
502        final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
503        return this.hashCode(null, strategy);
504    }
505
506    public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
507        if (!(object instanceof DtoTempTopic)) {
508            return false;
509        }
510        if (this == object) {
511            return true;
512        }
513        final DtoTempTopic that = ((DtoTempTopic) object);
514        {
515            List<Object> lhsCompositeDestinationsOrConnectionOrProperties;
516            lhsCompositeDestinationsOrConnectionOrProperties = (((this.compositeDestinationsOrConnectionOrProperties!= null)&&(!this.compositeDestinationsOrConnectionOrProperties.isEmpty()))?this.getCompositeDestinationsOrConnectionOrProperties():null);
517            List<Object> rhsCompositeDestinationsOrConnectionOrProperties;
518            rhsCompositeDestinationsOrConnectionOrProperties = (((that.compositeDestinationsOrConnectionOrProperties!= null)&&(!that.compositeDestinationsOrConnectionOrProperties.isEmpty()))?that.getCompositeDestinationsOrConnectionOrProperties():null);
519            if (!strategy.equals(LocatorUtils.property(thisLocator, "compositeDestinationsOrConnectionOrProperties", lhsCompositeDestinationsOrConnectionOrProperties), LocatorUtils.property(thatLocator, "compositeDestinationsOrConnectionOrProperties", rhsCompositeDestinationsOrConnectionOrProperties), lhsCompositeDestinationsOrConnectionOrProperties, rhsCompositeDestinationsOrConnectionOrProperties)) {
520                return false;
521            }
522        }
523        {
524            Boolean lhsDLQ;
525            lhsDLQ = this.isDLQ();
526            Boolean rhsDLQ;
527            rhsDLQ = that.isDLQ();
528            if (!strategy.equals(LocatorUtils.property(thisLocator, "dlq", lhsDLQ), LocatorUtils.property(thatLocator, "dlq", rhsDLQ), lhsDLQ, rhsDLQ)) {
529                return false;
530            }
531        }
532        {
533            String lhsConnection;
534            lhsConnection = this.getConnection();
535            String rhsConnection;
536            rhsConnection = that.getConnection();
537            if (!strategy.equals(LocatorUtils.property(thisLocator, "connection", lhsConnection), LocatorUtils.property(thatLocator, "connection", rhsConnection), lhsConnection, rhsConnection)) {
538                return false;
539            }
540        }
541        {
542            String lhsConnectionId;
543            lhsConnectionId = this.getConnectionId();
544            String rhsConnectionId;
545            rhsConnectionId = that.getConnectionId();
546            if (!strategy.equals(LocatorUtils.property(thisLocator, "connectionId", lhsConnectionId), LocatorUtils.property(thatLocator, "connectionId", rhsConnectionId), lhsConnectionId, rhsConnectionId)) {
547                return false;
548            }
549        }
550        {
551            String lhsName;
552            lhsName = this.getName();
553            String rhsName;
554            rhsName = that.getName();
555            if (!strategy.equals(LocatorUtils.property(thisLocator, "name", lhsName), LocatorUtils.property(thatLocator, "name", rhsName), lhsName, rhsName)) {
556                return false;
557            }
558        }
559        {
560            String lhsPhysicalName;
561            lhsPhysicalName = this.getPhysicalName();
562            String rhsPhysicalName;
563            rhsPhysicalName = that.getPhysicalName();
564            if (!strategy.equals(LocatorUtils.property(thisLocator, "physicalName", lhsPhysicalName), LocatorUtils.property(thatLocator, "physicalName", rhsPhysicalName), lhsPhysicalName, rhsPhysicalName)) {
565                return false;
566            }
567        }
568        {
569            String lhsProperties;
570            lhsProperties = this.getProperties();
571            String rhsProperties;
572            rhsProperties = that.getProperties();
573            if (!strategy.equals(LocatorUtils.property(thisLocator, "properties", lhsProperties), LocatorUtils.property(thatLocator, "properties", rhsProperties), lhsProperties, rhsProperties)) {
574                return false;
575            }
576        }
577        {
578            Long lhsSequenceId;
579            lhsSequenceId = this.getSequenceId();
580            Long rhsSequenceId;
581            rhsSequenceId = that.getSequenceId();
582            if (!strategy.equals(LocatorUtils.property(thisLocator, "sequenceId", lhsSequenceId), LocatorUtils.property(thatLocator, "sequenceId", rhsSequenceId), lhsSequenceId, rhsSequenceId)) {
583                return false;
584            }
585        }
586        {
587            String lhsId;
588            lhsId = this.getId();
589            String rhsId;
590            rhsId = that.getId();
591            if (!strategy.equals(LocatorUtils.property(thisLocator, "id", lhsId), LocatorUtils.property(thatLocator, "id", rhsId), lhsId, rhsId)) {
592                return false;
593            }
594        }
595        return true;
596    }
597
598    public boolean equals(Object object) {
599        final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
600        return equals(null, null, object, strategy);
601    }
602
603
604    /**
605     * <p>Java class for anonymous complex type.
606     * 
607     * <p>The following schema fragment specifies the expected content contained within this class.
608     * 
609     * <pre>
610     * &lt;complexType>
611     *   &lt;complexContent>
612     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
613     *       &lt;choice maxOccurs="unbounded" minOccurs="0">
614     *         &lt;element ref="{http://activemq.apache.org/schema/core}queue"/>
615     *         &lt;element ref="{http://activemq.apache.org/schema/core}tempQueue"/>
616     *         &lt;element ref="{http://activemq.apache.org/schema/core}tempTopic"/>
617     *         &lt;element ref="{http://activemq.apache.org/schema/core}topic"/>
618     *         &lt;any namespace='##other'/>
619     *       &lt;/choice>
620     *     &lt;/restriction>
621     *   &lt;/complexContent>
622     * &lt;/complexType>
623     * </pre>
624     * 
625     * 
626     */
627    @XmlAccessorType(XmlAccessType.FIELD)
628    @XmlType(name = "", propOrder = {
629        "queueOrTempQueueOrTempTopic"
630    })
631    public static class CompositeDestinations
632        implements Equals, HashCode, ToString
633    {
634
635        @XmlElementRefs({
636            @XmlElementRef(name = "topic", namespace = "http://activemq.apache.org/schema/core", type = DtoTopic.class, required = false),
637            @XmlElementRef(name = "tempTopic", namespace = "http://activemq.apache.org/schema/core", type = DtoTempTopic.class, required = false),
638            @XmlElementRef(name = "queue", namespace = "http://activemq.apache.org/schema/core", type = DtoQueue.class, required = false),
639            @XmlElementRef(name = "tempQueue", namespace = "http://activemq.apache.org/schema/core", type = DtoTempQueue.class, required = false)
640        })
641        @XmlAnyElement(lax = true)
642        protected List<Object> queueOrTempQueueOrTempTopic;
643
644        /**
645         * Gets the value of the queueOrTempQueueOrTempTopic property.
646         * 
647         * <p>
648         * This accessor method returns a reference to the live list,
649         * not a snapshot. Therefore any modification you make to the
650         * returned list will be present inside the JAXB object.
651         * This is why there is not a <CODE>set</CODE> method for the queueOrTempQueueOrTempTopic property.
652         * 
653         * <p>
654         * For example, to add a new item, do as follows:
655         * <pre>
656         *    getQueueOrTempQueueOrTempTopic().add(newItem);
657         * </pre>
658         * 
659         * 
660         * <p>
661         * Objects of the following type(s) are allowed in the list
662         * {@link DtoTopic }
663         * {@link DtoTempTopic }
664         * {@link Object }
665         * {@link DtoQueue }
666         * {@link DtoTempQueue }
667         * 
668         * 
669         */
670        public List<Object> getQueueOrTempQueueOrTempTopic() {
671            if (queueOrTempQueueOrTempTopic == null) {
672                queueOrTempQueueOrTempTopic = new ArrayList<Object>();
673            }
674            return this.queueOrTempQueueOrTempTopic;
675        }
676
677        public String toString() {
678            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
679            final StringBuilder buffer = new StringBuilder();
680            append(null, buffer, strategy);
681            return buffer.toString();
682        }
683
684        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
685            strategy.appendStart(locator, this, buffer);
686            appendFields(locator, buffer, strategy);
687            strategy.appendEnd(locator, this, buffer);
688            return buffer;
689        }
690
691        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
692            {
693                List<Object> theQueueOrTempQueueOrTempTopic;
694                theQueueOrTempQueueOrTempTopic = (((this.queueOrTempQueueOrTempTopic!= null)&&(!this.queueOrTempQueueOrTempTopic.isEmpty()))?this.getQueueOrTempQueueOrTempTopic():null);
695                strategy.appendField(locator, this, "queueOrTempQueueOrTempTopic", buffer, theQueueOrTempQueueOrTempTopic);
696            }
697            return buffer;
698        }
699
700        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
701            int currentHashCode = 1;
702            {
703                List<Object> theQueueOrTempQueueOrTempTopic;
704                theQueueOrTempQueueOrTempTopic = (((this.queueOrTempQueueOrTempTopic!= null)&&(!this.queueOrTempQueueOrTempTopic.isEmpty()))?this.getQueueOrTempQueueOrTempTopic():null);
705                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "queueOrTempQueueOrTempTopic", theQueueOrTempQueueOrTempTopic), currentHashCode, theQueueOrTempQueueOrTempTopic);
706            }
707            return currentHashCode;
708        }
709
710        public int hashCode() {
711            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
712            return this.hashCode(null, strategy);
713        }
714
715        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
716            if (!(object instanceof DtoTempTopic.CompositeDestinations)) {
717                return false;
718            }
719            if (this == object) {
720                return true;
721            }
722            final DtoTempTopic.CompositeDestinations that = ((DtoTempTopic.CompositeDestinations) object);
723            {
724                List<Object> lhsQueueOrTempQueueOrTempTopic;
725                lhsQueueOrTempQueueOrTempTopic = (((this.queueOrTempQueueOrTempTopic!= null)&&(!this.queueOrTempQueueOrTempTopic.isEmpty()))?this.getQueueOrTempQueueOrTempTopic():null);
726                List<Object> rhsQueueOrTempQueueOrTempTopic;
727                rhsQueueOrTempQueueOrTempTopic = (((that.queueOrTempQueueOrTempTopic!= null)&&(!that.queueOrTempQueueOrTempTopic.isEmpty()))?that.getQueueOrTempQueueOrTempTopic():null);
728                if (!strategy.equals(LocatorUtils.property(thisLocator, "queueOrTempQueueOrTempTopic", lhsQueueOrTempQueueOrTempTopic), LocatorUtils.property(thatLocator, "queueOrTempQueueOrTempTopic", rhsQueueOrTempQueueOrTempTopic), lhsQueueOrTempQueueOrTempTopic, rhsQueueOrTempQueueOrTempTopic)) {
729                    return false;
730                }
731            }
732            return true;
733        }
734
735        public boolean equals(Object object) {
736            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
737            return equals(null, null, object, strategy);
738        }
739
740    }
741
742
743    /**
744     * <p>Java class for anonymous complex type.
745     * 
746     * <p>The following schema fragment specifies the expected content contained within this class.
747     * 
748     * <pre>
749     * &lt;complexType>
750     *   &lt;complexContent>
751     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
752     *       &lt;sequence minOccurs="0">
753     *         &lt;any maxOccurs="unbounded" minOccurs="0"/>
754     *       &lt;/sequence>
755     *     &lt;/restriction>
756     *   &lt;/complexContent>
757     * &lt;/complexType>
758     * </pre>
759     * 
760     * 
761     */
762    @XmlAccessorType(XmlAccessType.FIELD)
763    @XmlType(name = "", propOrder = {
764        "any"
765    })
766    public static class Connection
767        implements Equals, HashCode, ToString
768    {
769
770        @XmlAnyElement(lax = true)
771        protected List<Object> any;
772
773        /**
774         * Gets the value of the any property.
775         * 
776         * <p>
777         * This accessor method returns a reference to the live list,
778         * not a snapshot. Therefore any modification you make to the
779         * returned list will be present inside the JAXB object.
780         * This is why there is not a <CODE>set</CODE> method for the any property.
781         * 
782         * <p>
783         * For example, to add a new item, do as follows:
784         * <pre>
785         *    getAny().add(newItem);
786         * </pre>
787         * 
788         * 
789         * <p>
790         * Objects of the following type(s) are allowed in the list
791         * {@link Object }
792         * 
793         * 
794         */
795        public List<Object> getAny() {
796            if (any == null) {
797                any = new ArrayList<Object>();
798            }
799            return this.any;
800        }
801
802        public String toString() {
803            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
804            final StringBuilder buffer = new StringBuilder();
805            append(null, buffer, strategy);
806            return buffer.toString();
807        }
808
809        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
810            strategy.appendStart(locator, this, buffer);
811            appendFields(locator, buffer, strategy);
812            strategy.appendEnd(locator, this, buffer);
813            return buffer;
814        }
815
816        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
817            {
818                List<Object> theAny;
819                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
820                strategy.appendField(locator, this, "any", buffer, theAny);
821            }
822            return buffer;
823        }
824
825        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
826            int currentHashCode = 1;
827            {
828                List<Object> theAny;
829                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
830                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
831            }
832            return currentHashCode;
833        }
834
835        public int hashCode() {
836            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
837            return this.hashCode(null, strategy);
838        }
839
840        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
841            if (!(object instanceof DtoTempTopic.Connection)) {
842                return false;
843            }
844            if (this == object) {
845                return true;
846            }
847            final DtoTempTopic.Connection that = ((DtoTempTopic.Connection) object);
848            {
849                List<Object> lhsAny;
850                lhsAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
851                List<Object> rhsAny;
852                rhsAny = (((that.any!= null)&&(!that.any.isEmpty()))?that.getAny():null);
853                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
854                    return false;
855                }
856            }
857            return true;
858        }
859
860        public boolean equals(Object object) {
861            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
862            return equals(null, null, object, strategy);
863        }
864
865    }
866
867
868    /**
869     * <p>Java class for anonymous complex type.
870     * 
871     * <p>The following schema fragment specifies the expected content contained within this class.
872     * 
873     * <pre>
874     * &lt;complexType>
875     *   &lt;complexContent>
876     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
877     *       &lt;sequence minOccurs="0">
878     *         &lt;any maxOccurs="unbounded" minOccurs="0"/>
879     *       &lt;/sequence>
880     *     &lt;/restriction>
881     *   &lt;/complexContent>
882     * &lt;/complexType>
883     * </pre>
884     * 
885     * 
886     */
887    @XmlAccessorType(XmlAccessType.FIELD)
888    @XmlType(name = "", propOrder = {
889        "any"
890    })
891    public static class Properties
892        implements Equals, HashCode, ToString
893    {
894
895        @XmlAnyElement(lax = true)
896        protected List<Object> any;
897
898        /**
899         * Gets the value of the any property.
900         * 
901         * <p>
902         * This accessor method returns a reference to the live list,
903         * not a snapshot. Therefore any modification you make to the
904         * returned list will be present inside the JAXB object.
905         * This is why there is not a <CODE>set</CODE> method for the any property.
906         * 
907         * <p>
908         * For example, to add a new item, do as follows:
909         * <pre>
910         *    getAny().add(newItem);
911         * </pre>
912         * 
913         * 
914         * <p>
915         * Objects of the following type(s) are allowed in the list
916         * {@link Object }
917         * 
918         * 
919         */
920        public List<Object> getAny() {
921            if (any == null) {
922                any = new ArrayList<Object>();
923            }
924            return this.any;
925        }
926
927        public String toString() {
928            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
929            final StringBuilder buffer = new StringBuilder();
930            append(null, buffer, strategy);
931            return buffer.toString();
932        }
933
934        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
935            strategy.appendStart(locator, this, buffer);
936            appendFields(locator, buffer, strategy);
937            strategy.appendEnd(locator, this, buffer);
938            return buffer;
939        }
940
941        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
942            {
943                List<Object> theAny;
944                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
945                strategy.appendField(locator, this, "any", buffer, theAny);
946            }
947            return buffer;
948        }
949
950        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
951            int currentHashCode = 1;
952            {
953                List<Object> theAny;
954                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
955                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
956            }
957            return currentHashCode;
958        }
959
960        public int hashCode() {
961            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
962            return this.hashCode(null, strategy);
963        }
964
965        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
966            if (!(object instanceof DtoTempTopic.Properties)) {
967                return false;
968            }
969            if (this == object) {
970                return true;
971            }
972            final DtoTempTopic.Properties that = ((DtoTempTopic.Properties) object);
973            {
974                List<Object> lhsAny;
975                lhsAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
976                List<Object> rhsAny;
977                rhsAny = (((that.any!= null)&&(!that.any.isEmpty()))?that.getAny():null);
978                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
979                    return false;
980                }
981            }
982            return true;
983        }
984
985        public boolean equals(Object object) {
986            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
987            return equals(null, null, object, strategy);
988        }
989
990    }
991
992}