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: 2020.08.16 at 01:13:55 AM EDT 
006//
007
008
009package org.apache.activemq.schema.core;
010
011import java.math.BigInteger;
012import java.util.ArrayList;
013import java.util.HashMap;
014import java.util.List;
015import java.util.Map;
016import javax.xml.bind.JAXBElement;
017import javax.xml.bind.annotation.XmlAccessType;
018import javax.xml.bind.annotation.XmlAccessorType;
019import javax.xml.bind.annotation.XmlAnyAttribute;
020import javax.xml.bind.annotation.XmlAnyElement;
021import javax.xml.bind.annotation.XmlAttribute;
022import javax.xml.bind.annotation.XmlElementRef;
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="deadLetterQueue" minOccurs="0">
054 *             &lt;complexType>
055 *               &lt;complexContent>
056 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
057 *                   &lt;choice 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;any namespace='##other' maxOccurs="unbounded" minOccurs="0"/>
069 *         &lt;/choice>
070 *       &lt;/choice>
071 *       &lt;attribute name="deadLetterQueue" type="{http://www.w3.org/2001/XMLSchema}string" />
072 *       &lt;attribute name="enableAudit" type="{http://www.w3.org/2001/XMLSchema}boolean" />
073 *       &lt;attribute name="expiration" type="{http://www.w3.org/2001/XMLSchema}long" />
074 *       &lt;attribute name="maxAuditDepth" type="{http://www.w3.org/2001/XMLSchema}integer" />
075 *       &lt;attribute name="maxProducersToAudit" type="{http://www.w3.org/2001/XMLSchema}integer" />
076 *       &lt;attribute name="processExpired" type="{http://www.w3.org/2001/XMLSchema}boolean" />
077 *       &lt;attribute name="processNonPersistent" type="{http://www.w3.org/2001/XMLSchema}boolean" />
078 *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
079 *       &lt;anyAttribute processContents='lax' namespace='##other'/>
080 *     &lt;/restriction>
081 *   &lt;/complexContent>
082 * &lt;/complexType>
083 * </pre>
084 * 
085 * 
086 */
087@XmlAccessorType(XmlAccessType.FIELD)
088@XmlType(name = "", propOrder = {
089    "deadLetterQueueOrAny"
090})
091@XmlRootElement(name = "sharedDeadLetterStrategy")
092public class DtoSharedDeadLetterStrategy
093    implements Equals, HashCode, ToString
094{
095
096    @XmlElementRef(name = "deadLetterQueue", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false)
097    @XmlAnyElement(lax = true)
098    protected List<Object> deadLetterQueueOrAny;
099    @XmlAttribute(name = "deadLetterQueue")
100    protected String deadLetterQueue;
101    @XmlAttribute(name = "enableAudit")
102    protected Boolean enableAudit;
103    @XmlAttribute(name = "expiration")
104    protected Long expiration;
105    @XmlAttribute(name = "maxAuditDepth")
106    protected BigInteger maxAuditDepth;
107    @XmlAttribute(name = "maxProducersToAudit")
108    protected BigInteger maxProducersToAudit;
109    @XmlAttribute(name = "processExpired")
110    protected Boolean processExpired;
111    @XmlAttribute(name = "processNonPersistent")
112    protected Boolean processNonPersistent;
113    @XmlAttribute(name = "id")
114    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
115    @XmlID
116    @XmlSchemaType(name = "ID")
117    protected String id;
118    @XmlAnyAttribute
119    private Map<QName, String> otherAttributes = new HashMap<QName, String>();
120
121    /**
122     * Gets the value of the deadLetterQueueOrAny property.
123     * 
124     * <p>
125     * This accessor method returns a reference to the live list,
126     * not a snapshot. Therefore any modification you make to the
127     * returned list will be present inside the JAXB object.
128     * This is why there is not a <CODE>set</CODE> method for the deadLetterQueueOrAny property.
129     * 
130     * <p>
131     * For example, to add a new item, do as follows:
132     * <pre>
133     *    getDeadLetterQueueOrAny().add(newItem);
134     * </pre>
135     * 
136     * 
137     * <p>
138     * Objects of the following type(s) are allowed in the list
139     * {@link Object }
140     * {@link JAXBElement }{@code <}{@link DtoSharedDeadLetterStrategy.DeadLetterQueue }{@code >}
141     * 
142     * 
143     */
144    public List<Object> getDeadLetterQueueOrAny() {
145        if (deadLetterQueueOrAny == null) {
146            deadLetterQueueOrAny = new ArrayList<Object>();
147        }
148        return this.deadLetterQueueOrAny;
149    }
150
151    /**
152     * Gets the value of the deadLetterQueue property.
153     * 
154     * @return
155     *     possible object is
156     *     {@link String }
157     *     
158     */
159    public String getDeadLetterQueue() {
160        return deadLetterQueue;
161    }
162
163    /**
164     * Sets the value of the deadLetterQueue property.
165     * 
166     * @param value
167     *     allowed object is
168     *     {@link String }
169     *     
170     */
171    public void setDeadLetterQueue(String value) {
172        this.deadLetterQueue = value;
173    }
174
175    /**
176     * Gets the value of the enableAudit property.
177     * 
178     * @return
179     *     possible object is
180     *     {@link Boolean }
181     *     
182     */
183    public Boolean isEnableAudit() {
184        return enableAudit;
185    }
186
187    /**
188     * Sets the value of the enableAudit property.
189     * 
190     * @param value
191     *     allowed object is
192     *     {@link Boolean }
193     *     
194     */
195    public void setEnableAudit(Boolean value) {
196        this.enableAudit = value;
197    }
198
199    /**
200     * Gets the value of the expiration property.
201     * 
202     * @return
203     *     possible object is
204     *     {@link Long }
205     *     
206     */
207    public Long getExpiration() {
208        return expiration;
209    }
210
211    /**
212     * Sets the value of the expiration property.
213     * 
214     * @param value
215     *     allowed object is
216     *     {@link Long }
217     *     
218     */
219    public void setExpiration(Long value) {
220        this.expiration = value;
221    }
222
223    /**
224     * Gets the value of the maxAuditDepth property.
225     * 
226     * @return
227     *     possible object is
228     *     {@link BigInteger }
229     *     
230     */
231    public BigInteger getMaxAuditDepth() {
232        return maxAuditDepth;
233    }
234
235    /**
236     * Sets the value of the maxAuditDepth property.
237     * 
238     * @param value
239     *     allowed object is
240     *     {@link BigInteger }
241     *     
242     */
243    public void setMaxAuditDepth(BigInteger value) {
244        this.maxAuditDepth = value;
245    }
246
247    /**
248     * Gets the value of the maxProducersToAudit property.
249     * 
250     * @return
251     *     possible object is
252     *     {@link BigInteger }
253     *     
254     */
255    public BigInteger getMaxProducersToAudit() {
256        return maxProducersToAudit;
257    }
258
259    /**
260     * Sets the value of the maxProducersToAudit property.
261     * 
262     * @param value
263     *     allowed object is
264     *     {@link BigInteger }
265     *     
266     */
267    public void setMaxProducersToAudit(BigInteger value) {
268        this.maxProducersToAudit = value;
269    }
270
271    /**
272     * Gets the value of the processExpired property.
273     * 
274     * @return
275     *     possible object is
276     *     {@link Boolean }
277     *     
278     */
279    public Boolean isProcessExpired() {
280        return processExpired;
281    }
282
283    /**
284     * Sets the value of the processExpired property.
285     * 
286     * @param value
287     *     allowed object is
288     *     {@link Boolean }
289     *     
290     */
291    public void setProcessExpired(Boolean value) {
292        this.processExpired = value;
293    }
294
295    /**
296     * Gets the value of the processNonPersistent property.
297     * 
298     * @return
299     *     possible object is
300     *     {@link Boolean }
301     *     
302     */
303    public Boolean isProcessNonPersistent() {
304        return processNonPersistent;
305    }
306
307    /**
308     * Sets the value of the processNonPersistent property.
309     * 
310     * @param value
311     *     allowed object is
312     *     {@link Boolean }
313     *     
314     */
315    public void setProcessNonPersistent(Boolean value) {
316        this.processNonPersistent = value;
317    }
318
319    /**
320     * Gets the value of the id property.
321     * 
322     * @return
323     *     possible object is
324     *     {@link String }
325     *     
326     */
327    public String getId() {
328        return id;
329    }
330
331    /**
332     * Sets the value of the id property.
333     * 
334     * @param value
335     *     allowed object is
336     *     {@link String }
337     *     
338     */
339    public void setId(String value) {
340        this.id = value;
341    }
342
343    /**
344     * Gets a map that contains attributes that aren't bound to any typed property on this class.
345     * 
346     * <p>
347     * the map is keyed by the name of the attribute and 
348     * the value is the string value of the attribute.
349     * 
350     * the map returned by this method is live, and you can add new attribute
351     * by updating the map directly. Because of this design, there's no setter.
352     * 
353     * 
354     * @return
355     *     always non-null
356     */
357    public Map<QName, String> getOtherAttributes() {
358        return otherAttributes;
359    }
360
361    public String toString() {
362        final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
363        final StringBuilder buffer = new StringBuilder();
364        append(null, buffer, strategy);
365        return buffer.toString();
366    }
367
368    public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
369        strategy.appendStart(locator, this, buffer);
370        appendFields(locator, buffer, strategy);
371        strategy.appendEnd(locator, this, buffer);
372        return buffer;
373    }
374
375    public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
376        {
377            List<Object> theDeadLetterQueueOrAny;
378            theDeadLetterQueueOrAny = (((this.deadLetterQueueOrAny!= null)&&(!this.deadLetterQueueOrAny.isEmpty()))?this.getDeadLetterQueueOrAny():null);
379            strategy.appendField(locator, this, "deadLetterQueueOrAny", buffer, theDeadLetterQueueOrAny);
380        }
381        {
382            String theDeadLetterQueue;
383            theDeadLetterQueue = this.getDeadLetterQueue();
384            strategy.appendField(locator, this, "deadLetterQueue", buffer, theDeadLetterQueue);
385        }
386        {
387            Boolean theEnableAudit;
388            theEnableAudit = this.isEnableAudit();
389            strategy.appendField(locator, this, "enableAudit", buffer, theEnableAudit);
390        }
391        {
392            Long theExpiration;
393            theExpiration = this.getExpiration();
394            strategy.appendField(locator, this, "expiration", buffer, theExpiration);
395        }
396        {
397            BigInteger theMaxAuditDepth;
398            theMaxAuditDepth = this.getMaxAuditDepth();
399            strategy.appendField(locator, this, "maxAuditDepth", buffer, theMaxAuditDepth);
400        }
401        {
402            BigInteger theMaxProducersToAudit;
403            theMaxProducersToAudit = this.getMaxProducersToAudit();
404            strategy.appendField(locator, this, "maxProducersToAudit", buffer, theMaxProducersToAudit);
405        }
406        {
407            Boolean theProcessExpired;
408            theProcessExpired = this.isProcessExpired();
409            strategy.appendField(locator, this, "processExpired", buffer, theProcessExpired);
410        }
411        {
412            Boolean theProcessNonPersistent;
413            theProcessNonPersistent = this.isProcessNonPersistent();
414            strategy.appendField(locator, this, "processNonPersistent", buffer, theProcessNonPersistent);
415        }
416        {
417            String theId;
418            theId = this.getId();
419            strategy.appendField(locator, this, "id", buffer, theId);
420        }
421        return buffer;
422    }
423
424    public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
425        int currentHashCode = 1;
426        {
427            List<Object> theDeadLetterQueueOrAny;
428            theDeadLetterQueueOrAny = (((this.deadLetterQueueOrAny!= null)&&(!this.deadLetterQueueOrAny.isEmpty()))?this.getDeadLetterQueueOrAny():null);
429            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "deadLetterQueueOrAny", theDeadLetterQueueOrAny), currentHashCode, theDeadLetterQueueOrAny);
430        }
431        {
432            String theDeadLetterQueue;
433            theDeadLetterQueue = this.getDeadLetterQueue();
434            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "deadLetterQueue", theDeadLetterQueue), currentHashCode, theDeadLetterQueue);
435        }
436        {
437            Boolean theEnableAudit;
438            theEnableAudit = this.isEnableAudit();
439            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "enableAudit", theEnableAudit), currentHashCode, theEnableAudit);
440        }
441        {
442            Long theExpiration;
443            theExpiration = this.getExpiration();
444            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "expiration", theExpiration), currentHashCode, theExpiration);
445        }
446        {
447            BigInteger theMaxAuditDepth;
448            theMaxAuditDepth = this.getMaxAuditDepth();
449            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "maxAuditDepth", theMaxAuditDepth), currentHashCode, theMaxAuditDepth);
450        }
451        {
452            BigInteger theMaxProducersToAudit;
453            theMaxProducersToAudit = this.getMaxProducersToAudit();
454            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "maxProducersToAudit", theMaxProducersToAudit), currentHashCode, theMaxProducersToAudit);
455        }
456        {
457            Boolean theProcessExpired;
458            theProcessExpired = this.isProcessExpired();
459            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "processExpired", theProcessExpired), currentHashCode, theProcessExpired);
460        }
461        {
462            Boolean theProcessNonPersistent;
463            theProcessNonPersistent = this.isProcessNonPersistent();
464            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "processNonPersistent", theProcessNonPersistent), currentHashCode, theProcessNonPersistent);
465        }
466        {
467            String theId;
468            theId = this.getId();
469            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "id", theId), currentHashCode, theId);
470        }
471        return currentHashCode;
472    }
473
474    public int hashCode() {
475        final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
476        return this.hashCode(null, strategy);
477    }
478
479    public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
480        if (!(object instanceof DtoSharedDeadLetterStrategy)) {
481            return false;
482        }
483        if (this == object) {
484            return true;
485        }
486        final DtoSharedDeadLetterStrategy that = ((DtoSharedDeadLetterStrategy) object);
487        {
488            List<Object> lhsDeadLetterQueueOrAny;
489            lhsDeadLetterQueueOrAny = (((this.deadLetterQueueOrAny!= null)&&(!this.deadLetterQueueOrAny.isEmpty()))?this.getDeadLetterQueueOrAny():null);
490            List<Object> rhsDeadLetterQueueOrAny;
491            rhsDeadLetterQueueOrAny = (((that.deadLetterQueueOrAny!= null)&&(!that.deadLetterQueueOrAny.isEmpty()))?that.getDeadLetterQueueOrAny():null);
492            if (!strategy.equals(LocatorUtils.property(thisLocator, "deadLetterQueueOrAny", lhsDeadLetterQueueOrAny), LocatorUtils.property(thatLocator, "deadLetterQueueOrAny", rhsDeadLetterQueueOrAny), lhsDeadLetterQueueOrAny, rhsDeadLetterQueueOrAny)) {
493                return false;
494            }
495        }
496        {
497            String lhsDeadLetterQueue;
498            lhsDeadLetterQueue = this.getDeadLetterQueue();
499            String rhsDeadLetterQueue;
500            rhsDeadLetterQueue = that.getDeadLetterQueue();
501            if (!strategy.equals(LocatorUtils.property(thisLocator, "deadLetterQueue", lhsDeadLetterQueue), LocatorUtils.property(thatLocator, "deadLetterQueue", rhsDeadLetterQueue), lhsDeadLetterQueue, rhsDeadLetterQueue)) {
502                return false;
503            }
504        }
505        {
506            Boolean lhsEnableAudit;
507            lhsEnableAudit = this.isEnableAudit();
508            Boolean rhsEnableAudit;
509            rhsEnableAudit = that.isEnableAudit();
510            if (!strategy.equals(LocatorUtils.property(thisLocator, "enableAudit", lhsEnableAudit), LocatorUtils.property(thatLocator, "enableAudit", rhsEnableAudit), lhsEnableAudit, rhsEnableAudit)) {
511                return false;
512            }
513        }
514        {
515            Long lhsExpiration;
516            lhsExpiration = this.getExpiration();
517            Long rhsExpiration;
518            rhsExpiration = that.getExpiration();
519            if (!strategy.equals(LocatorUtils.property(thisLocator, "expiration", lhsExpiration), LocatorUtils.property(thatLocator, "expiration", rhsExpiration), lhsExpiration, rhsExpiration)) {
520                return false;
521            }
522        }
523        {
524            BigInteger lhsMaxAuditDepth;
525            lhsMaxAuditDepth = this.getMaxAuditDepth();
526            BigInteger rhsMaxAuditDepth;
527            rhsMaxAuditDepth = that.getMaxAuditDepth();
528            if (!strategy.equals(LocatorUtils.property(thisLocator, "maxAuditDepth", lhsMaxAuditDepth), LocatorUtils.property(thatLocator, "maxAuditDepth", rhsMaxAuditDepth), lhsMaxAuditDepth, rhsMaxAuditDepth)) {
529                return false;
530            }
531        }
532        {
533            BigInteger lhsMaxProducersToAudit;
534            lhsMaxProducersToAudit = this.getMaxProducersToAudit();
535            BigInteger rhsMaxProducersToAudit;
536            rhsMaxProducersToAudit = that.getMaxProducersToAudit();
537            if (!strategy.equals(LocatorUtils.property(thisLocator, "maxProducersToAudit", lhsMaxProducersToAudit), LocatorUtils.property(thatLocator, "maxProducersToAudit", rhsMaxProducersToAudit), lhsMaxProducersToAudit, rhsMaxProducersToAudit)) {
538                return false;
539            }
540        }
541        {
542            Boolean lhsProcessExpired;
543            lhsProcessExpired = this.isProcessExpired();
544            Boolean rhsProcessExpired;
545            rhsProcessExpired = that.isProcessExpired();
546            if (!strategy.equals(LocatorUtils.property(thisLocator, "processExpired", lhsProcessExpired), LocatorUtils.property(thatLocator, "processExpired", rhsProcessExpired), lhsProcessExpired, rhsProcessExpired)) {
547                return false;
548            }
549        }
550        {
551            Boolean lhsProcessNonPersistent;
552            lhsProcessNonPersistent = this.isProcessNonPersistent();
553            Boolean rhsProcessNonPersistent;
554            rhsProcessNonPersistent = that.isProcessNonPersistent();
555            if (!strategy.equals(LocatorUtils.property(thisLocator, "processNonPersistent", lhsProcessNonPersistent), LocatorUtils.property(thatLocator, "processNonPersistent", rhsProcessNonPersistent), lhsProcessNonPersistent, rhsProcessNonPersistent)) {
556                return false;
557            }
558        }
559        {
560            String lhsId;
561            lhsId = this.getId();
562            String rhsId;
563            rhsId = that.getId();
564            if (!strategy.equals(LocatorUtils.property(thisLocator, "id", lhsId), LocatorUtils.property(thatLocator, "id", rhsId), lhsId, rhsId)) {
565                return false;
566            }
567        }
568        return true;
569    }
570
571    public boolean equals(Object object) {
572        final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
573        return equals(null, null, object, strategy);
574    }
575
576
577    /**
578     * <p>Java class for anonymous complex type.
579     * 
580     * <p>The following schema fragment specifies the expected content contained within this class.
581     * 
582     * <pre>
583     * &lt;complexType>
584     *   &lt;complexContent>
585     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
586     *       &lt;choice minOccurs="0">
587     *         &lt;element ref="{http://activemq.apache.org/schema/core}queue"/>
588     *         &lt;element ref="{http://activemq.apache.org/schema/core}tempQueue"/>
589     *         &lt;element ref="{http://activemq.apache.org/schema/core}tempTopic"/>
590     *         &lt;element ref="{http://activemq.apache.org/schema/core}topic"/>
591     *         &lt;any namespace='##other'/>
592     *       &lt;/choice>
593     *     &lt;/restriction>
594     *   &lt;/complexContent>
595     * &lt;/complexType>
596     * </pre>
597     * 
598     * 
599     */
600    @XmlAccessorType(XmlAccessType.FIELD)
601    @XmlType(name = "", propOrder = {
602        "queue",
603        "tempQueue",
604        "tempTopic",
605        "topic",
606        "any"
607    })
608    public static class DeadLetterQueue
609        implements Equals, HashCode, ToString
610    {
611
612        protected DtoQueue queue;
613        protected DtoTempQueue tempQueue;
614        protected DtoTempTopic tempTopic;
615        protected DtoTopic topic;
616        @XmlAnyElement(lax = true)
617        protected Object any;
618
619        /**
620         * Gets the value of the queue property.
621         * 
622         * @return
623         *     possible object is
624         *     {@link DtoQueue }
625         *     
626         */
627        public DtoQueue getQueue() {
628            return queue;
629        }
630
631        /**
632         * Sets the value of the queue property.
633         * 
634         * @param value
635         *     allowed object is
636         *     {@link DtoQueue }
637         *     
638         */
639        public void setQueue(DtoQueue value) {
640            this.queue = value;
641        }
642
643        /**
644         * Gets the value of the tempQueue property.
645         * 
646         * @return
647         *     possible object is
648         *     {@link DtoTempQueue }
649         *     
650         */
651        public DtoTempQueue getTempQueue() {
652            return tempQueue;
653        }
654
655        /**
656         * Sets the value of the tempQueue property.
657         * 
658         * @param value
659         *     allowed object is
660         *     {@link DtoTempQueue }
661         *     
662         */
663        public void setTempQueue(DtoTempQueue value) {
664            this.tempQueue = value;
665        }
666
667        /**
668         * Gets the value of the tempTopic property.
669         * 
670         * @return
671         *     possible object is
672         *     {@link DtoTempTopic }
673         *     
674         */
675        public DtoTempTopic getTempTopic() {
676            return tempTopic;
677        }
678
679        /**
680         * Sets the value of the tempTopic property.
681         * 
682         * @param value
683         *     allowed object is
684         *     {@link DtoTempTopic }
685         *     
686         */
687        public void setTempTopic(DtoTempTopic value) {
688            this.tempTopic = value;
689        }
690
691        /**
692         * Gets the value of the topic property.
693         * 
694         * @return
695         *     possible object is
696         *     {@link DtoTopic }
697         *     
698         */
699        public DtoTopic getTopic() {
700            return topic;
701        }
702
703        /**
704         * Sets the value of the topic property.
705         * 
706         * @param value
707         *     allowed object is
708         *     {@link DtoTopic }
709         *     
710         */
711        public void setTopic(DtoTopic value) {
712            this.topic = value;
713        }
714
715        /**
716         * Gets the value of the any property.
717         * 
718         * @return
719         *     possible object is
720         *     {@link Object }
721         *     
722         */
723        public Object getAny() {
724            return any;
725        }
726
727        /**
728         * Sets the value of the any property.
729         * 
730         * @param value
731         *     allowed object is
732         *     {@link Object }
733         *     
734         */
735        public void setAny(Object value) {
736            this.any = value;
737        }
738
739        public String toString() {
740            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
741            final StringBuilder buffer = new StringBuilder();
742            append(null, buffer, strategy);
743            return buffer.toString();
744        }
745
746        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
747            strategy.appendStart(locator, this, buffer);
748            appendFields(locator, buffer, strategy);
749            strategy.appendEnd(locator, this, buffer);
750            return buffer;
751        }
752
753        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
754            {
755                DtoQueue theQueue;
756                theQueue = this.getQueue();
757                strategy.appendField(locator, this, "queue", buffer, theQueue);
758            }
759            {
760                DtoTempQueue theTempQueue;
761                theTempQueue = this.getTempQueue();
762                strategy.appendField(locator, this, "tempQueue", buffer, theTempQueue);
763            }
764            {
765                DtoTempTopic theTempTopic;
766                theTempTopic = this.getTempTopic();
767                strategy.appendField(locator, this, "tempTopic", buffer, theTempTopic);
768            }
769            {
770                DtoTopic theTopic;
771                theTopic = this.getTopic();
772                strategy.appendField(locator, this, "topic", buffer, theTopic);
773            }
774            {
775                Object theAny;
776                theAny = this.getAny();
777                strategy.appendField(locator, this, "any", buffer, theAny);
778            }
779            return buffer;
780        }
781
782        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
783            int currentHashCode = 1;
784            {
785                DtoQueue theQueue;
786                theQueue = this.getQueue();
787                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "queue", theQueue), currentHashCode, theQueue);
788            }
789            {
790                DtoTempQueue theTempQueue;
791                theTempQueue = this.getTempQueue();
792                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "tempQueue", theTempQueue), currentHashCode, theTempQueue);
793            }
794            {
795                DtoTempTopic theTempTopic;
796                theTempTopic = this.getTempTopic();
797                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "tempTopic", theTempTopic), currentHashCode, theTempTopic);
798            }
799            {
800                DtoTopic theTopic;
801                theTopic = this.getTopic();
802                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "topic", theTopic), currentHashCode, theTopic);
803            }
804            {
805                Object theAny;
806                theAny = this.getAny();
807                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
808            }
809            return currentHashCode;
810        }
811
812        public int hashCode() {
813            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
814            return this.hashCode(null, strategy);
815        }
816
817        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
818            if (!(object instanceof DtoSharedDeadLetterStrategy.DeadLetterQueue)) {
819                return false;
820            }
821            if (this == object) {
822                return true;
823            }
824            final DtoSharedDeadLetterStrategy.DeadLetterQueue that = ((DtoSharedDeadLetterStrategy.DeadLetterQueue) object);
825            {
826                DtoQueue lhsQueue;
827                lhsQueue = this.getQueue();
828                DtoQueue rhsQueue;
829                rhsQueue = that.getQueue();
830                if (!strategy.equals(LocatorUtils.property(thisLocator, "queue", lhsQueue), LocatorUtils.property(thatLocator, "queue", rhsQueue), lhsQueue, rhsQueue)) {
831                    return false;
832                }
833            }
834            {
835                DtoTempQueue lhsTempQueue;
836                lhsTempQueue = this.getTempQueue();
837                DtoTempQueue rhsTempQueue;
838                rhsTempQueue = that.getTempQueue();
839                if (!strategy.equals(LocatorUtils.property(thisLocator, "tempQueue", lhsTempQueue), LocatorUtils.property(thatLocator, "tempQueue", rhsTempQueue), lhsTempQueue, rhsTempQueue)) {
840                    return false;
841                }
842            }
843            {
844                DtoTempTopic lhsTempTopic;
845                lhsTempTopic = this.getTempTopic();
846                DtoTempTopic rhsTempTopic;
847                rhsTempTopic = that.getTempTopic();
848                if (!strategy.equals(LocatorUtils.property(thisLocator, "tempTopic", lhsTempTopic), LocatorUtils.property(thatLocator, "tempTopic", rhsTempTopic), lhsTempTopic, rhsTempTopic)) {
849                    return false;
850                }
851            }
852            {
853                DtoTopic lhsTopic;
854                lhsTopic = this.getTopic();
855                DtoTopic rhsTopic;
856                rhsTopic = that.getTopic();
857                if (!strategy.equals(LocatorUtils.property(thisLocator, "topic", lhsTopic), LocatorUtils.property(thatLocator, "topic", rhsTopic), lhsTopic, rhsTopic)) {
858                    return false;
859                }
860            }
861            {
862                Object lhsAny;
863                lhsAny = this.getAny();
864                Object rhsAny;
865                rhsAny = that.getAny();
866                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
867                    return false;
868                }
869            }
870            return true;
871        }
872
873        public boolean equals(Object object) {
874            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
875            return equals(null, null, object, strategy);
876        }
877
878    }
879
880}