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: 2017.07.25 at 01:05:24 PM 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.XmlID;
023import javax.xml.bind.annotation.XmlRootElement;
024import javax.xml.bind.annotation.XmlSchemaType;
025import javax.xml.bind.annotation.XmlType;
026import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
027import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
028import javax.xml.namespace.QName;
029import org.jvnet.jaxb2_commons.lang.Equals;
030import org.jvnet.jaxb2_commons.lang.EqualsStrategy;
031import org.jvnet.jaxb2_commons.lang.HashCode;
032import org.jvnet.jaxb2_commons.lang.HashCodeStrategy;
033import org.jvnet.jaxb2_commons.lang.JAXBHashCodeStrategy;
034import org.jvnet.jaxb2_commons.lang.JAXBToStringStrategy;
035import org.jvnet.jaxb2_commons.lang.ToString;
036import org.jvnet.jaxb2_commons.lang.ToStringStrategy;
037import org.jvnet.jaxb2_commons.locator.ObjectLocator;
038import org.jvnet.jaxb2_commons.locator.util.LocatorUtils;
039
040
041/**
042 * <p>Java class for anonymous complex type.
043 * 
044 * <p>The following schema fragment specifies the expected content contained within this class.
045 * 
046 * <pre>
047 * &lt;complexType>
048 *   &lt;complexContent>
049 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
050 *       &lt;choice maxOccurs="unbounded" minOccurs="0">
051 *         &lt;choice>
052 *           &lt;element name="brokerService" minOccurs="0">
053 *             &lt;complexType>
054 *               &lt;complexContent>
055 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
056 *                   &lt;choice minOccurs="0">
057 *                     &lt;element ref="{http://activemq.apache.org/schema/core}broker"/>
058 *                     &lt;element ref="{http://activemq.apache.org/schema/core}brokerService"/>
059 *                     &lt;any namespace='##other'/>
060 *                   &lt;/choice>
061 *                 &lt;/restriction>
062 *               &lt;/complexContent>
063 *             &lt;/complexType>
064 *           &lt;/element>
065 *           &lt;any namespace='##other' maxOccurs="unbounded" minOccurs="0"/>
066 *         &lt;/choice>
067 *       &lt;/choice>
068 *       &lt;attribute name="brokerService" type="{http://www.w3.org/2001/XMLSchema}string" />
069 *       &lt;attribute name="copyMessage" type="{http://www.w3.org/2001/XMLSchema}boolean" />
070 *       &lt;attribute name="postfix" type="{http://www.w3.org/2001/XMLSchema}string" />
071 *       &lt;attribute name="prefix" type="{http://www.w3.org/2001/XMLSchema}string" />
072 *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
073 *       &lt;anyAttribute processContents='lax' namespace='##other'/>
074 *     &lt;/restriction>
075 *   &lt;/complexContent>
076 * &lt;/complexType>
077 * </pre>
078 * 
079 * 
080 */
081@XmlAccessorType(XmlAccessType.FIELD)
082@XmlType(name = "", propOrder = {
083    "brokerServiceOrAny"
084})
085@XmlRootElement(name = "mirroredQueue")
086public class DtoMirroredQueue implements Equals, HashCode, ToString
087{
088
089    @XmlElementRef(name = "brokerService", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false)
090    @XmlAnyElement(lax = true)
091    protected List<Object> brokerServiceOrAny;
092    @XmlAttribute(name = "brokerService")
093    protected String brokerService;
094    @XmlAttribute(name = "copyMessage")
095    protected Boolean copyMessage;
096    @XmlAttribute(name = "postfix")
097    protected String postfix;
098    @XmlAttribute(name = "prefix")
099    protected String prefix;
100    @XmlAttribute(name = "id")
101    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
102    @XmlID
103    @XmlSchemaType(name = "ID")
104    protected String id;
105    @XmlAnyAttribute
106    private Map<QName, String> otherAttributes = new HashMap<QName, String>();
107
108    /**
109     * Gets the value of the brokerServiceOrAny property.
110     * 
111     * <p>
112     * This accessor method returns a reference to the live list,
113     * not a snapshot. Therefore any modification you make to the
114     * returned list will be present inside the JAXB object.
115     * This is why there is not a <CODE>set</CODE> method for the brokerServiceOrAny property.
116     * 
117     * <p>
118     * For example, to add a new item, do as follows:
119     * <pre>
120     *    getBrokerServiceOrAny().add(newItem);
121     * </pre>
122     * 
123     * 
124     * <p>
125     * Objects of the following type(s) are allowed in the list
126     * {@link Object }
127     * {@link JAXBElement }{@code <}{@link DtoMirroredQueue.BrokerService }{@code >}
128     * 
129     * 
130     */
131    public List<Object> getBrokerServiceOrAny() {
132        if (brokerServiceOrAny == null) {
133            brokerServiceOrAny = new ArrayList<Object>();
134        }
135        return this.brokerServiceOrAny;
136    }
137
138    /**
139     * Gets the value of the brokerService property.
140     * 
141     * @return
142     *     possible object is
143     *     {@link String }
144     *     
145     */
146    public String getBrokerService() {
147        return brokerService;
148    }
149
150    /**
151     * Sets the value of the brokerService property.
152     * 
153     * @param value
154     *     allowed object is
155     *     {@link String }
156     *     
157     */
158    public void setBrokerService(String value) {
159        this.brokerService = value;
160    }
161
162    /**
163     * Gets the value of the copyMessage property.
164     * 
165     * @return
166     *     possible object is
167     *     {@link Boolean }
168     *     
169     */
170    public Boolean isCopyMessage() {
171        return copyMessage;
172    }
173
174    /**
175     * Sets the value of the copyMessage property.
176     * 
177     * @param value
178     *     allowed object is
179     *     {@link Boolean }
180     *     
181     */
182    public void setCopyMessage(Boolean value) {
183        this.copyMessage = value;
184    }
185
186    /**
187     * Gets the value of the postfix property.
188     * 
189     * @return
190     *     possible object is
191     *     {@link String }
192     *     
193     */
194    public String getPostfix() {
195        return postfix;
196    }
197
198    /**
199     * Sets the value of the postfix property.
200     * 
201     * @param value
202     *     allowed object is
203     *     {@link String }
204     *     
205     */
206    public void setPostfix(String value) {
207        this.postfix = value;
208    }
209
210    /**
211     * Gets the value of the prefix property.
212     * 
213     * @return
214     *     possible object is
215     *     {@link String }
216     *     
217     */
218    public String getPrefix() {
219        return prefix;
220    }
221
222    /**
223     * Sets the value of the prefix property.
224     * 
225     * @param value
226     *     allowed object is
227     *     {@link String }
228     *     
229     */
230    public void setPrefix(String value) {
231        this.prefix = value;
232    }
233
234    /**
235     * Gets the value of the id property.
236     * 
237     * @return
238     *     possible object is
239     *     {@link String }
240     *     
241     */
242    public String getId() {
243        return id;
244    }
245
246    /**
247     * Sets the value of the id property.
248     * 
249     * @param value
250     *     allowed object is
251     *     {@link String }
252     *     
253     */
254    public void setId(String value) {
255        this.id = value;
256    }
257
258    /**
259     * Gets a map that contains attributes that aren't bound to any typed property on this class.
260     * 
261     * <p>
262     * the map is keyed by the name of the attribute and 
263     * the value is the string value of the attribute.
264     * 
265     * the map returned by this method is live, and you can add new attribute
266     * by updating the map directly. Because of this design, there's no setter.
267     * 
268     * 
269     * @return
270     *     always non-null
271     */
272    public Map<QName, String> getOtherAttributes() {
273        return otherAttributes;
274    }
275
276    public String toString() {
277        final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
278        final StringBuilder buffer = new StringBuilder();
279        append(null, buffer, strategy);
280        return buffer.toString();
281    }
282
283    public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
284        strategy.appendStart(locator, this, buffer);
285        appendFields(locator, buffer, strategy);
286        strategy.appendEnd(locator, this, buffer);
287        return buffer;
288    }
289
290    public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
291        {
292            List<Object> theBrokerServiceOrAny;
293            theBrokerServiceOrAny = (((this.brokerServiceOrAny!= null)&&(!this.brokerServiceOrAny.isEmpty()))?this.getBrokerServiceOrAny():null);
294            strategy.appendField(locator, this, "brokerServiceOrAny", buffer, theBrokerServiceOrAny);
295        }
296        {
297            String theBrokerService;
298            theBrokerService = this.getBrokerService();
299            strategy.appendField(locator, this, "brokerService", buffer, theBrokerService);
300        }
301        {
302            Boolean theCopyMessage;
303            theCopyMessage = this.isCopyMessage();
304            strategy.appendField(locator, this, "copyMessage", buffer, theCopyMessage);
305        }
306        {
307            String thePostfix;
308            thePostfix = this.getPostfix();
309            strategy.appendField(locator, this, "postfix", buffer, thePostfix);
310        }
311        {
312            String thePrefix;
313            thePrefix = this.getPrefix();
314            strategy.appendField(locator, this, "prefix", buffer, thePrefix);
315        }
316        {
317            String theId;
318            theId = this.getId();
319            strategy.appendField(locator, this, "id", buffer, theId);
320        }
321        return buffer;
322    }
323
324    public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
325        int currentHashCode = 1;
326        {
327            List<Object> theBrokerServiceOrAny;
328            theBrokerServiceOrAny = (((this.brokerServiceOrAny!= null)&&(!this.brokerServiceOrAny.isEmpty()))?this.getBrokerServiceOrAny():null);
329            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "brokerServiceOrAny", theBrokerServiceOrAny), currentHashCode, theBrokerServiceOrAny);
330        }
331        {
332            String theBrokerService;
333            theBrokerService = this.getBrokerService();
334            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "brokerService", theBrokerService), currentHashCode, theBrokerService);
335        }
336        {
337            Boolean theCopyMessage;
338            theCopyMessage = this.isCopyMessage();
339            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "copyMessage", theCopyMessage), currentHashCode, theCopyMessage);
340        }
341        {
342            String thePostfix;
343            thePostfix = this.getPostfix();
344            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "postfix", thePostfix), currentHashCode, thePostfix);
345        }
346        {
347            String thePrefix;
348            thePrefix = this.getPrefix();
349            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "prefix", thePrefix), currentHashCode, thePrefix);
350        }
351        {
352            String theId;
353            theId = this.getId();
354            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "id", theId), currentHashCode, theId);
355        }
356        return currentHashCode;
357    }
358
359    public int hashCode() {
360        final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
361        return this.hashCode(null, strategy);
362    }
363
364    public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
365        if (!(object instanceof DtoMirroredQueue)) {
366            return false;
367        }
368        if (this == object) {
369            return true;
370        }
371        final DtoMirroredQueue that = ((DtoMirroredQueue) object);
372        {
373            List<Object> lhsBrokerServiceOrAny;
374            lhsBrokerServiceOrAny = (((this.brokerServiceOrAny!= null)&&(!this.brokerServiceOrAny.isEmpty()))?this.getBrokerServiceOrAny():null);
375            List<Object> rhsBrokerServiceOrAny;
376            rhsBrokerServiceOrAny = (((that.brokerServiceOrAny!= null)&&(!that.brokerServiceOrAny.isEmpty()))?that.getBrokerServiceOrAny():null);
377            if (!strategy.equals(LocatorUtils.property(thisLocator, "brokerServiceOrAny", lhsBrokerServiceOrAny), LocatorUtils.property(thatLocator, "brokerServiceOrAny", rhsBrokerServiceOrAny), lhsBrokerServiceOrAny, rhsBrokerServiceOrAny)) {
378                return false;
379            }
380        }
381        {
382            String lhsBrokerService;
383            lhsBrokerService = this.getBrokerService();
384            String rhsBrokerService;
385            rhsBrokerService = that.getBrokerService();
386            if (!strategy.equals(LocatorUtils.property(thisLocator, "brokerService", lhsBrokerService), LocatorUtils.property(thatLocator, "brokerService", rhsBrokerService), lhsBrokerService, rhsBrokerService)) {
387                return false;
388            }
389        }
390        {
391            Boolean lhsCopyMessage;
392            lhsCopyMessage = this.isCopyMessage();
393            Boolean rhsCopyMessage;
394            rhsCopyMessage = that.isCopyMessage();
395            if (!strategy.equals(LocatorUtils.property(thisLocator, "copyMessage", lhsCopyMessage), LocatorUtils.property(thatLocator, "copyMessage", rhsCopyMessage), lhsCopyMessage, rhsCopyMessage)) {
396                return false;
397            }
398        }
399        {
400            String lhsPostfix;
401            lhsPostfix = this.getPostfix();
402            String rhsPostfix;
403            rhsPostfix = that.getPostfix();
404            if (!strategy.equals(LocatorUtils.property(thisLocator, "postfix", lhsPostfix), LocatorUtils.property(thatLocator, "postfix", rhsPostfix), lhsPostfix, rhsPostfix)) {
405                return false;
406            }
407        }
408        {
409            String lhsPrefix;
410            lhsPrefix = this.getPrefix();
411            String rhsPrefix;
412            rhsPrefix = that.getPrefix();
413            if (!strategy.equals(LocatorUtils.property(thisLocator, "prefix", lhsPrefix), LocatorUtils.property(thatLocator, "prefix", rhsPrefix), lhsPrefix, rhsPrefix)) {
414                return false;
415            }
416        }
417        {
418            String lhsId;
419            lhsId = this.getId();
420            String rhsId;
421            rhsId = that.getId();
422            if (!strategy.equals(LocatorUtils.property(thisLocator, "id", lhsId), LocatorUtils.property(thatLocator, "id", rhsId), lhsId, rhsId)) {
423                return false;
424            }
425        }
426        return true;
427    }
428
429    public boolean equals(Object object) {
430        final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
431        return equals(null, null, object, strategy);
432    }
433
434
435    /**
436     * <p>Java class for anonymous complex type.
437     * 
438     * <p>The following schema fragment specifies the expected content contained within this class.
439     * 
440     * <pre>
441     * &lt;complexType>
442     *   &lt;complexContent>
443     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
444     *       &lt;choice minOccurs="0">
445     *         &lt;element ref="{http://activemq.apache.org/schema/core}broker"/>
446     *         &lt;element ref="{http://activemq.apache.org/schema/core}brokerService"/>
447     *         &lt;any namespace='##other'/>
448     *       &lt;/choice>
449     *     &lt;/restriction>
450     *   &lt;/complexContent>
451     * &lt;/complexType>
452     * </pre>
453     * 
454     * 
455     */
456    @XmlAccessorType(XmlAccessType.FIELD)
457    @XmlType(name = "", propOrder = {
458        "broker",
459        "brokerService",
460        "any"
461    })
462    public static class BrokerService
463        implements Equals, HashCode, ToString
464    {
465
466        protected DtoBroker broker;
467        protected DtoBrokerService brokerService;
468        @XmlAnyElement(lax = true)
469        protected Object any;
470
471        /**
472         * Gets the value of the broker property.
473         * 
474         * @return
475         *     possible object is
476         *     {@link DtoBroker }
477         *     
478         */
479        public DtoBroker getBroker() {
480            return broker;
481        }
482
483        /**
484         * Sets the value of the broker property.
485         * 
486         * @param value
487         *     allowed object is
488         *     {@link DtoBroker }
489         *     
490         */
491        public void setBroker(DtoBroker value) {
492            this.broker = value;
493        }
494
495        /**
496         * Gets the value of the brokerService property.
497         * 
498         * @return
499         *     possible object is
500         *     {@link DtoBrokerService }
501         *     
502         */
503        public DtoBrokerService getBrokerService() {
504            return brokerService;
505        }
506
507        /**
508         * Sets the value of the brokerService property.
509         * 
510         * @param value
511         *     allowed object is
512         *     {@link DtoBrokerService }
513         *     
514         */
515        public void setBrokerService(DtoBrokerService value) {
516            this.brokerService = value;
517        }
518
519        /**
520         * Gets the value of the any property.
521         * 
522         * @return
523         *     possible object is
524         *     {@link Object }
525         *     
526         */
527        public Object getAny() {
528            return any;
529        }
530
531        /**
532         * Sets the value of the any property.
533         * 
534         * @param value
535         *     allowed object is
536         *     {@link Object }
537         *     
538         */
539        public void setAny(Object value) {
540            this.any = value;
541        }
542
543        public String toString() {
544            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
545            final StringBuilder buffer = new StringBuilder();
546            append(null, buffer, strategy);
547            return buffer.toString();
548        }
549
550        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
551            strategy.appendStart(locator, this, buffer);
552            appendFields(locator, buffer, strategy);
553            strategy.appendEnd(locator, this, buffer);
554            return buffer;
555        }
556
557        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
558            {
559                DtoBroker theBroker;
560                theBroker = this.getBroker();
561                strategy.appendField(locator, this, "broker", buffer, theBroker);
562            }
563            {
564                DtoBrokerService theBrokerService;
565                theBrokerService = this.getBrokerService();
566                strategy.appendField(locator, this, "brokerService", buffer, theBrokerService);
567            }
568            {
569                Object theAny;
570                theAny = this.getAny();
571                strategy.appendField(locator, this, "any", buffer, theAny);
572            }
573            return buffer;
574        }
575
576        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
577            int currentHashCode = 1;
578            {
579                DtoBroker theBroker;
580                theBroker = this.getBroker();
581                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "broker", theBroker), currentHashCode, theBroker);
582            }
583            {
584                DtoBrokerService theBrokerService;
585                theBrokerService = this.getBrokerService();
586                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "brokerService", theBrokerService), currentHashCode, theBrokerService);
587            }
588            {
589                Object theAny;
590                theAny = this.getAny();
591                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
592            }
593            return currentHashCode;
594        }
595
596        public int hashCode() {
597            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
598            return this.hashCode(null, strategy);
599        }
600
601        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
602            if (!(object instanceof DtoMirroredQueue.BrokerService)) {
603                return false;
604            }
605            if (this == object) {
606                return true;
607            }
608            final DtoMirroredQueue.BrokerService that = ((DtoMirroredQueue.BrokerService) object);
609            {
610                DtoBroker lhsBroker;
611                lhsBroker = this.getBroker();
612                DtoBroker rhsBroker;
613                rhsBroker = that.getBroker();
614                if (!strategy.equals(LocatorUtils.property(thisLocator, "broker", lhsBroker), LocatorUtils.property(thatLocator, "broker", rhsBroker), lhsBroker, rhsBroker)) {
615                    return false;
616                }
617            }
618            {
619                DtoBrokerService lhsBrokerService;
620                lhsBrokerService = this.getBrokerService();
621                DtoBrokerService rhsBrokerService;
622                rhsBrokerService = that.getBrokerService();
623                if (!strategy.equals(LocatorUtils.property(thisLocator, "brokerService", lhsBrokerService), LocatorUtils.property(thatLocator, "brokerService", rhsBrokerService), lhsBrokerService, rhsBrokerService)) {
624                    return false;
625                }
626            }
627            {
628                Object lhsAny;
629                lhsAny = this.getAny();
630                Object rhsAny;
631                rhsAny = that.getAny();
632                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
633                    return false;
634                }
635            }
636            return true;
637        }
638
639        public boolean equals(Object object) {
640            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
641            return equals(null, null, object, strategy);
642        }
643
644    }
645
646}