001//
002// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.10-b140310.1920 
003// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
004// Any modifications to this file will be lost upon recompilation of the source schema. 
005// Generated on: 2019.03.15 at 09:00:08 AM EDT 
006//
007
008
009package org.apache.activemq.schema.core;
010
011import java.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.XmlElementRefs;
024import javax.xml.bind.annotation.XmlID;
025import javax.xml.bind.annotation.XmlRootElement;
026import javax.xml.bind.annotation.XmlSchemaType;
027import javax.xml.bind.annotation.XmlType;
028import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
029import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
030import javax.xml.namespace.QName;
031import org.jvnet.jaxb2_commons.lang.Equals;
032import org.jvnet.jaxb2_commons.lang.EqualsStrategy;
033import org.jvnet.jaxb2_commons.lang.HashCode;
034import org.jvnet.jaxb2_commons.lang.HashCodeStrategy;
035import org.jvnet.jaxb2_commons.lang.JAXBHashCodeStrategy;
036import org.jvnet.jaxb2_commons.lang.JAXBToStringStrategy;
037import org.jvnet.jaxb2_commons.lang.ToString;
038import org.jvnet.jaxb2_commons.lang.ToStringStrategy;
039import org.jvnet.jaxb2_commons.locator.ObjectLocator;
040import org.jvnet.jaxb2_commons.locator.util.LocatorUtils;
041
042
043/**
044 * <p>Java class for anonymous complex type.
045 * 
046 * <p>The following schema fragment specifies the expected content contained within this class.
047 * 
048 * <pre>
049 * &lt;complexType>
050 *   &lt;complexContent>
051 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
052 *       &lt;choice maxOccurs="unbounded" minOccurs="0">
053 *         &lt;choice>
054 *           &lt;element name="address" minOccurs="0">
055 *             &lt;complexType>
056 *               &lt;complexContent>
057 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
058 *                   &lt;sequence minOccurs="0">
059 *                     &lt;any maxOccurs="unbounded" minOccurs="0"/>
060 *                   &lt;/sequence>
061 *                 &lt;/restriction>
062 *               &lt;/complexContent>
063 *             &lt;/complexType>
064 *           &lt;/element>
065 *           &lt;element name="adminConnectionContext" minOccurs="0">
066 *             &lt;complexType>
067 *               &lt;complexContent>
068 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
069 *                   &lt;sequence minOccurs="0">
070 *                     &lt;any maxOccurs="unbounded" minOccurs="0"/>
071 *                   &lt;/sequence>
072 *                 &lt;/restriction>
073 *               &lt;/complexContent>
074 *             &lt;/complexType>
075 *           &lt;/element>
076 *           &lt;element name="next" minOccurs="0">
077 *             &lt;complexType>
078 *               &lt;complexContent>
079 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
080 *                   &lt;choice minOccurs="0">
081 *                     &lt;element ref="{http://activemq.apache.org/schema/core}destinationPathSeparatorPlugin"/>
082 *                     &lt;element ref="{http://activemq.apache.org/schema/core}destinationsPlugin"/>
083 *                     &lt;element ref="{http://activemq.apache.org/schema/core}forcePersistencyModeBroker"/>
084 *                     &lt;element ref="{http://activemq.apache.org/schema/core}loggingBrokerPlugin"/>
085 *                     &lt;element ref="{http://activemq.apache.org/schema/core}multicastTraceBrokerPlugin"/>
086 *                     &lt;element ref="{http://activemq.apache.org/schema/core}redeliveryPlugin"/>
087 *                     &lt;element ref="{http://activemq.apache.org/schema/core}timeStampingBrokerPlugin"/>
088 *                     &lt;element ref="{http://activemq.apache.org/schema/core}traceBrokerPathPlugin"/>
089 *                     &lt;element ref="{http://activemq.apache.org/schema/core}udpTraceBrokerPlugin"/>
090 *                     &lt;any namespace='##other'/>
091 *                   &lt;/choice>
092 *                 &lt;/restriction>
093 *               &lt;/complexContent>
094 *             &lt;/complexType>
095 *           &lt;/element>
096 *           &lt;element name="wireFormat" minOccurs="0">
097 *             &lt;complexType>
098 *               &lt;complexContent>
099 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
100 *                   &lt;sequence minOccurs="0">
101 *                     &lt;any maxOccurs="unbounded" minOccurs="0"/>
102 *                   &lt;/sequence>
103 *                 &lt;/restriction>
104 *               &lt;/complexContent>
105 *             &lt;/complexType>
106 *           &lt;/element>
107 *           &lt;element name="wireFormatFactory" minOccurs="0">
108 *             &lt;complexType>
109 *               &lt;complexContent>
110 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
111 *                   &lt;sequence minOccurs="0">
112 *                     &lt;any maxOccurs="unbounded" minOccurs="0"/>
113 *                   &lt;/sequence>
114 *                 &lt;/restriction>
115 *               &lt;/complexContent>
116 *             &lt;/complexType>
117 *           &lt;/element>
118 *           &lt;any namespace='##other' maxOccurs="unbounded" minOccurs="0"/>
119 *         &lt;/choice>
120 *       &lt;/choice>
121 *       &lt;attribute name="address" type="{http://www.w3.org/2001/XMLSchema}string" />
122 *       &lt;attribute name="adminConnectionContext" type="{http://www.w3.org/2001/XMLSchema}string" />
123 *       &lt;attribute name="broadcast" type="{http://www.w3.org/2001/XMLSchema}boolean" />
124 *       &lt;attribute name="destination" type="{http://www.w3.org/2001/XMLSchema}string" />
125 *       &lt;attribute name="maxTraceDatagramSize" type="{http://www.w3.org/2001/XMLSchema}integer" />
126 *       &lt;attribute name="next" type="{http://www.w3.org/2001/XMLSchema}string" />
127 *       &lt;attribute name="wireFormat" type="{http://www.w3.org/2001/XMLSchema}string" />
128 *       &lt;attribute name="wireFormatFactory" type="{http://www.w3.org/2001/XMLSchema}string" />
129 *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
130 *       &lt;anyAttribute processContents='lax' namespace='##other'/>
131 *     &lt;/restriction>
132 *   &lt;/complexContent>
133 * &lt;/complexType>
134 * </pre>
135 * 
136 * 
137 */
138@XmlAccessorType(XmlAccessType.FIELD)
139@XmlType(name = "", propOrder = {
140    "addressOrAdminConnectionContextOrNext"
141})
142@XmlRootElement(name = "udpTraceBrokerPlugin")
143public class DtoUdpTraceBrokerPlugin implements Equals, HashCode, ToString
144{
145
146    @XmlElementRefs({
147        @XmlElementRef(name = "adminConnectionContext", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false),
148        @XmlElementRef(name = "wireFormat", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false),
149        @XmlElementRef(name = "wireFormatFactory", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false),
150        @XmlElementRef(name = "address", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false),
151        @XmlElementRef(name = "next", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false)
152    })
153    @XmlAnyElement(lax = true)
154    protected List<Object> addressOrAdminConnectionContextOrNext;
155    @XmlAttribute(name = "address")
156    protected String address;
157    @XmlAttribute(name = "adminConnectionContext")
158    protected String adminConnectionContext;
159    @XmlAttribute(name = "broadcast")
160    protected Boolean broadcast;
161    @XmlAttribute(name = "destination")
162    protected String destination;
163    @XmlAttribute(name = "maxTraceDatagramSize")
164    protected BigInteger maxTraceDatagramSize;
165    @XmlAttribute(name = "next")
166    protected String next;
167    @XmlAttribute(name = "wireFormat")
168    protected String wireFormat;
169    @XmlAttribute(name = "wireFormatFactory")
170    protected String wireFormatFactory;
171    @XmlAttribute(name = "id")
172    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
173    @XmlID
174    @XmlSchemaType(name = "ID")
175    protected String id;
176    @XmlAnyAttribute
177    private Map<QName, String> otherAttributes = new HashMap<QName, String>();
178
179    /**
180     * Gets the value of the addressOrAdminConnectionContextOrNext property.
181     * 
182     * <p>
183     * This accessor method returns a reference to the live list,
184     * not a snapshot. Therefore any modification you make to the
185     * returned list will be present inside the JAXB object.
186     * This is why there is not a <CODE>set</CODE> method for the addressOrAdminConnectionContextOrNext property.
187     * 
188     * <p>
189     * For example, to add a new item, do as follows:
190     * <pre>
191     *    getAddressOrAdminConnectionContextOrNext().add(newItem);
192     * </pre>
193     * 
194     * 
195     * <p>
196     * Objects of the following type(s) are allowed in the list
197     * {@link JAXBElement }{@code <}{@link DtoUdpTraceBrokerPlugin.AdminConnectionContext }{@code >}
198     * {@link JAXBElement }{@code <}{@link DtoUdpTraceBrokerPlugin.WireFormat }{@code >}
199     * {@link JAXBElement }{@code <}{@link DtoUdpTraceBrokerPlugin.WireFormatFactory }{@code >}
200     * {@link Object }
201     * {@link JAXBElement }{@code <}{@link DtoUdpTraceBrokerPlugin.Address }{@code >}
202     * {@link JAXBElement }{@code <}{@link DtoUdpTraceBrokerPlugin.Next }{@code >}
203     * 
204     * 
205     */
206    public List<Object> getAddressOrAdminConnectionContextOrNext() {
207        if (addressOrAdminConnectionContextOrNext == null) {
208            addressOrAdminConnectionContextOrNext = new ArrayList<Object>();
209        }
210        return this.addressOrAdminConnectionContextOrNext;
211    }
212
213    /**
214     * Gets the value of the address property.
215     * 
216     * @return
217     *     possible object is
218     *     {@link String }
219     *     
220     */
221    public String getAddress() {
222        return address;
223    }
224
225    /**
226     * Sets the value of the address property.
227     * 
228     * @param value
229     *     allowed object is
230     *     {@link String }
231     *     
232     */
233    public void setAddress(String value) {
234        this.address = value;
235    }
236
237    /**
238     * Gets the value of the adminConnectionContext property.
239     * 
240     * @return
241     *     possible object is
242     *     {@link String }
243     *     
244     */
245    public String getAdminConnectionContext() {
246        return adminConnectionContext;
247    }
248
249    /**
250     * Sets the value of the adminConnectionContext property.
251     * 
252     * @param value
253     *     allowed object is
254     *     {@link String }
255     *     
256     */
257    public void setAdminConnectionContext(String value) {
258        this.adminConnectionContext = value;
259    }
260
261    /**
262     * Gets the value of the broadcast property.
263     * 
264     * @return
265     *     possible object is
266     *     {@link Boolean }
267     *     
268     */
269    public Boolean isBroadcast() {
270        return broadcast;
271    }
272
273    /**
274     * Sets the value of the broadcast property.
275     * 
276     * @param value
277     *     allowed object is
278     *     {@link Boolean }
279     *     
280     */
281    public void setBroadcast(Boolean value) {
282        this.broadcast = value;
283    }
284
285    /**
286     * Gets the value of the destination property.
287     * 
288     * @return
289     *     possible object is
290     *     {@link String }
291     *     
292     */
293    public String getDestination() {
294        return destination;
295    }
296
297    /**
298     * Sets the value of the destination property.
299     * 
300     * @param value
301     *     allowed object is
302     *     {@link String }
303     *     
304     */
305    public void setDestination(String value) {
306        this.destination = value;
307    }
308
309    /**
310     * Gets the value of the maxTraceDatagramSize property.
311     * 
312     * @return
313     *     possible object is
314     *     {@link BigInteger }
315     *     
316     */
317    public BigInteger getMaxTraceDatagramSize() {
318        return maxTraceDatagramSize;
319    }
320
321    /**
322     * Sets the value of the maxTraceDatagramSize property.
323     * 
324     * @param value
325     *     allowed object is
326     *     {@link BigInteger }
327     *     
328     */
329    public void setMaxTraceDatagramSize(BigInteger value) {
330        this.maxTraceDatagramSize = value;
331    }
332
333    /**
334     * Gets the value of the next property.
335     * 
336     * @return
337     *     possible object is
338     *     {@link String }
339     *     
340     */
341    public String getNext() {
342        return next;
343    }
344
345    /**
346     * Sets the value of the next property.
347     * 
348     * @param value
349     *     allowed object is
350     *     {@link String }
351     *     
352     */
353    public void setNext(String value) {
354        this.next = value;
355    }
356
357    /**
358     * Gets the value of the wireFormat property.
359     * 
360     * @return
361     *     possible object is
362     *     {@link String }
363     *     
364     */
365    public String getWireFormat() {
366        return wireFormat;
367    }
368
369    /**
370     * Sets the value of the wireFormat property.
371     * 
372     * @param value
373     *     allowed object is
374     *     {@link String }
375     *     
376     */
377    public void setWireFormat(String value) {
378        this.wireFormat = value;
379    }
380
381    /**
382     * Gets the value of the wireFormatFactory property.
383     * 
384     * @return
385     *     possible object is
386     *     {@link String }
387     *     
388     */
389    public String getWireFormatFactory() {
390        return wireFormatFactory;
391    }
392
393    /**
394     * Sets the value of the wireFormatFactory property.
395     * 
396     * @param value
397     *     allowed object is
398     *     {@link String }
399     *     
400     */
401    public void setWireFormatFactory(String value) {
402        this.wireFormatFactory = value;
403    }
404
405    /**
406     * Gets the value of the id property.
407     * 
408     * @return
409     *     possible object is
410     *     {@link String }
411     *     
412     */
413    public String getId() {
414        return id;
415    }
416
417    /**
418     * Sets the value of the id property.
419     * 
420     * @param value
421     *     allowed object is
422     *     {@link String }
423     *     
424     */
425    public void setId(String value) {
426        this.id = value;
427    }
428
429    /**
430     * Gets a map that contains attributes that aren't bound to any typed property on this class.
431     * 
432     * <p>
433     * the map is keyed by the name of the attribute and 
434     * the value is the string value of the attribute.
435     * 
436     * the map returned by this method is live, and you can add new attribute
437     * by updating the map directly. Because of this design, there's no setter.
438     * 
439     * 
440     * @return
441     *     always non-null
442     */
443    public Map<QName, String> getOtherAttributes() {
444        return otherAttributes;
445    }
446
447    public String toString() {
448        final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
449        final StringBuilder buffer = new StringBuilder();
450        append(null, buffer, strategy);
451        return buffer.toString();
452    }
453
454    public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
455        strategy.appendStart(locator, this, buffer);
456        appendFields(locator, buffer, strategy);
457        strategy.appendEnd(locator, this, buffer);
458        return buffer;
459    }
460
461    public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
462        {
463            List<Object> theAddressOrAdminConnectionContextOrNext;
464            theAddressOrAdminConnectionContextOrNext = (((this.addressOrAdminConnectionContextOrNext!= null)&&(!this.addressOrAdminConnectionContextOrNext.isEmpty()))?this.getAddressOrAdminConnectionContextOrNext():null);
465            strategy.appendField(locator, this, "addressOrAdminConnectionContextOrNext", buffer, theAddressOrAdminConnectionContextOrNext);
466        }
467        {
468            String theAddress;
469            theAddress = this.getAddress();
470            strategy.appendField(locator, this, "address", buffer, theAddress);
471        }
472        {
473            String theAdminConnectionContext;
474            theAdminConnectionContext = this.getAdminConnectionContext();
475            strategy.appendField(locator, this, "adminConnectionContext", buffer, theAdminConnectionContext);
476        }
477        {
478            Boolean theBroadcast;
479            theBroadcast = this.isBroadcast();
480            strategy.appendField(locator, this, "broadcast", buffer, theBroadcast);
481        }
482        {
483            String theDestination;
484            theDestination = this.getDestination();
485            strategy.appendField(locator, this, "destination", buffer, theDestination);
486        }
487        {
488            BigInteger theMaxTraceDatagramSize;
489            theMaxTraceDatagramSize = this.getMaxTraceDatagramSize();
490            strategy.appendField(locator, this, "maxTraceDatagramSize", buffer, theMaxTraceDatagramSize);
491        }
492        {
493            String theNext;
494            theNext = this.getNext();
495            strategy.appendField(locator, this, "next", buffer, theNext);
496        }
497        {
498            String theWireFormat;
499            theWireFormat = this.getWireFormat();
500            strategy.appendField(locator, this, "wireFormat", buffer, theWireFormat);
501        }
502        {
503            String theWireFormatFactory;
504            theWireFormatFactory = this.getWireFormatFactory();
505            strategy.appendField(locator, this, "wireFormatFactory", buffer, theWireFormatFactory);
506        }
507        {
508            String theId;
509            theId = this.getId();
510            strategy.appendField(locator, this, "id", buffer, theId);
511        }
512        return buffer;
513    }
514
515    public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
516        int currentHashCode = 1;
517        {
518            List<Object> theAddressOrAdminConnectionContextOrNext;
519            theAddressOrAdminConnectionContextOrNext = (((this.addressOrAdminConnectionContextOrNext!= null)&&(!this.addressOrAdminConnectionContextOrNext.isEmpty()))?this.getAddressOrAdminConnectionContextOrNext():null);
520            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "addressOrAdminConnectionContextOrNext", theAddressOrAdminConnectionContextOrNext), currentHashCode, theAddressOrAdminConnectionContextOrNext);
521        }
522        {
523            String theAddress;
524            theAddress = this.getAddress();
525            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "address", theAddress), currentHashCode, theAddress);
526        }
527        {
528            String theAdminConnectionContext;
529            theAdminConnectionContext = this.getAdminConnectionContext();
530            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "adminConnectionContext", theAdminConnectionContext), currentHashCode, theAdminConnectionContext);
531        }
532        {
533            Boolean theBroadcast;
534            theBroadcast = this.isBroadcast();
535            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "broadcast", theBroadcast), currentHashCode, theBroadcast);
536        }
537        {
538            String theDestination;
539            theDestination = this.getDestination();
540            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "destination", theDestination), currentHashCode, theDestination);
541        }
542        {
543            BigInteger theMaxTraceDatagramSize;
544            theMaxTraceDatagramSize = this.getMaxTraceDatagramSize();
545            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "maxTraceDatagramSize", theMaxTraceDatagramSize), currentHashCode, theMaxTraceDatagramSize);
546        }
547        {
548            String theNext;
549            theNext = this.getNext();
550            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "next", theNext), currentHashCode, theNext);
551        }
552        {
553            String theWireFormat;
554            theWireFormat = this.getWireFormat();
555            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "wireFormat", theWireFormat), currentHashCode, theWireFormat);
556        }
557        {
558            String theWireFormatFactory;
559            theWireFormatFactory = this.getWireFormatFactory();
560            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "wireFormatFactory", theWireFormatFactory), currentHashCode, theWireFormatFactory);
561        }
562        {
563            String theId;
564            theId = this.getId();
565            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "id", theId), currentHashCode, theId);
566        }
567        return currentHashCode;
568    }
569
570    public int hashCode() {
571        final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
572        return this.hashCode(null, strategy);
573    }
574
575    public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
576        if (!(object instanceof DtoUdpTraceBrokerPlugin)) {
577            return false;
578        }
579        if (this == object) {
580            return true;
581        }
582        final DtoUdpTraceBrokerPlugin that = ((DtoUdpTraceBrokerPlugin) object);
583        {
584            List<Object> lhsAddressOrAdminConnectionContextOrNext;
585            lhsAddressOrAdminConnectionContextOrNext = (((this.addressOrAdminConnectionContextOrNext!= null)&&(!this.addressOrAdminConnectionContextOrNext.isEmpty()))?this.getAddressOrAdminConnectionContextOrNext():null);
586            List<Object> rhsAddressOrAdminConnectionContextOrNext;
587            rhsAddressOrAdminConnectionContextOrNext = (((that.addressOrAdminConnectionContextOrNext!= null)&&(!that.addressOrAdminConnectionContextOrNext.isEmpty()))?that.getAddressOrAdminConnectionContextOrNext():null);
588            if (!strategy.equals(LocatorUtils.property(thisLocator, "addressOrAdminConnectionContextOrNext", lhsAddressOrAdminConnectionContextOrNext), LocatorUtils.property(thatLocator, "addressOrAdminConnectionContextOrNext", rhsAddressOrAdminConnectionContextOrNext), lhsAddressOrAdminConnectionContextOrNext, rhsAddressOrAdminConnectionContextOrNext)) {
589                return false;
590            }
591        }
592        {
593            String lhsAddress;
594            lhsAddress = this.getAddress();
595            String rhsAddress;
596            rhsAddress = that.getAddress();
597            if (!strategy.equals(LocatorUtils.property(thisLocator, "address", lhsAddress), LocatorUtils.property(thatLocator, "address", rhsAddress), lhsAddress, rhsAddress)) {
598                return false;
599            }
600        }
601        {
602            String lhsAdminConnectionContext;
603            lhsAdminConnectionContext = this.getAdminConnectionContext();
604            String rhsAdminConnectionContext;
605            rhsAdminConnectionContext = that.getAdminConnectionContext();
606            if (!strategy.equals(LocatorUtils.property(thisLocator, "adminConnectionContext", lhsAdminConnectionContext), LocatorUtils.property(thatLocator, "adminConnectionContext", rhsAdminConnectionContext), lhsAdminConnectionContext, rhsAdminConnectionContext)) {
607                return false;
608            }
609        }
610        {
611            Boolean lhsBroadcast;
612            lhsBroadcast = this.isBroadcast();
613            Boolean rhsBroadcast;
614            rhsBroadcast = that.isBroadcast();
615            if (!strategy.equals(LocatorUtils.property(thisLocator, "broadcast", lhsBroadcast), LocatorUtils.property(thatLocator, "broadcast", rhsBroadcast), lhsBroadcast, rhsBroadcast)) {
616                return false;
617            }
618        }
619        {
620            String lhsDestination;
621            lhsDestination = this.getDestination();
622            String rhsDestination;
623            rhsDestination = that.getDestination();
624            if (!strategy.equals(LocatorUtils.property(thisLocator, "destination", lhsDestination), LocatorUtils.property(thatLocator, "destination", rhsDestination), lhsDestination, rhsDestination)) {
625                return false;
626            }
627        }
628        {
629            BigInteger lhsMaxTraceDatagramSize;
630            lhsMaxTraceDatagramSize = this.getMaxTraceDatagramSize();
631            BigInteger rhsMaxTraceDatagramSize;
632            rhsMaxTraceDatagramSize = that.getMaxTraceDatagramSize();
633            if (!strategy.equals(LocatorUtils.property(thisLocator, "maxTraceDatagramSize", lhsMaxTraceDatagramSize), LocatorUtils.property(thatLocator, "maxTraceDatagramSize", rhsMaxTraceDatagramSize), lhsMaxTraceDatagramSize, rhsMaxTraceDatagramSize)) {
634                return false;
635            }
636        }
637        {
638            String lhsNext;
639            lhsNext = this.getNext();
640            String rhsNext;
641            rhsNext = that.getNext();
642            if (!strategy.equals(LocatorUtils.property(thisLocator, "next", lhsNext), LocatorUtils.property(thatLocator, "next", rhsNext), lhsNext, rhsNext)) {
643                return false;
644            }
645        }
646        {
647            String lhsWireFormat;
648            lhsWireFormat = this.getWireFormat();
649            String rhsWireFormat;
650            rhsWireFormat = that.getWireFormat();
651            if (!strategy.equals(LocatorUtils.property(thisLocator, "wireFormat", lhsWireFormat), LocatorUtils.property(thatLocator, "wireFormat", rhsWireFormat), lhsWireFormat, rhsWireFormat)) {
652                return false;
653            }
654        }
655        {
656            String lhsWireFormatFactory;
657            lhsWireFormatFactory = this.getWireFormatFactory();
658            String rhsWireFormatFactory;
659            rhsWireFormatFactory = that.getWireFormatFactory();
660            if (!strategy.equals(LocatorUtils.property(thisLocator, "wireFormatFactory", lhsWireFormatFactory), LocatorUtils.property(thatLocator, "wireFormatFactory", rhsWireFormatFactory), lhsWireFormatFactory, rhsWireFormatFactory)) {
661                return false;
662            }
663        }
664        {
665            String lhsId;
666            lhsId = this.getId();
667            String rhsId;
668            rhsId = that.getId();
669            if (!strategy.equals(LocatorUtils.property(thisLocator, "id", lhsId), LocatorUtils.property(thatLocator, "id", rhsId), lhsId, rhsId)) {
670                return false;
671            }
672        }
673        return true;
674    }
675
676    public boolean equals(Object object) {
677        final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
678        return equals(null, null, object, strategy);
679    }
680
681
682    /**
683     * <p>Java class for anonymous complex type.
684     * 
685     * <p>The following schema fragment specifies the expected content contained within this class.
686     * 
687     * <pre>
688     * &lt;complexType>
689     *   &lt;complexContent>
690     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
691     *       &lt;sequence minOccurs="0">
692     *         &lt;any maxOccurs="unbounded" minOccurs="0"/>
693     *       &lt;/sequence>
694     *     &lt;/restriction>
695     *   &lt;/complexContent>
696     * &lt;/complexType>
697     * </pre>
698     * 
699     * 
700     */
701    @XmlAccessorType(XmlAccessType.FIELD)
702    @XmlType(name = "", propOrder = {
703        "any"
704    })
705    public static class Address
706        implements Equals, HashCode, ToString
707    {
708
709        @XmlAnyElement(lax = true)
710        protected List<Object> any;
711
712        /**
713         * Gets the value of the any property.
714         * 
715         * <p>
716         * This accessor method returns a reference to the live list,
717         * not a snapshot. Therefore any modification you make to the
718         * returned list will be present inside the JAXB object.
719         * This is why there is not a <CODE>set</CODE> method for the any property.
720         * 
721         * <p>
722         * For example, to add a new item, do as follows:
723         * <pre>
724         *    getAny().add(newItem);
725         * </pre>
726         * 
727         * 
728         * <p>
729         * Objects of the following type(s) are allowed in the list
730         * {@link Object }
731         * 
732         * 
733         */
734        public List<Object> getAny() {
735            if (any == null) {
736                any = new ArrayList<Object>();
737            }
738            return this.any;
739        }
740
741        public String toString() {
742            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
743            final StringBuilder buffer = new StringBuilder();
744            append(null, buffer, strategy);
745            return buffer.toString();
746        }
747
748        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
749            strategy.appendStart(locator, this, buffer);
750            appendFields(locator, buffer, strategy);
751            strategy.appendEnd(locator, this, buffer);
752            return buffer;
753        }
754
755        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
756            {
757                List<Object> theAny;
758                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
759                strategy.appendField(locator, this, "any", buffer, theAny);
760            }
761            return buffer;
762        }
763
764        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
765            int currentHashCode = 1;
766            {
767                List<Object> theAny;
768                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
769                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
770            }
771            return currentHashCode;
772        }
773
774        public int hashCode() {
775            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
776            return this.hashCode(null, strategy);
777        }
778
779        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
780            if (!(object instanceof DtoUdpTraceBrokerPlugin.Address)) {
781                return false;
782            }
783            if (this == object) {
784                return true;
785            }
786            final DtoUdpTraceBrokerPlugin.Address that = ((DtoUdpTraceBrokerPlugin.Address) object);
787            {
788                List<Object> lhsAny;
789                lhsAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
790                List<Object> rhsAny;
791                rhsAny = (((that.any!= null)&&(!that.any.isEmpty()))?that.getAny():null);
792                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
793                    return false;
794                }
795            }
796            return true;
797        }
798
799        public boolean equals(Object object) {
800            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
801            return equals(null, null, object, strategy);
802        }
803
804    }
805
806
807    /**
808     * <p>Java class for anonymous complex type.
809     * 
810     * <p>The following schema fragment specifies the expected content contained within this class.
811     * 
812     * <pre>
813     * &lt;complexType>
814     *   &lt;complexContent>
815     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
816     *       &lt;sequence minOccurs="0">
817     *         &lt;any maxOccurs="unbounded" minOccurs="0"/>
818     *       &lt;/sequence>
819     *     &lt;/restriction>
820     *   &lt;/complexContent>
821     * &lt;/complexType>
822     * </pre>
823     * 
824     * 
825     */
826    @XmlAccessorType(XmlAccessType.FIELD)
827    @XmlType(name = "", propOrder = {
828        "any"
829    })
830    public static class AdminConnectionContext
831        implements Equals, HashCode, ToString
832    {
833
834        @XmlAnyElement(lax = true)
835        protected List<Object> any;
836
837        /**
838         * Gets the value of the any property.
839         * 
840         * <p>
841         * This accessor method returns a reference to the live list,
842         * not a snapshot. Therefore any modification you make to the
843         * returned list will be present inside the JAXB object.
844         * This is why there is not a <CODE>set</CODE> method for the any property.
845         * 
846         * <p>
847         * For example, to add a new item, do as follows:
848         * <pre>
849         *    getAny().add(newItem);
850         * </pre>
851         * 
852         * 
853         * <p>
854         * Objects of the following type(s) are allowed in the list
855         * {@link Object }
856         * 
857         * 
858         */
859        public List<Object> getAny() {
860            if (any == null) {
861                any = new ArrayList<Object>();
862            }
863            return this.any;
864        }
865
866        public String toString() {
867            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
868            final StringBuilder buffer = new StringBuilder();
869            append(null, buffer, strategy);
870            return buffer.toString();
871        }
872
873        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
874            strategy.appendStart(locator, this, buffer);
875            appendFields(locator, buffer, strategy);
876            strategy.appendEnd(locator, this, buffer);
877            return buffer;
878        }
879
880        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
881            {
882                List<Object> theAny;
883                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
884                strategy.appendField(locator, this, "any", buffer, theAny);
885            }
886            return buffer;
887        }
888
889        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
890            int currentHashCode = 1;
891            {
892                List<Object> theAny;
893                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
894                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
895            }
896            return currentHashCode;
897        }
898
899        public int hashCode() {
900            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
901            return this.hashCode(null, strategy);
902        }
903
904        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
905            if (!(object instanceof DtoUdpTraceBrokerPlugin.AdminConnectionContext)) {
906                return false;
907            }
908            if (this == object) {
909                return true;
910            }
911            final DtoUdpTraceBrokerPlugin.AdminConnectionContext that = ((DtoUdpTraceBrokerPlugin.AdminConnectionContext) object);
912            {
913                List<Object> lhsAny;
914                lhsAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
915                List<Object> rhsAny;
916                rhsAny = (((that.any!= null)&&(!that.any.isEmpty()))?that.getAny():null);
917                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
918                    return false;
919                }
920            }
921            return true;
922        }
923
924        public boolean equals(Object object) {
925            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
926            return equals(null, null, object, strategy);
927        }
928
929    }
930
931
932    /**
933     * <p>Java class for anonymous complex type.
934     * 
935     * <p>The following schema fragment specifies the expected content contained within this class.
936     * 
937     * <pre>
938     * &lt;complexType>
939     *   &lt;complexContent>
940     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
941     *       &lt;choice minOccurs="0">
942     *         &lt;element ref="{http://activemq.apache.org/schema/core}destinationPathSeparatorPlugin"/>
943     *         &lt;element ref="{http://activemq.apache.org/schema/core}destinationsPlugin"/>
944     *         &lt;element ref="{http://activemq.apache.org/schema/core}forcePersistencyModeBroker"/>
945     *         &lt;element ref="{http://activemq.apache.org/schema/core}loggingBrokerPlugin"/>
946     *         &lt;element ref="{http://activemq.apache.org/schema/core}multicastTraceBrokerPlugin"/>
947     *         &lt;element ref="{http://activemq.apache.org/schema/core}redeliveryPlugin"/>
948     *         &lt;element ref="{http://activemq.apache.org/schema/core}timeStampingBrokerPlugin"/>
949     *         &lt;element ref="{http://activemq.apache.org/schema/core}traceBrokerPathPlugin"/>
950     *         &lt;element ref="{http://activemq.apache.org/schema/core}udpTraceBrokerPlugin"/>
951     *         &lt;any namespace='##other'/>
952     *       &lt;/choice>
953     *     &lt;/restriction>
954     *   &lt;/complexContent>
955     * &lt;/complexType>
956     * </pre>
957     * 
958     * 
959     */
960    @XmlAccessorType(XmlAccessType.FIELD)
961    @XmlType(name = "", propOrder = {
962        "destinationPathSeparatorPlugin",
963        "destinationsPlugin",
964        "forcePersistencyModeBroker",
965        "loggingBrokerPlugin",
966        "multicastTraceBrokerPlugin",
967        "redeliveryPlugin",
968        "timeStampingBrokerPlugin",
969        "traceBrokerPathPlugin",
970        "udpTraceBrokerPlugin",
971        "any"
972    })
973    public static class Next
974        implements Equals, HashCode, ToString
975    {
976
977        protected DtoDestinationPathSeparatorPlugin destinationPathSeparatorPlugin;
978        protected DtoDestinationsPlugin destinationsPlugin;
979        protected DtoForcePersistencyModeBroker forcePersistencyModeBroker;
980        protected DtoLoggingBrokerPlugin loggingBrokerPlugin;
981        protected DtoMulticastTraceBrokerPlugin multicastTraceBrokerPlugin;
982        protected DtoRedeliveryPlugin redeliveryPlugin;
983        protected DtoTimeStampingBrokerPlugin timeStampingBrokerPlugin;
984        protected DtoTraceBrokerPathPlugin traceBrokerPathPlugin;
985        protected DtoUdpTraceBrokerPlugin udpTraceBrokerPlugin;
986        @XmlAnyElement(lax = true)
987        protected Object any;
988
989        /**
990         * Gets the value of the destinationPathSeparatorPlugin property.
991         * 
992         * @return
993         *     possible object is
994         *     {@link DtoDestinationPathSeparatorPlugin }
995         *     
996         */
997        public DtoDestinationPathSeparatorPlugin getDestinationPathSeparatorPlugin() {
998            return destinationPathSeparatorPlugin;
999        }
1000
1001        /**
1002         * Sets the value of the destinationPathSeparatorPlugin property.
1003         * 
1004         * @param value
1005         *     allowed object is
1006         *     {@link DtoDestinationPathSeparatorPlugin }
1007         *     
1008         */
1009        public void setDestinationPathSeparatorPlugin(DtoDestinationPathSeparatorPlugin value) {
1010            this.destinationPathSeparatorPlugin = value;
1011        }
1012
1013        /**
1014         * Gets the value of the destinationsPlugin property.
1015         * 
1016         * @return
1017         *     possible object is
1018         *     {@link DtoDestinationsPlugin }
1019         *     
1020         */
1021        public DtoDestinationsPlugin getDestinationsPlugin() {
1022            return destinationsPlugin;
1023        }
1024
1025        /**
1026         * Sets the value of the destinationsPlugin property.
1027         * 
1028         * @param value
1029         *     allowed object is
1030         *     {@link DtoDestinationsPlugin }
1031         *     
1032         */
1033        public void setDestinationsPlugin(DtoDestinationsPlugin value) {
1034            this.destinationsPlugin = value;
1035        }
1036
1037        /**
1038         * Gets the value of the forcePersistencyModeBroker property.
1039         * 
1040         * @return
1041         *     possible object is
1042         *     {@link DtoForcePersistencyModeBroker }
1043         *     
1044         */
1045        public DtoForcePersistencyModeBroker getForcePersistencyModeBroker() {
1046            return forcePersistencyModeBroker;
1047        }
1048
1049        /**
1050         * Sets the value of the forcePersistencyModeBroker property.
1051         * 
1052         * @param value
1053         *     allowed object is
1054         *     {@link DtoForcePersistencyModeBroker }
1055         *     
1056         */
1057        public void setForcePersistencyModeBroker(DtoForcePersistencyModeBroker value) {
1058            this.forcePersistencyModeBroker = value;
1059        }
1060
1061        /**
1062         * Gets the value of the loggingBrokerPlugin property.
1063         * 
1064         * @return
1065         *     possible object is
1066         *     {@link DtoLoggingBrokerPlugin }
1067         *     
1068         */
1069        public DtoLoggingBrokerPlugin getLoggingBrokerPlugin() {
1070            return loggingBrokerPlugin;
1071        }
1072
1073        /**
1074         * Sets the value of the loggingBrokerPlugin property.
1075         * 
1076         * @param value
1077         *     allowed object is
1078         *     {@link DtoLoggingBrokerPlugin }
1079         *     
1080         */
1081        public void setLoggingBrokerPlugin(DtoLoggingBrokerPlugin value) {
1082            this.loggingBrokerPlugin = value;
1083        }
1084
1085        /**
1086         * Gets the value of the multicastTraceBrokerPlugin property.
1087         * 
1088         * @return
1089         *     possible object is
1090         *     {@link DtoMulticastTraceBrokerPlugin }
1091         *     
1092         */
1093        public DtoMulticastTraceBrokerPlugin getMulticastTraceBrokerPlugin() {
1094            return multicastTraceBrokerPlugin;
1095        }
1096
1097        /**
1098         * Sets the value of the multicastTraceBrokerPlugin property.
1099         * 
1100         * @param value
1101         *     allowed object is
1102         *     {@link DtoMulticastTraceBrokerPlugin }
1103         *     
1104         */
1105        public void setMulticastTraceBrokerPlugin(DtoMulticastTraceBrokerPlugin value) {
1106            this.multicastTraceBrokerPlugin = value;
1107        }
1108
1109        /**
1110         * Gets the value of the redeliveryPlugin property.
1111         * 
1112         * @return
1113         *     possible object is
1114         *     {@link DtoRedeliveryPlugin }
1115         *     
1116         */
1117        public DtoRedeliveryPlugin getRedeliveryPlugin() {
1118            return redeliveryPlugin;
1119        }
1120
1121        /**
1122         * Sets the value of the redeliveryPlugin property.
1123         * 
1124         * @param value
1125         *     allowed object is
1126         *     {@link DtoRedeliveryPlugin }
1127         *     
1128         */
1129        public void setRedeliveryPlugin(DtoRedeliveryPlugin value) {
1130            this.redeliveryPlugin = value;
1131        }
1132
1133        /**
1134         * Gets the value of the timeStampingBrokerPlugin property.
1135         * 
1136         * @return
1137         *     possible object is
1138         *     {@link DtoTimeStampingBrokerPlugin }
1139         *     
1140         */
1141        public DtoTimeStampingBrokerPlugin getTimeStampingBrokerPlugin() {
1142            return timeStampingBrokerPlugin;
1143        }
1144
1145        /**
1146         * Sets the value of the timeStampingBrokerPlugin property.
1147         * 
1148         * @param value
1149         *     allowed object is
1150         *     {@link DtoTimeStampingBrokerPlugin }
1151         *     
1152         */
1153        public void setTimeStampingBrokerPlugin(DtoTimeStampingBrokerPlugin value) {
1154            this.timeStampingBrokerPlugin = value;
1155        }
1156
1157        /**
1158         * Gets the value of the traceBrokerPathPlugin property.
1159         * 
1160         * @return
1161         *     possible object is
1162         *     {@link DtoTraceBrokerPathPlugin }
1163         *     
1164         */
1165        public DtoTraceBrokerPathPlugin getTraceBrokerPathPlugin() {
1166            return traceBrokerPathPlugin;
1167        }
1168
1169        /**
1170         * Sets the value of the traceBrokerPathPlugin property.
1171         * 
1172         * @param value
1173         *     allowed object is
1174         *     {@link DtoTraceBrokerPathPlugin }
1175         *     
1176         */
1177        public void setTraceBrokerPathPlugin(DtoTraceBrokerPathPlugin value) {
1178            this.traceBrokerPathPlugin = value;
1179        }
1180
1181        /**
1182         * Gets the value of the udpTraceBrokerPlugin property.
1183         * 
1184         * @return
1185         *     possible object is
1186         *     {@link DtoUdpTraceBrokerPlugin }
1187         *     
1188         */
1189        public DtoUdpTraceBrokerPlugin getUdpTraceBrokerPlugin() {
1190            return udpTraceBrokerPlugin;
1191        }
1192
1193        /**
1194         * Sets the value of the udpTraceBrokerPlugin property.
1195         * 
1196         * @param value
1197         *     allowed object is
1198         *     {@link DtoUdpTraceBrokerPlugin }
1199         *     
1200         */
1201        public void setUdpTraceBrokerPlugin(DtoUdpTraceBrokerPlugin value) {
1202            this.udpTraceBrokerPlugin = value;
1203        }
1204
1205        /**
1206         * Gets the value of the any property.
1207         * 
1208         * @return
1209         *     possible object is
1210         *     {@link Object }
1211         *     
1212         */
1213        public Object getAny() {
1214            return any;
1215        }
1216
1217        /**
1218         * Sets the value of the any property.
1219         * 
1220         * @param value
1221         *     allowed object is
1222         *     {@link Object }
1223         *     
1224         */
1225        public void setAny(Object value) {
1226            this.any = value;
1227        }
1228
1229        public String toString() {
1230            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
1231            final StringBuilder buffer = new StringBuilder();
1232            append(null, buffer, strategy);
1233            return buffer.toString();
1234        }
1235
1236        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
1237            strategy.appendStart(locator, this, buffer);
1238            appendFields(locator, buffer, strategy);
1239            strategy.appendEnd(locator, this, buffer);
1240            return buffer;
1241        }
1242
1243        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
1244            {
1245                DtoDestinationPathSeparatorPlugin theDestinationPathSeparatorPlugin;
1246                theDestinationPathSeparatorPlugin = this.getDestinationPathSeparatorPlugin();
1247                strategy.appendField(locator, this, "destinationPathSeparatorPlugin", buffer, theDestinationPathSeparatorPlugin);
1248            }
1249            {
1250                DtoDestinationsPlugin theDestinationsPlugin;
1251                theDestinationsPlugin = this.getDestinationsPlugin();
1252                strategy.appendField(locator, this, "destinationsPlugin", buffer, theDestinationsPlugin);
1253            }
1254            {
1255                DtoForcePersistencyModeBroker theForcePersistencyModeBroker;
1256                theForcePersistencyModeBroker = this.getForcePersistencyModeBroker();
1257                strategy.appendField(locator, this, "forcePersistencyModeBroker", buffer, theForcePersistencyModeBroker);
1258            }
1259            {
1260                DtoLoggingBrokerPlugin theLoggingBrokerPlugin;
1261                theLoggingBrokerPlugin = this.getLoggingBrokerPlugin();
1262                strategy.appendField(locator, this, "loggingBrokerPlugin", buffer, theLoggingBrokerPlugin);
1263            }
1264            {
1265                DtoMulticastTraceBrokerPlugin theMulticastTraceBrokerPlugin;
1266                theMulticastTraceBrokerPlugin = this.getMulticastTraceBrokerPlugin();
1267                strategy.appendField(locator, this, "multicastTraceBrokerPlugin", buffer, theMulticastTraceBrokerPlugin);
1268            }
1269            {
1270                DtoRedeliveryPlugin theRedeliveryPlugin;
1271                theRedeliveryPlugin = this.getRedeliveryPlugin();
1272                strategy.appendField(locator, this, "redeliveryPlugin", buffer, theRedeliveryPlugin);
1273            }
1274            {
1275                DtoTimeStampingBrokerPlugin theTimeStampingBrokerPlugin;
1276                theTimeStampingBrokerPlugin = this.getTimeStampingBrokerPlugin();
1277                strategy.appendField(locator, this, "timeStampingBrokerPlugin", buffer, theTimeStampingBrokerPlugin);
1278            }
1279            {
1280                DtoTraceBrokerPathPlugin theTraceBrokerPathPlugin;
1281                theTraceBrokerPathPlugin = this.getTraceBrokerPathPlugin();
1282                strategy.appendField(locator, this, "traceBrokerPathPlugin", buffer, theTraceBrokerPathPlugin);
1283            }
1284            {
1285                DtoUdpTraceBrokerPlugin theUdpTraceBrokerPlugin;
1286                theUdpTraceBrokerPlugin = this.getUdpTraceBrokerPlugin();
1287                strategy.appendField(locator, this, "udpTraceBrokerPlugin", buffer, theUdpTraceBrokerPlugin);
1288            }
1289            {
1290                Object theAny;
1291                theAny = this.getAny();
1292                strategy.appendField(locator, this, "any", buffer, theAny);
1293            }
1294            return buffer;
1295        }
1296
1297        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
1298            int currentHashCode = 1;
1299            {
1300                DtoDestinationPathSeparatorPlugin theDestinationPathSeparatorPlugin;
1301                theDestinationPathSeparatorPlugin = this.getDestinationPathSeparatorPlugin();
1302                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "destinationPathSeparatorPlugin", theDestinationPathSeparatorPlugin), currentHashCode, theDestinationPathSeparatorPlugin);
1303            }
1304            {
1305                DtoDestinationsPlugin theDestinationsPlugin;
1306                theDestinationsPlugin = this.getDestinationsPlugin();
1307                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "destinationsPlugin", theDestinationsPlugin), currentHashCode, theDestinationsPlugin);
1308            }
1309            {
1310                DtoForcePersistencyModeBroker theForcePersistencyModeBroker;
1311                theForcePersistencyModeBroker = this.getForcePersistencyModeBroker();
1312                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "forcePersistencyModeBroker", theForcePersistencyModeBroker), currentHashCode, theForcePersistencyModeBroker);
1313            }
1314            {
1315                DtoLoggingBrokerPlugin theLoggingBrokerPlugin;
1316                theLoggingBrokerPlugin = this.getLoggingBrokerPlugin();
1317                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "loggingBrokerPlugin", theLoggingBrokerPlugin), currentHashCode, theLoggingBrokerPlugin);
1318            }
1319            {
1320                DtoMulticastTraceBrokerPlugin theMulticastTraceBrokerPlugin;
1321                theMulticastTraceBrokerPlugin = this.getMulticastTraceBrokerPlugin();
1322                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "multicastTraceBrokerPlugin", theMulticastTraceBrokerPlugin), currentHashCode, theMulticastTraceBrokerPlugin);
1323            }
1324            {
1325                DtoRedeliveryPlugin theRedeliveryPlugin;
1326                theRedeliveryPlugin = this.getRedeliveryPlugin();
1327                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "redeliveryPlugin", theRedeliveryPlugin), currentHashCode, theRedeliveryPlugin);
1328            }
1329            {
1330                DtoTimeStampingBrokerPlugin theTimeStampingBrokerPlugin;
1331                theTimeStampingBrokerPlugin = this.getTimeStampingBrokerPlugin();
1332                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "timeStampingBrokerPlugin", theTimeStampingBrokerPlugin), currentHashCode, theTimeStampingBrokerPlugin);
1333            }
1334            {
1335                DtoTraceBrokerPathPlugin theTraceBrokerPathPlugin;
1336                theTraceBrokerPathPlugin = this.getTraceBrokerPathPlugin();
1337                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "traceBrokerPathPlugin", theTraceBrokerPathPlugin), currentHashCode, theTraceBrokerPathPlugin);
1338            }
1339            {
1340                DtoUdpTraceBrokerPlugin theUdpTraceBrokerPlugin;
1341                theUdpTraceBrokerPlugin = this.getUdpTraceBrokerPlugin();
1342                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "udpTraceBrokerPlugin", theUdpTraceBrokerPlugin), currentHashCode, theUdpTraceBrokerPlugin);
1343            }
1344            {
1345                Object theAny;
1346                theAny = this.getAny();
1347                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
1348            }
1349            return currentHashCode;
1350        }
1351
1352        public int hashCode() {
1353            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
1354            return this.hashCode(null, strategy);
1355        }
1356
1357        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
1358            if (!(object instanceof DtoUdpTraceBrokerPlugin.Next)) {
1359                return false;
1360            }
1361            if (this == object) {
1362                return true;
1363            }
1364            final DtoUdpTraceBrokerPlugin.Next that = ((DtoUdpTraceBrokerPlugin.Next) object);
1365            {
1366                DtoDestinationPathSeparatorPlugin lhsDestinationPathSeparatorPlugin;
1367                lhsDestinationPathSeparatorPlugin = this.getDestinationPathSeparatorPlugin();
1368                DtoDestinationPathSeparatorPlugin rhsDestinationPathSeparatorPlugin;
1369                rhsDestinationPathSeparatorPlugin = that.getDestinationPathSeparatorPlugin();
1370                if (!strategy.equals(LocatorUtils.property(thisLocator, "destinationPathSeparatorPlugin", lhsDestinationPathSeparatorPlugin), LocatorUtils.property(thatLocator, "destinationPathSeparatorPlugin", rhsDestinationPathSeparatorPlugin), lhsDestinationPathSeparatorPlugin, rhsDestinationPathSeparatorPlugin)) {
1371                    return false;
1372                }
1373            }
1374            {
1375                DtoDestinationsPlugin lhsDestinationsPlugin;
1376                lhsDestinationsPlugin = this.getDestinationsPlugin();
1377                DtoDestinationsPlugin rhsDestinationsPlugin;
1378                rhsDestinationsPlugin = that.getDestinationsPlugin();
1379                if (!strategy.equals(LocatorUtils.property(thisLocator, "destinationsPlugin", lhsDestinationsPlugin), LocatorUtils.property(thatLocator, "destinationsPlugin", rhsDestinationsPlugin), lhsDestinationsPlugin, rhsDestinationsPlugin)) {
1380                    return false;
1381                }
1382            }
1383            {
1384                DtoForcePersistencyModeBroker lhsForcePersistencyModeBroker;
1385                lhsForcePersistencyModeBroker = this.getForcePersistencyModeBroker();
1386                DtoForcePersistencyModeBroker rhsForcePersistencyModeBroker;
1387                rhsForcePersistencyModeBroker = that.getForcePersistencyModeBroker();
1388                if (!strategy.equals(LocatorUtils.property(thisLocator, "forcePersistencyModeBroker", lhsForcePersistencyModeBroker), LocatorUtils.property(thatLocator, "forcePersistencyModeBroker", rhsForcePersistencyModeBroker), lhsForcePersistencyModeBroker, rhsForcePersistencyModeBroker)) {
1389                    return false;
1390                }
1391            }
1392            {
1393                DtoLoggingBrokerPlugin lhsLoggingBrokerPlugin;
1394                lhsLoggingBrokerPlugin = this.getLoggingBrokerPlugin();
1395                DtoLoggingBrokerPlugin rhsLoggingBrokerPlugin;
1396                rhsLoggingBrokerPlugin = that.getLoggingBrokerPlugin();
1397                if (!strategy.equals(LocatorUtils.property(thisLocator, "loggingBrokerPlugin", lhsLoggingBrokerPlugin), LocatorUtils.property(thatLocator, "loggingBrokerPlugin", rhsLoggingBrokerPlugin), lhsLoggingBrokerPlugin, rhsLoggingBrokerPlugin)) {
1398                    return false;
1399                }
1400            }
1401            {
1402                DtoMulticastTraceBrokerPlugin lhsMulticastTraceBrokerPlugin;
1403                lhsMulticastTraceBrokerPlugin = this.getMulticastTraceBrokerPlugin();
1404                DtoMulticastTraceBrokerPlugin rhsMulticastTraceBrokerPlugin;
1405                rhsMulticastTraceBrokerPlugin = that.getMulticastTraceBrokerPlugin();
1406                if (!strategy.equals(LocatorUtils.property(thisLocator, "multicastTraceBrokerPlugin", lhsMulticastTraceBrokerPlugin), LocatorUtils.property(thatLocator, "multicastTraceBrokerPlugin", rhsMulticastTraceBrokerPlugin), lhsMulticastTraceBrokerPlugin, rhsMulticastTraceBrokerPlugin)) {
1407                    return false;
1408                }
1409            }
1410            {
1411                DtoRedeliveryPlugin lhsRedeliveryPlugin;
1412                lhsRedeliveryPlugin = this.getRedeliveryPlugin();
1413                DtoRedeliveryPlugin rhsRedeliveryPlugin;
1414                rhsRedeliveryPlugin = that.getRedeliveryPlugin();
1415                if (!strategy.equals(LocatorUtils.property(thisLocator, "redeliveryPlugin", lhsRedeliveryPlugin), LocatorUtils.property(thatLocator, "redeliveryPlugin", rhsRedeliveryPlugin), lhsRedeliveryPlugin, rhsRedeliveryPlugin)) {
1416                    return false;
1417                }
1418            }
1419            {
1420                DtoTimeStampingBrokerPlugin lhsTimeStampingBrokerPlugin;
1421                lhsTimeStampingBrokerPlugin = this.getTimeStampingBrokerPlugin();
1422                DtoTimeStampingBrokerPlugin rhsTimeStampingBrokerPlugin;
1423                rhsTimeStampingBrokerPlugin = that.getTimeStampingBrokerPlugin();
1424                if (!strategy.equals(LocatorUtils.property(thisLocator, "timeStampingBrokerPlugin", lhsTimeStampingBrokerPlugin), LocatorUtils.property(thatLocator, "timeStampingBrokerPlugin", rhsTimeStampingBrokerPlugin), lhsTimeStampingBrokerPlugin, rhsTimeStampingBrokerPlugin)) {
1425                    return false;
1426                }
1427            }
1428            {
1429                DtoTraceBrokerPathPlugin lhsTraceBrokerPathPlugin;
1430                lhsTraceBrokerPathPlugin = this.getTraceBrokerPathPlugin();
1431                DtoTraceBrokerPathPlugin rhsTraceBrokerPathPlugin;
1432                rhsTraceBrokerPathPlugin = that.getTraceBrokerPathPlugin();
1433                if (!strategy.equals(LocatorUtils.property(thisLocator, "traceBrokerPathPlugin", lhsTraceBrokerPathPlugin), LocatorUtils.property(thatLocator, "traceBrokerPathPlugin", rhsTraceBrokerPathPlugin), lhsTraceBrokerPathPlugin, rhsTraceBrokerPathPlugin)) {
1434                    return false;
1435                }
1436            }
1437            {
1438                DtoUdpTraceBrokerPlugin lhsUdpTraceBrokerPlugin;
1439                lhsUdpTraceBrokerPlugin = this.getUdpTraceBrokerPlugin();
1440                DtoUdpTraceBrokerPlugin rhsUdpTraceBrokerPlugin;
1441                rhsUdpTraceBrokerPlugin = that.getUdpTraceBrokerPlugin();
1442                if (!strategy.equals(LocatorUtils.property(thisLocator, "udpTraceBrokerPlugin", lhsUdpTraceBrokerPlugin), LocatorUtils.property(thatLocator, "udpTraceBrokerPlugin", rhsUdpTraceBrokerPlugin), lhsUdpTraceBrokerPlugin, rhsUdpTraceBrokerPlugin)) {
1443                    return false;
1444                }
1445            }
1446            {
1447                Object lhsAny;
1448                lhsAny = this.getAny();
1449                Object rhsAny;
1450                rhsAny = that.getAny();
1451                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
1452                    return false;
1453                }
1454            }
1455            return true;
1456        }
1457
1458        public boolean equals(Object object) {
1459            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
1460            return equals(null, null, object, strategy);
1461        }
1462
1463    }
1464
1465
1466    /**
1467     * <p>Java class for anonymous complex type.
1468     * 
1469     * <p>The following schema fragment specifies the expected content contained within this class.
1470     * 
1471     * <pre>
1472     * &lt;complexType>
1473     *   &lt;complexContent>
1474     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
1475     *       &lt;sequence minOccurs="0">
1476     *         &lt;any maxOccurs="unbounded" minOccurs="0"/>
1477     *       &lt;/sequence>
1478     *     &lt;/restriction>
1479     *   &lt;/complexContent>
1480     * &lt;/complexType>
1481     * </pre>
1482     * 
1483     * 
1484     */
1485    @XmlAccessorType(XmlAccessType.FIELD)
1486    @XmlType(name = "", propOrder = {
1487        "any"
1488    })
1489    public static class WireFormat
1490        implements Equals, HashCode, ToString
1491    {
1492
1493        @XmlAnyElement(lax = true)
1494        protected List<Object> any;
1495
1496        /**
1497         * Gets the value of the any property.
1498         * 
1499         * <p>
1500         * This accessor method returns a reference to the live list,
1501         * not a snapshot. Therefore any modification you make to the
1502         * returned list will be present inside the JAXB object.
1503         * This is why there is not a <CODE>set</CODE> method for the any property.
1504         * 
1505         * <p>
1506         * For example, to add a new item, do as follows:
1507         * <pre>
1508         *    getAny().add(newItem);
1509         * </pre>
1510         * 
1511         * 
1512         * <p>
1513         * Objects of the following type(s) are allowed in the list
1514         * {@link Object }
1515         * 
1516         * 
1517         */
1518        public List<Object> getAny() {
1519            if (any == null) {
1520                any = new ArrayList<Object>();
1521            }
1522            return this.any;
1523        }
1524
1525        public String toString() {
1526            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
1527            final StringBuilder buffer = new StringBuilder();
1528            append(null, buffer, strategy);
1529            return buffer.toString();
1530        }
1531
1532        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
1533            strategy.appendStart(locator, this, buffer);
1534            appendFields(locator, buffer, strategy);
1535            strategy.appendEnd(locator, this, buffer);
1536            return buffer;
1537        }
1538
1539        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
1540            {
1541                List<Object> theAny;
1542                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
1543                strategy.appendField(locator, this, "any", buffer, theAny);
1544            }
1545            return buffer;
1546        }
1547
1548        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
1549            int currentHashCode = 1;
1550            {
1551                List<Object> theAny;
1552                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
1553                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
1554            }
1555            return currentHashCode;
1556        }
1557
1558        public int hashCode() {
1559            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
1560            return this.hashCode(null, strategy);
1561        }
1562
1563        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
1564            if (!(object instanceof DtoUdpTraceBrokerPlugin.WireFormat)) {
1565                return false;
1566            }
1567            if (this == object) {
1568                return true;
1569            }
1570            final DtoUdpTraceBrokerPlugin.WireFormat that = ((DtoUdpTraceBrokerPlugin.WireFormat) object);
1571            {
1572                List<Object> lhsAny;
1573                lhsAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
1574                List<Object> rhsAny;
1575                rhsAny = (((that.any!= null)&&(!that.any.isEmpty()))?that.getAny():null);
1576                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
1577                    return false;
1578                }
1579            }
1580            return true;
1581        }
1582
1583        public boolean equals(Object object) {
1584            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
1585            return equals(null, null, object, strategy);
1586        }
1587
1588    }
1589
1590
1591    /**
1592     * <p>Java class for anonymous complex type.
1593     * 
1594     * <p>The following schema fragment specifies the expected content contained within this class.
1595     * 
1596     * <pre>
1597     * &lt;complexType>
1598     *   &lt;complexContent>
1599     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
1600     *       &lt;sequence minOccurs="0">
1601     *         &lt;any maxOccurs="unbounded" minOccurs="0"/>
1602     *       &lt;/sequence>
1603     *     &lt;/restriction>
1604     *   &lt;/complexContent>
1605     * &lt;/complexType>
1606     * </pre>
1607     * 
1608     * 
1609     */
1610    @XmlAccessorType(XmlAccessType.FIELD)
1611    @XmlType(name = "", propOrder = {
1612        "any"
1613    })
1614    public static class WireFormatFactory
1615        implements Equals, HashCode, ToString
1616    {
1617
1618        @XmlAnyElement(lax = true)
1619        protected List<Object> any;
1620
1621        /**
1622         * Gets the value of the any property.
1623         * 
1624         * <p>
1625         * This accessor method returns a reference to the live list,
1626         * not a snapshot. Therefore any modification you make to the
1627         * returned list will be present inside the JAXB object.
1628         * This is why there is not a <CODE>set</CODE> method for the any property.
1629         * 
1630         * <p>
1631         * For example, to add a new item, do as follows:
1632         * <pre>
1633         *    getAny().add(newItem);
1634         * </pre>
1635         * 
1636         * 
1637         * <p>
1638         * Objects of the following type(s) are allowed in the list
1639         * {@link Object }
1640         * 
1641         * 
1642         */
1643        public List<Object> getAny() {
1644            if (any == null) {
1645                any = new ArrayList<Object>();
1646            }
1647            return this.any;
1648        }
1649
1650        public String toString() {
1651            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
1652            final StringBuilder buffer = new StringBuilder();
1653            append(null, buffer, strategy);
1654            return buffer.toString();
1655        }
1656
1657        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
1658            strategy.appendStart(locator, this, buffer);
1659            appendFields(locator, buffer, strategy);
1660            strategy.appendEnd(locator, this, buffer);
1661            return buffer;
1662        }
1663
1664        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
1665            {
1666                List<Object> theAny;
1667                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
1668                strategy.appendField(locator, this, "any", buffer, theAny);
1669            }
1670            return buffer;
1671        }
1672
1673        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
1674            int currentHashCode = 1;
1675            {
1676                List<Object> theAny;
1677                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
1678                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
1679            }
1680            return currentHashCode;
1681        }
1682
1683        public int hashCode() {
1684            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
1685            return this.hashCode(null, strategy);
1686        }
1687
1688        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
1689            if (!(object instanceof DtoUdpTraceBrokerPlugin.WireFormatFactory)) {
1690                return false;
1691            }
1692            if (this == object) {
1693                return true;
1694            }
1695            final DtoUdpTraceBrokerPlugin.WireFormatFactory that = ((DtoUdpTraceBrokerPlugin.WireFormatFactory) object);
1696            {
1697                List<Object> lhsAny;
1698                lhsAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
1699                List<Object> rhsAny;
1700                rhsAny = (((that.any!= null)&&(!that.any.isEmpty()))?that.getAny():null);
1701                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
1702                    return false;
1703                }
1704            }
1705            return true;
1706        }
1707
1708        public boolean equals(Object object) {
1709            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
1710            return equals(null, null, object, strategy);
1711        }
1712
1713    }
1714
1715}