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