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