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.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;element name="template" minOccurs="0">
105 *             &lt;complexType>
106 *               &lt;complexContent>
107 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
108 *                   &lt;choice minOccurs="0">
109 *                     &lt;element ref="{http://activemq.apache.org/schema/core}filteredKahaDB"/>
110 *                     &lt;any namespace='##other'/>
111 *                   &lt;/choice>
112 *                 &lt;/restriction>
113 *               &lt;/complexContent>
114 *             &lt;/complexType>
115 *           &lt;/element>
116 *           &lt;element name="usage" minOccurs="0">
117 *             &lt;complexType>
118 *               &lt;complexContent>
119 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
120 *                   &lt;choice minOccurs="0">
121 *                     &lt;element ref="{http://activemq.apache.org/schema/core}storeUsage"/>
122 *                     &lt;any namespace='##other'/>
123 *                   &lt;/choice>
124 *                 &lt;/restriction>
125 *               &lt;/complexContent>
126 *             &lt;/complexType>
127 *           &lt;/element>
128 *           &lt;any namespace='##other' maxOccurs="unbounded" minOccurs="0"/>
129 *         &lt;/choice>
130 *       &lt;/choice>
131 *       &lt;attribute name="adapter" type="{http://www.w3.org/2001/XMLSchema}string" />
132 *       &lt;attribute name="destination" type="{http://www.w3.org/2001/XMLSchema}string" />
133 *       &lt;attribute name="perDestination" type="{http://www.w3.org/2001/XMLSchema}boolean" />
134 *       &lt;attribute name="persistenceAdapter" type="{http://www.w3.org/2001/XMLSchema}string" />
135 *       &lt;attribute name="queue" type="{http://www.w3.org/2001/XMLSchema}string" />
136 *       &lt;attribute name="tempQueue" type="{http://www.w3.org/2001/XMLSchema}boolean" />
137 *       &lt;attribute name="tempTopic" type="{http://www.w3.org/2001/XMLSchema}boolean" />
138 *       &lt;attribute name="template" type="{http://www.w3.org/2001/XMLSchema}string" />
139 *       &lt;attribute name="topic" type="{http://www.w3.org/2001/XMLSchema}string" />
140 *       &lt;attribute name="usage" type="{http://www.w3.org/2001/XMLSchema}string" />
141 *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
142 *       &lt;anyAttribute processContents='lax' namespace='##other'/>
143 *     &lt;/restriction>
144 *   &lt;/complexContent>
145 * &lt;/complexType>
146 * </pre>
147 * 
148 * 
149 */
150@XmlAccessorType(XmlAccessType.FIELD)
151@XmlType(name = "", propOrder = {
152    "adapterOrDestinationOrPersistenceAdapter"
153})
154@XmlRootElement(name = "filteredKahaDB")
155public class DtoFilteredKahaDB
156    implements Equals, HashCode, ToString
157{
158
159    @XmlElementRefs({
160        @XmlElementRef(name = "template", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false),
161        @XmlElementRef(name = "adapter", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false),
162        @XmlElementRef(name = "persistenceAdapter", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false),
163        @XmlElementRef(name = "usage", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false),
164        @XmlElementRef(name = "destination", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false)
165    })
166    @XmlAnyElement(lax = true)
167    protected List<Object> adapterOrDestinationOrPersistenceAdapter;
168    @XmlAttribute(name = "adapter")
169    protected String adapter;
170    @XmlAttribute(name = "destination")
171    protected String destination;
172    @XmlAttribute(name = "perDestination")
173    protected Boolean perDestination;
174    @XmlAttribute(name = "persistenceAdapter")
175    protected String persistenceAdapter;
176    @XmlAttribute(name = "queue")
177    protected String queue;
178    @XmlAttribute(name = "tempQueue")
179    protected Boolean tempQueue;
180    @XmlAttribute(name = "tempTopic")
181    protected Boolean tempTopic;
182    @XmlAttribute(name = "template")
183    protected String template;
184    @XmlAttribute(name = "topic")
185    protected String topic;
186    @XmlAttribute(name = "usage")
187    protected String usage;
188    @XmlAttribute(name = "id")
189    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
190    @XmlID
191    @XmlSchemaType(name = "ID")
192    protected String id;
193    @XmlAnyAttribute
194    private Map<QName, String> otherAttributes = new HashMap<QName, String>();
195
196    /**
197     * Gets the value of the adapterOrDestinationOrPersistenceAdapter property.
198     * 
199     * <p>
200     * This accessor method returns a reference to the live list,
201     * not a snapshot. Therefore any modification you make to the
202     * returned list will be present inside the JAXB object.
203     * This is why there is not a <CODE>set</CODE> method for the adapterOrDestinationOrPersistenceAdapter property.
204     * 
205     * <p>
206     * For example, to add a new item, do as follows:
207     * <pre>
208     *    getAdapterOrDestinationOrPersistenceAdapter().add(newItem);
209     * </pre>
210     * 
211     * 
212     * <p>
213     * Objects of the following type(s) are allowed in the list
214     * {@link Object }
215     * {@link JAXBElement }{@code <}{@link DtoFilteredKahaDB.PersistenceAdapter }{@code >}
216     * {@link JAXBElement }{@code <}{@link DtoFilteredKahaDB.Usage }{@code >}
217     * {@link JAXBElement }{@code <}{@link DtoFilteredKahaDB.Template }{@code >}
218     * {@link JAXBElement }{@code <}{@link DtoFilteredKahaDB.Adapter }{@code >}
219     * {@link JAXBElement }{@code <}{@link DtoFilteredKahaDB.Destination }{@code >}
220     * 
221     * 
222     */
223    public List<Object> getAdapterOrDestinationOrPersistenceAdapter() {
224        if (adapterOrDestinationOrPersistenceAdapter == null) {
225            adapterOrDestinationOrPersistenceAdapter = new ArrayList<Object>();
226        }
227        return this.adapterOrDestinationOrPersistenceAdapter;
228    }
229
230    /**
231     * Gets the value of the adapter property.
232     * 
233     * @return
234     *     possible object is
235     *     {@link String }
236     *     
237     */
238    public String getAdapter() {
239        return adapter;
240    }
241
242    /**
243     * Sets the value of the adapter property.
244     * 
245     * @param value
246     *     allowed object is
247     *     {@link String }
248     *     
249     */
250    public void setAdapter(String value) {
251        this.adapter = value;
252    }
253
254    /**
255     * Gets the value of the destination property.
256     * 
257     * @return
258     *     possible object is
259     *     {@link String }
260     *     
261     */
262    public String getDestination() {
263        return destination;
264    }
265
266    /**
267     * Sets the value of the destination property.
268     * 
269     * @param value
270     *     allowed object is
271     *     {@link String }
272     *     
273     */
274    public void setDestination(String value) {
275        this.destination = value;
276    }
277
278    /**
279     * Gets the value of the perDestination property.
280     * 
281     * @return
282     *     possible object is
283     *     {@link Boolean }
284     *     
285     */
286    public Boolean isPerDestination() {
287        return perDestination;
288    }
289
290    /**
291     * Sets the value of the perDestination property.
292     * 
293     * @param value
294     *     allowed object is
295     *     {@link Boolean }
296     *     
297     */
298    public void setPerDestination(Boolean value) {
299        this.perDestination = value;
300    }
301
302    /**
303     * Gets the value of the persistenceAdapter property.
304     * 
305     * @return
306     *     possible object is
307     *     {@link String }
308     *     
309     */
310    public String getPersistenceAdapter() {
311        return persistenceAdapter;
312    }
313
314    /**
315     * Sets the value of the persistenceAdapter property.
316     * 
317     * @param value
318     *     allowed object is
319     *     {@link String }
320     *     
321     */
322    public void setPersistenceAdapter(String value) {
323        this.persistenceAdapter = value;
324    }
325
326    /**
327     * Gets the value of the queue property.
328     * 
329     * @return
330     *     possible object is
331     *     {@link String }
332     *     
333     */
334    public String getQueue() {
335        return queue;
336    }
337
338    /**
339     * Sets the value of the queue property.
340     * 
341     * @param value
342     *     allowed object is
343     *     {@link String }
344     *     
345     */
346    public void setQueue(String value) {
347        this.queue = value;
348    }
349
350    /**
351     * Gets the value of the tempQueue property.
352     * 
353     * @return
354     *     possible object is
355     *     {@link Boolean }
356     *     
357     */
358    public Boolean isTempQueue() {
359        return tempQueue;
360    }
361
362    /**
363     * Sets the value of the tempQueue property.
364     * 
365     * @param value
366     *     allowed object is
367     *     {@link Boolean }
368     *     
369     */
370    public void setTempQueue(Boolean value) {
371        this.tempQueue = value;
372    }
373
374    /**
375     * Gets the value of the tempTopic property.
376     * 
377     * @return
378     *     possible object is
379     *     {@link Boolean }
380     *     
381     */
382    public Boolean isTempTopic() {
383        return tempTopic;
384    }
385
386    /**
387     * Sets the value of the tempTopic property.
388     * 
389     * @param value
390     *     allowed object is
391     *     {@link Boolean }
392     *     
393     */
394    public void setTempTopic(Boolean value) {
395        this.tempTopic = value;
396    }
397
398    /**
399     * Gets the value of the template property.
400     * 
401     * @return
402     *     possible object is
403     *     {@link String }
404     *     
405     */
406    public String getTemplate() {
407        return template;
408    }
409
410    /**
411     * Sets the value of the template property.
412     * 
413     * @param value
414     *     allowed object is
415     *     {@link String }
416     *     
417     */
418    public void setTemplate(String value) {
419        this.template = value;
420    }
421
422    /**
423     * Gets the value of the topic property.
424     * 
425     * @return
426     *     possible object is
427     *     {@link String }
428     *     
429     */
430    public String getTopic() {
431        return topic;
432    }
433
434    /**
435     * Sets the value of the topic property.
436     * 
437     * @param value
438     *     allowed object is
439     *     {@link String }
440     *     
441     */
442    public void setTopic(String value) {
443        this.topic = value;
444    }
445
446    /**
447     * Gets the value of the usage property.
448     * 
449     * @return
450     *     possible object is
451     *     {@link String }
452     *     
453     */
454    public String getUsage() {
455        return usage;
456    }
457
458    /**
459     * Sets the value of the usage property.
460     * 
461     * @param value
462     *     allowed object is
463     *     {@link String }
464     *     
465     */
466    public void setUsage(String value) {
467        this.usage = value;
468    }
469
470    /**
471     * Gets the value of the id property.
472     * 
473     * @return
474     *     possible object is
475     *     {@link String }
476     *     
477     */
478    public String getId() {
479        return id;
480    }
481
482    /**
483     * Sets the value of the id property.
484     * 
485     * @param value
486     *     allowed object is
487     *     {@link String }
488     *     
489     */
490    public void setId(String value) {
491        this.id = value;
492    }
493
494    /**
495     * Gets a map that contains attributes that aren't bound to any typed property on this class.
496     * 
497     * <p>
498     * the map is keyed by the name of the attribute and 
499     * the value is the string value of the attribute.
500     * 
501     * the map returned by this method is live, and you can add new attribute
502     * by updating the map directly. Because of this design, there's no setter.
503     * 
504     * 
505     * @return
506     *     always non-null
507     */
508    public Map<QName, String> getOtherAttributes() {
509        return otherAttributes;
510    }
511
512    public String toString() {
513        final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
514        final StringBuilder buffer = new StringBuilder();
515        append(null, buffer, strategy);
516        return buffer.toString();
517    }
518
519    public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
520        strategy.appendStart(locator, this, buffer);
521        appendFields(locator, buffer, strategy);
522        strategy.appendEnd(locator, this, buffer);
523        return buffer;
524    }
525
526    public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
527        {
528            List<Object> theAdapterOrDestinationOrPersistenceAdapter;
529            theAdapterOrDestinationOrPersistenceAdapter = (((this.adapterOrDestinationOrPersistenceAdapter!= null)&&(!this.adapterOrDestinationOrPersistenceAdapter.isEmpty()))?this.getAdapterOrDestinationOrPersistenceAdapter():null);
530            strategy.appendField(locator, this, "adapterOrDestinationOrPersistenceAdapter", buffer, theAdapterOrDestinationOrPersistenceAdapter);
531        }
532        {
533            String theAdapter;
534            theAdapter = this.getAdapter();
535            strategy.appendField(locator, this, "adapter", buffer, theAdapter);
536        }
537        {
538            String theDestination;
539            theDestination = this.getDestination();
540            strategy.appendField(locator, this, "destination", buffer, theDestination);
541        }
542        {
543            Boolean thePerDestination;
544            thePerDestination = this.isPerDestination();
545            strategy.appendField(locator, this, "perDestination", buffer, thePerDestination);
546        }
547        {
548            String thePersistenceAdapter;
549            thePersistenceAdapter = this.getPersistenceAdapter();
550            strategy.appendField(locator, this, "persistenceAdapter", buffer, thePersistenceAdapter);
551        }
552        {
553            String theQueue;
554            theQueue = this.getQueue();
555            strategy.appendField(locator, this, "queue", buffer, theQueue);
556        }
557        {
558            Boolean theTempQueue;
559            theTempQueue = this.isTempQueue();
560            strategy.appendField(locator, this, "tempQueue", buffer, theTempQueue);
561        }
562        {
563            Boolean theTempTopic;
564            theTempTopic = this.isTempTopic();
565            strategy.appendField(locator, this, "tempTopic", buffer, theTempTopic);
566        }
567        {
568            String theTemplate;
569            theTemplate = this.getTemplate();
570            strategy.appendField(locator, this, "template", buffer, theTemplate);
571        }
572        {
573            String theTopic;
574            theTopic = this.getTopic();
575            strategy.appendField(locator, this, "topic", buffer, theTopic);
576        }
577        {
578            String theUsage;
579            theUsage = this.getUsage();
580            strategy.appendField(locator, this, "usage", buffer, theUsage);
581        }
582        {
583            String theId;
584            theId = this.getId();
585            strategy.appendField(locator, this, "id", buffer, theId);
586        }
587        return buffer;
588    }
589
590    public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
591        int currentHashCode = 1;
592        {
593            List<Object> theAdapterOrDestinationOrPersistenceAdapter;
594            theAdapterOrDestinationOrPersistenceAdapter = (((this.adapterOrDestinationOrPersistenceAdapter!= null)&&(!this.adapterOrDestinationOrPersistenceAdapter.isEmpty()))?this.getAdapterOrDestinationOrPersistenceAdapter():null);
595            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "adapterOrDestinationOrPersistenceAdapter", theAdapterOrDestinationOrPersistenceAdapter), currentHashCode, theAdapterOrDestinationOrPersistenceAdapter);
596        }
597        {
598            String theAdapter;
599            theAdapter = this.getAdapter();
600            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "adapter", theAdapter), currentHashCode, theAdapter);
601        }
602        {
603            String theDestination;
604            theDestination = this.getDestination();
605            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "destination", theDestination), currentHashCode, theDestination);
606        }
607        {
608            Boolean thePerDestination;
609            thePerDestination = this.isPerDestination();
610            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "perDestination", thePerDestination), currentHashCode, thePerDestination);
611        }
612        {
613            String thePersistenceAdapter;
614            thePersistenceAdapter = this.getPersistenceAdapter();
615            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "persistenceAdapter", thePersistenceAdapter), currentHashCode, thePersistenceAdapter);
616        }
617        {
618            String theQueue;
619            theQueue = this.getQueue();
620            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "queue", theQueue), currentHashCode, theQueue);
621        }
622        {
623            Boolean theTempQueue;
624            theTempQueue = this.isTempQueue();
625            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "tempQueue", theTempQueue), currentHashCode, theTempQueue);
626        }
627        {
628            Boolean theTempTopic;
629            theTempTopic = this.isTempTopic();
630            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "tempTopic", theTempTopic), currentHashCode, theTempTopic);
631        }
632        {
633            String theTemplate;
634            theTemplate = this.getTemplate();
635            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "template", theTemplate), currentHashCode, theTemplate);
636        }
637        {
638            String theTopic;
639            theTopic = this.getTopic();
640            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "topic", theTopic), currentHashCode, theTopic);
641        }
642        {
643            String theUsage;
644            theUsage = this.getUsage();
645            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "usage", theUsage), currentHashCode, theUsage);
646        }
647        {
648            String theId;
649            theId = this.getId();
650            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "id", theId), currentHashCode, theId);
651        }
652        return currentHashCode;
653    }
654
655    public int hashCode() {
656        final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
657        return this.hashCode(null, strategy);
658    }
659
660    public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
661        if (!(object instanceof DtoFilteredKahaDB)) {
662            return false;
663        }
664        if (this == object) {
665            return true;
666        }
667        final DtoFilteredKahaDB that = ((DtoFilteredKahaDB) object);
668        {
669            List<Object> lhsAdapterOrDestinationOrPersistenceAdapter;
670            lhsAdapterOrDestinationOrPersistenceAdapter = (((this.adapterOrDestinationOrPersistenceAdapter!= null)&&(!this.adapterOrDestinationOrPersistenceAdapter.isEmpty()))?this.getAdapterOrDestinationOrPersistenceAdapter():null);
671            List<Object> rhsAdapterOrDestinationOrPersistenceAdapter;
672            rhsAdapterOrDestinationOrPersistenceAdapter = (((that.adapterOrDestinationOrPersistenceAdapter!= null)&&(!that.adapterOrDestinationOrPersistenceAdapter.isEmpty()))?that.getAdapterOrDestinationOrPersistenceAdapter():null);
673            if (!strategy.equals(LocatorUtils.property(thisLocator, "adapterOrDestinationOrPersistenceAdapter", lhsAdapterOrDestinationOrPersistenceAdapter), LocatorUtils.property(thatLocator, "adapterOrDestinationOrPersistenceAdapter", rhsAdapterOrDestinationOrPersistenceAdapter), lhsAdapterOrDestinationOrPersistenceAdapter, rhsAdapterOrDestinationOrPersistenceAdapter)) {
674                return false;
675            }
676        }
677        {
678            String lhsAdapter;
679            lhsAdapter = this.getAdapter();
680            String rhsAdapter;
681            rhsAdapter = that.getAdapter();
682            if (!strategy.equals(LocatorUtils.property(thisLocator, "adapter", lhsAdapter), LocatorUtils.property(thatLocator, "adapter", rhsAdapter), lhsAdapter, rhsAdapter)) {
683                return false;
684            }
685        }
686        {
687            String lhsDestination;
688            lhsDestination = this.getDestination();
689            String rhsDestination;
690            rhsDestination = that.getDestination();
691            if (!strategy.equals(LocatorUtils.property(thisLocator, "destination", lhsDestination), LocatorUtils.property(thatLocator, "destination", rhsDestination), lhsDestination, rhsDestination)) {
692                return false;
693            }
694        }
695        {
696            Boolean lhsPerDestination;
697            lhsPerDestination = this.isPerDestination();
698            Boolean rhsPerDestination;
699            rhsPerDestination = that.isPerDestination();
700            if (!strategy.equals(LocatorUtils.property(thisLocator, "perDestination", lhsPerDestination), LocatorUtils.property(thatLocator, "perDestination", rhsPerDestination), lhsPerDestination, rhsPerDestination)) {
701                return false;
702            }
703        }
704        {
705            String lhsPersistenceAdapter;
706            lhsPersistenceAdapter = this.getPersistenceAdapter();
707            String rhsPersistenceAdapter;
708            rhsPersistenceAdapter = that.getPersistenceAdapter();
709            if (!strategy.equals(LocatorUtils.property(thisLocator, "persistenceAdapter", lhsPersistenceAdapter), LocatorUtils.property(thatLocator, "persistenceAdapter", rhsPersistenceAdapter), lhsPersistenceAdapter, rhsPersistenceAdapter)) {
710                return false;
711            }
712        }
713        {
714            String lhsQueue;
715            lhsQueue = this.getQueue();
716            String rhsQueue;
717            rhsQueue = that.getQueue();
718            if (!strategy.equals(LocatorUtils.property(thisLocator, "queue", lhsQueue), LocatorUtils.property(thatLocator, "queue", rhsQueue), lhsQueue, rhsQueue)) {
719                return false;
720            }
721        }
722        {
723            Boolean lhsTempQueue;
724            lhsTempQueue = this.isTempQueue();
725            Boolean rhsTempQueue;
726            rhsTempQueue = that.isTempQueue();
727            if (!strategy.equals(LocatorUtils.property(thisLocator, "tempQueue", lhsTempQueue), LocatorUtils.property(thatLocator, "tempQueue", rhsTempQueue), lhsTempQueue, rhsTempQueue)) {
728                return false;
729            }
730        }
731        {
732            Boolean lhsTempTopic;
733            lhsTempTopic = this.isTempTopic();
734            Boolean rhsTempTopic;
735            rhsTempTopic = that.isTempTopic();
736            if (!strategy.equals(LocatorUtils.property(thisLocator, "tempTopic", lhsTempTopic), LocatorUtils.property(thatLocator, "tempTopic", rhsTempTopic), lhsTempTopic, rhsTempTopic)) {
737                return false;
738            }
739        }
740        {
741            String lhsTemplate;
742            lhsTemplate = this.getTemplate();
743            String rhsTemplate;
744            rhsTemplate = that.getTemplate();
745            if (!strategy.equals(LocatorUtils.property(thisLocator, "template", lhsTemplate), LocatorUtils.property(thatLocator, "template", rhsTemplate), lhsTemplate, rhsTemplate)) {
746                return false;
747            }
748        }
749        {
750            String lhsTopic;
751            lhsTopic = this.getTopic();
752            String rhsTopic;
753            rhsTopic = that.getTopic();
754            if (!strategy.equals(LocatorUtils.property(thisLocator, "topic", lhsTopic), LocatorUtils.property(thatLocator, "topic", rhsTopic), lhsTopic, rhsTopic)) {
755                return false;
756            }
757        }
758        {
759            String lhsUsage;
760            lhsUsage = this.getUsage();
761            String rhsUsage;
762            rhsUsage = that.getUsage();
763            if (!strategy.equals(LocatorUtils.property(thisLocator, "usage", lhsUsage), LocatorUtils.property(thatLocator, "usage", rhsUsage), lhsUsage, rhsUsage)) {
764                return false;
765            }
766        }
767        {
768            String lhsId;
769            lhsId = this.getId();
770            String rhsId;
771            rhsId = that.getId();
772            if (!strategy.equals(LocatorUtils.property(thisLocator, "id", lhsId), LocatorUtils.property(thatLocator, "id", rhsId), lhsId, rhsId)) {
773                return false;
774            }
775        }
776        return true;
777    }
778
779    public boolean equals(Object object) {
780        final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
781        return equals(null, null, object, strategy);
782    }
783
784
785    /**
786     * <p>Java class for anonymous complex type.
787     * 
788     * <p>The following schema fragment specifies the expected content contained within this class.
789     * 
790     * <pre>
791     * &lt;complexType>
792     *   &lt;complexContent>
793     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
794     *       &lt;choice minOccurs="0">
795     *         &lt;element ref="{http://activemq.apache.org/schema/core}jdbcPersistenceAdapter"/>
796     *         &lt;element ref="{http://activemq.apache.org/schema/core}journalPersistenceAdapter"/>
797     *         &lt;element ref="{http://activemq.apache.org/schema/core}kahaDB"/>
798     *         &lt;element ref="{http://activemq.apache.org/schema/core}levelDB"/>
799     *         &lt;element ref="{http://activemq.apache.org/schema/core}mKahaDB"/>
800     *         &lt;element ref="{http://activemq.apache.org/schema/core}memoryPersistenceAdapter"/>
801     *         &lt;element ref="{http://activemq.apache.org/schema/core}replicatedLevelDB"/>
802     *         &lt;any namespace='##other'/>
803     *       &lt;/choice>
804     *     &lt;/restriction>
805     *   &lt;/complexContent>
806     * &lt;/complexType>
807     * </pre>
808     * 
809     * 
810     */
811    @XmlAccessorType(XmlAccessType.FIELD)
812    @XmlType(name = "", propOrder = {
813        "jdbcPersistenceAdapter",
814        "journalPersistenceAdapter",
815        "kahaDB",
816        "levelDB",
817        "mKahaDB",
818        "memoryPersistenceAdapter",
819        "replicatedLevelDB",
820        "any"
821    })
822    public static class Adapter
823        implements Equals, HashCode, ToString
824    {
825
826        protected DtoJdbcPersistenceAdapter jdbcPersistenceAdapter;
827        protected DtoJournalPersistenceAdapter journalPersistenceAdapter;
828        protected DtoKahaDB kahaDB;
829        protected DtoLevelDB levelDB;
830        protected DtoMKahaDB mKahaDB;
831        protected DtoMemoryPersistenceAdapter memoryPersistenceAdapter;
832        protected DtoReplicatedLevelDB replicatedLevelDB;
833        @XmlAnyElement(lax = true)
834        protected Object any;
835
836        /**
837         * Gets the value of the jdbcPersistenceAdapter property.
838         * 
839         * @return
840         *     possible object is
841         *     {@link DtoJdbcPersistenceAdapter }
842         *     
843         */
844        public DtoJdbcPersistenceAdapter getJdbcPersistenceAdapter() {
845            return jdbcPersistenceAdapter;
846        }
847
848        /**
849         * Sets the value of the jdbcPersistenceAdapter property.
850         * 
851         * @param value
852         *     allowed object is
853         *     {@link DtoJdbcPersistenceAdapter }
854         *     
855         */
856        public void setJdbcPersistenceAdapter(DtoJdbcPersistenceAdapter value) {
857            this.jdbcPersistenceAdapter = value;
858        }
859
860        /**
861         * Gets the value of the journalPersistenceAdapter property.
862         * 
863         * @return
864         *     possible object is
865         *     {@link DtoJournalPersistenceAdapter }
866         *     
867         */
868        public DtoJournalPersistenceAdapter getJournalPersistenceAdapter() {
869            return journalPersistenceAdapter;
870        }
871
872        /**
873         * Sets the value of the journalPersistenceAdapter property.
874         * 
875         * @param value
876         *     allowed object is
877         *     {@link DtoJournalPersistenceAdapter }
878         *     
879         */
880        public void setJournalPersistenceAdapter(DtoJournalPersistenceAdapter value) {
881            this.journalPersistenceAdapter = value;
882        }
883
884        /**
885         * Gets the value of the kahaDB property.
886         * 
887         * @return
888         *     possible object is
889         *     {@link DtoKahaDB }
890         *     
891         */
892        public DtoKahaDB getKahaDB() {
893            return kahaDB;
894        }
895
896        /**
897         * Sets the value of the kahaDB property.
898         * 
899         * @param value
900         *     allowed object is
901         *     {@link DtoKahaDB }
902         *     
903         */
904        public void setKahaDB(DtoKahaDB value) {
905            this.kahaDB = value;
906        }
907
908        /**
909         * Gets the value of the levelDB property.
910         * 
911         * @return
912         *     possible object is
913         *     {@link DtoLevelDB }
914         *     
915         */
916        public DtoLevelDB getLevelDB() {
917            return levelDB;
918        }
919
920        /**
921         * Sets the value of the levelDB property.
922         * 
923         * @param value
924         *     allowed object is
925         *     {@link DtoLevelDB }
926         *     
927         */
928        public void setLevelDB(DtoLevelDB value) {
929            this.levelDB = value;
930        }
931
932        /**
933         * Gets the value of the mKahaDB property.
934         * 
935         * @return
936         *     possible object is
937         *     {@link DtoMKahaDB }
938         *     
939         */
940        public DtoMKahaDB getMKahaDB() {
941            return mKahaDB;
942        }
943
944        /**
945         * Sets the value of the mKahaDB property.
946         * 
947         * @param value
948         *     allowed object is
949         *     {@link DtoMKahaDB }
950         *     
951         */
952        public void setMKahaDB(DtoMKahaDB value) {
953            this.mKahaDB = value;
954        }
955
956        /**
957         * Gets the value of the memoryPersistenceAdapter property.
958         * 
959         * @return
960         *     possible object is
961         *     {@link DtoMemoryPersistenceAdapter }
962         *     
963         */
964        public DtoMemoryPersistenceAdapter getMemoryPersistenceAdapter() {
965            return memoryPersistenceAdapter;
966        }
967
968        /**
969         * Sets the value of the memoryPersistenceAdapter property.
970         * 
971         * @param value
972         *     allowed object is
973         *     {@link DtoMemoryPersistenceAdapter }
974         *     
975         */
976        public void setMemoryPersistenceAdapter(DtoMemoryPersistenceAdapter value) {
977            this.memoryPersistenceAdapter = value;
978        }
979
980        /**
981         * Gets the value of the replicatedLevelDB property.
982         * 
983         * @return
984         *     possible object is
985         *     {@link DtoReplicatedLevelDB }
986         *     
987         */
988        public DtoReplicatedLevelDB getReplicatedLevelDB() {
989            return replicatedLevelDB;
990        }
991
992        /**
993         * Sets the value of the replicatedLevelDB property.
994         * 
995         * @param value
996         *     allowed object is
997         *     {@link DtoReplicatedLevelDB }
998         *     
999         */
1000        public void setReplicatedLevelDB(DtoReplicatedLevelDB value) {
1001            this.replicatedLevelDB = value;
1002        }
1003
1004        /**
1005         * Gets the value of the any property.
1006         * 
1007         * @return
1008         *     possible object is
1009         *     {@link Object }
1010         *     
1011         */
1012        public Object getAny() {
1013            return any;
1014        }
1015
1016        /**
1017         * Sets the value of the any property.
1018         * 
1019         * @param value
1020         *     allowed object is
1021         *     {@link Object }
1022         *     
1023         */
1024        public void setAny(Object value) {
1025            this.any = value;
1026        }
1027
1028        public String toString() {
1029            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
1030            final StringBuilder buffer = new StringBuilder();
1031            append(null, buffer, strategy);
1032            return buffer.toString();
1033        }
1034
1035        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
1036            strategy.appendStart(locator, this, buffer);
1037            appendFields(locator, buffer, strategy);
1038            strategy.appendEnd(locator, this, buffer);
1039            return buffer;
1040        }
1041
1042        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
1043            {
1044                DtoJdbcPersistenceAdapter theJdbcPersistenceAdapter;
1045                theJdbcPersistenceAdapter = this.getJdbcPersistenceAdapter();
1046                strategy.appendField(locator, this, "jdbcPersistenceAdapter", buffer, theJdbcPersistenceAdapter);
1047            }
1048            {
1049                DtoJournalPersistenceAdapter theJournalPersistenceAdapter;
1050                theJournalPersistenceAdapter = this.getJournalPersistenceAdapter();
1051                strategy.appendField(locator, this, "journalPersistenceAdapter", buffer, theJournalPersistenceAdapter);
1052            }
1053            {
1054                DtoKahaDB theKahaDB;
1055                theKahaDB = this.getKahaDB();
1056                strategy.appendField(locator, this, "kahaDB", buffer, theKahaDB);
1057            }
1058            {
1059                DtoLevelDB theLevelDB;
1060                theLevelDB = this.getLevelDB();
1061                strategy.appendField(locator, this, "levelDB", buffer, theLevelDB);
1062            }
1063            {
1064                DtoMKahaDB theMKahaDB;
1065                theMKahaDB = this.getMKahaDB();
1066                strategy.appendField(locator, this, "mKahaDB", buffer, theMKahaDB);
1067            }
1068            {
1069                DtoMemoryPersistenceAdapter theMemoryPersistenceAdapter;
1070                theMemoryPersistenceAdapter = this.getMemoryPersistenceAdapter();
1071                strategy.appendField(locator, this, "memoryPersistenceAdapter", buffer, theMemoryPersistenceAdapter);
1072            }
1073            {
1074                DtoReplicatedLevelDB theReplicatedLevelDB;
1075                theReplicatedLevelDB = this.getReplicatedLevelDB();
1076                strategy.appendField(locator, this, "replicatedLevelDB", buffer, theReplicatedLevelDB);
1077            }
1078            {
1079                Object theAny;
1080                theAny = this.getAny();
1081                strategy.appendField(locator, this, "any", buffer, theAny);
1082            }
1083            return buffer;
1084        }
1085
1086        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
1087            int currentHashCode = 1;
1088            {
1089                DtoJdbcPersistenceAdapter theJdbcPersistenceAdapter;
1090                theJdbcPersistenceAdapter = this.getJdbcPersistenceAdapter();
1091                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "jdbcPersistenceAdapter", theJdbcPersistenceAdapter), currentHashCode, theJdbcPersistenceAdapter);
1092            }
1093            {
1094                DtoJournalPersistenceAdapter theJournalPersistenceAdapter;
1095                theJournalPersistenceAdapter = this.getJournalPersistenceAdapter();
1096                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "journalPersistenceAdapter", theJournalPersistenceAdapter), currentHashCode, theJournalPersistenceAdapter);
1097            }
1098            {
1099                DtoKahaDB theKahaDB;
1100                theKahaDB = this.getKahaDB();
1101                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "kahaDB", theKahaDB), currentHashCode, theKahaDB);
1102            }
1103            {
1104                DtoLevelDB theLevelDB;
1105                theLevelDB = this.getLevelDB();
1106                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "levelDB", theLevelDB), currentHashCode, theLevelDB);
1107            }
1108            {
1109                DtoMKahaDB theMKahaDB;
1110                theMKahaDB = this.getMKahaDB();
1111                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "mKahaDB", theMKahaDB), currentHashCode, theMKahaDB);
1112            }
1113            {
1114                DtoMemoryPersistenceAdapter theMemoryPersistenceAdapter;
1115                theMemoryPersistenceAdapter = this.getMemoryPersistenceAdapter();
1116                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "memoryPersistenceAdapter", theMemoryPersistenceAdapter), currentHashCode, theMemoryPersistenceAdapter);
1117            }
1118            {
1119                DtoReplicatedLevelDB theReplicatedLevelDB;
1120                theReplicatedLevelDB = this.getReplicatedLevelDB();
1121                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "replicatedLevelDB", theReplicatedLevelDB), currentHashCode, theReplicatedLevelDB);
1122            }
1123            {
1124                Object theAny;
1125                theAny = this.getAny();
1126                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
1127            }
1128            return currentHashCode;
1129        }
1130
1131        public int hashCode() {
1132            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
1133            return this.hashCode(null, strategy);
1134        }
1135
1136        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
1137            if (!(object instanceof DtoFilteredKahaDB.Adapter)) {
1138                return false;
1139            }
1140            if (this == object) {
1141                return true;
1142            }
1143            final DtoFilteredKahaDB.Adapter that = ((DtoFilteredKahaDB.Adapter) object);
1144            {
1145                DtoJdbcPersistenceAdapter lhsJdbcPersistenceAdapter;
1146                lhsJdbcPersistenceAdapter = this.getJdbcPersistenceAdapter();
1147                DtoJdbcPersistenceAdapter rhsJdbcPersistenceAdapter;
1148                rhsJdbcPersistenceAdapter = that.getJdbcPersistenceAdapter();
1149                if (!strategy.equals(LocatorUtils.property(thisLocator, "jdbcPersistenceAdapter", lhsJdbcPersistenceAdapter), LocatorUtils.property(thatLocator, "jdbcPersistenceAdapter", rhsJdbcPersistenceAdapter), lhsJdbcPersistenceAdapter, rhsJdbcPersistenceAdapter)) {
1150                    return false;
1151                }
1152            }
1153            {
1154                DtoJournalPersistenceAdapter lhsJournalPersistenceAdapter;
1155                lhsJournalPersistenceAdapter = this.getJournalPersistenceAdapter();
1156                DtoJournalPersistenceAdapter rhsJournalPersistenceAdapter;
1157                rhsJournalPersistenceAdapter = that.getJournalPersistenceAdapter();
1158                if (!strategy.equals(LocatorUtils.property(thisLocator, "journalPersistenceAdapter", lhsJournalPersistenceAdapter), LocatorUtils.property(thatLocator, "journalPersistenceAdapter", rhsJournalPersistenceAdapter), lhsJournalPersistenceAdapter, rhsJournalPersistenceAdapter)) {
1159                    return false;
1160                }
1161            }
1162            {
1163                DtoKahaDB lhsKahaDB;
1164                lhsKahaDB = this.getKahaDB();
1165                DtoKahaDB rhsKahaDB;
1166                rhsKahaDB = that.getKahaDB();
1167                if (!strategy.equals(LocatorUtils.property(thisLocator, "kahaDB", lhsKahaDB), LocatorUtils.property(thatLocator, "kahaDB", rhsKahaDB), lhsKahaDB, rhsKahaDB)) {
1168                    return false;
1169                }
1170            }
1171            {
1172                DtoLevelDB lhsLevelDB;
1173                lhsLevelDB = this.getLevelDB();
1174                DtoLevelDB rhsLevelDB;
1175                rhsLevelDB = that.getLevelDB();
1176                if (!strategy.equals(LocatorUtils.property(thisLocator, "levelDB", lhsLevelDB), LocatorUtils.property(thatLocator, "levelDB", rhsLevelDB), lhsLevelDB, rhsLevelDB)) {
1177                    return false;
1178                }
1179            }
1180            {
1181                DtoMKahaDB lhsMKahaDB;
1182                lhsMKahaDB = this.getMKahaDB();
1183                DtoMKahaDB rhsMKahaDB;
1184                rhsMKahaDB = that.getMKahaDB();
1185                if (!strategy.equals(LocatorUtils.property(thisLocator, "mKahaDB", lhsMKahaDB), LocatorUtils.property(thatLocator, "mKahaDB", rhsMKahaDB), lhsMKahaDB, rhsMKahaDB)) {
1186                    return false;
1187                }
1188            }
1189            {
1190                DtoMemoryPersistenceAdapter lhsMemoryPersistenceAdapter;
1191                lhsMemoryPersistenceAdapter = this.getMemoryPersistenceAdapter();
1192                DtoMemoryPersistenceAdapter rhsMemoryPersistenceAdapter;
1193                rhsMemoryPersistenceAdapter = that.getMemoryPersistenceAdapter();
1194                if (!strategy.equals(LocatorUtils.property(thisLocator, "memoryPersistenceAdapter", lhsMemoryPersistenceAdapter), LocatorUtils.property(thatLocator, "memoryPersistenceAdapter", rhsMemoryPersistenceAdapter), lhsMemoryPersistenceAdapter, rhsMemoryPersistenceAdapter)) {
1195                    return false;
1196                }
1197            }
1198            {
1199                DtoReplicatedLevelDB lhsReplicatedLevelDB;
1200                lhsReplicatedLevelDB = this.getReplicatedLevelDB();
1201                DtoReplicatedLevelDB rhsReplicatedLevelDB;
1202                rhsReplicatedLevelDB = that.getReplicatedLevelDB();
1203                if (!strategy.equals(LocatorUtils.property(thisLocator, "replicatedLevelDB", lhsReplicatedLevelDB), LocatorUtils.property(thatLocator, "replicatedLevelDB", rhsReplicatedLevelDB), lhsReplicatedLevelDB, rhsReplicatedLevelDB)) {
1204                    return false;
1205                }
1206            }
1207            {
1208                Object lhsAny;
1209                lhsAny = this.getAny();
1210                Object rhsAny;
1211                rhsAny = that.getAny();
1212                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
1213                    return false;
1214                }
1215            }
1216            return true;
1217        }
1218
1219        public boolean equals(Object object) {
1220            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
1221            return equals(null, null, object, strategy);
1222        }
1223
1224    }
1225
1226
1227    /**
1228     * <p>Java class for anonymous complex type.
1229     * 
1230     * <p>The following schema fragment specifies the expected content contained within this class.
1231     * 
1232     * <pre>
1233     * &lt;complexType>
1234     *   &lt;complexContent>
1235     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
1236     *       &lt;choice minOccurs="0">
1237     *         &lt;element ref="{http://activemq.apache.org/schema/core}queue"/>
1238     *         &lt;element ref="{http://activemq.apache.org/schema/core}tempQueue"/>
1239     *         &lt;element ref="{http://activemq.apache.org/schema/core}tempTopic"/>
1240     *         &lt;element ref="{http://activemq.apache.org/schema/core}topic"/>
1241     *         &lt;any namespace='##other'/>
1242     *       &lt;/choice>
1243     *     &lt;/restriction>
1244     *   &lt;/complexContent>
1245     * &lt;/complexType>
1246     * </pre>
1247     * 
1248     * 
1249     */
1250    @XmlAccessorType(XmlAccessType.FIELD)
1251    @XmlType(name = "", propOrder = {
1252        "queue",
1253        "tempQueue",
1254        "tempTopic",
1255        "topic",
1256        "any"
1257    })
1258    public static class Destination
1259        implements Equals, HashCode, ToString
1260    {
1261
1262        protected DtoQueue queue;
1263        protected DtoTempQueue tempQueue;
1264        protected DtoTempTopic tempTopic;
1265        protected DtoTopic topic;
1266        @XmlAnyElement(lax = true)
1267        protected Object any;
1268
1269        /**
1270         * Gets the value of the queue property.
1271         * 
1272         * @return
1273         *     possible object is
1274         *     {@link DtoQueue }
1275         *     
1276         */
1277        public DtoQueue getQueue() {
1278            return queue;
1279        }
1280
1281        /**
1282         * Sets the value of the queue property.
1283         * 
1284         * @param value
1285         *     allowed object is
1286         *     {@link DtoQueue }
1287         *     
1288         */
1289        public void setQueue(DtoQueue value) {
1290            this.queue = value;
1291        }
1292
1293        /**
1294         * Gets the value of the tempQueue property.
1295         * 
1296         * @return
1297         *     possible object is
1298         *     {@link DtoTempQueue }
1299         *     
1300         */
1301        public DtoTempQueue getTempQueue() {
1302            return tempQueue;
1303        }
1304
1305        /**
1306         * Sets the value of the tempQueue property.
1307         * 
1308         * @param value
1309         *     allowed object is
1310         *     {@link DtoTempQueue }
1311         *     
1312         */
1313        public void setTempQueue(DtoTempQueue value) {
1314            this.tempQueue = value;
1315        }
1316
1317        /**
1318         * Gets the value of the tempTopic property.
1319         * 
1320         * @return
1321         *     possible object is
1322         *     {@link DtoTempTopic }
1323         *     
1324         */
1325        public DtoTempTopic getTempTopic() {
1326            return tempTopic;
1327        }
1328
1329        /**
1330         * Sets the value of the tempTopic property.
1331         * 
1332         * @param value
1333         *     allowed object is
1334         *     {@link DtoTempTopic }
1335         *     
1336         */
1337        public void setTempTopic(DtoTempTopic value) {
1338            this.tempTopic = value;
1339        }
1340
1341        /**
1342         * Gets the value of the topic property.
1343         * 
1344         * @return
1345         *     possible object is
1346         *     {@link DtoTopic }
1347         *     
1348         */
1349        public DtoTopic getTopic() {
1350            return topic;
1351        }
1352
1353        /**
1354         * Sets the value of the topic property.
1355         * 
1356         * @param value
1357         *     allowed object is
1358         *     {@link DtoTopic }
1359         *     
1360         */
1361        public void setTopic(DtoTopic value) {
1362            this.topic = value;
1363        }
1364
1365        /**
1366         * Gets the value of the any property.
1367         * 
1368         * @return
1369         *     possible object is
1370         *     {@link Object }
1371         *     
1372         */
1373        public Object getAny() {
1374            return any;
1375        }
1376
1377        /**
1378         * Sets the value of the any property.
1379         * 
1380         * @param value
1381         *     allowed object is
1382         *     {@link Object }
1383         *     
1384         */
1385        public void setAny(Object value) {
1386            this.any = value;
1387        }
1388
1389        public String toString() {
1390            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
1391            final StringBuilder buffer = new StringBuilder();
1392            append(null, buffer, strategy);
1393            return buffer.toString();
1394        }
1395
1396        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
1397            strategy.appendStart(locator, this, buffer);
1398            appendFields(locator, buffer, strategy);
1399            strategy.appendEnd(locator, this, buffer);
1400            return buffer;
1401        }
1402
1403        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
1404            {
1405                DtoQueue theQueue;
1406                theQueue = this.getQueue();
1407                strategy.appendField(locator, this, "queue", buffer, theQueue);
1408            }
1409            {
1410                DtoTempQueue theTempQueue;
1411                theTempQueue = this.getTempQueue();
1412                strategy.appendField(locator, this, "tempQueue", buffer, theTempQueue);
1413            }
1414            {
1415                DtoTempTopic theTempTopic;
1416                theTempTopic = this.getTempTopic();
1417                strategy.appendField(locator, this, "tempTopic", buffer, theTempTopic);
1418            }
1419            {
1420                DtoTopic theTopic;
1421                theTopic = this.getTopic();
1422                strategy.appendField(locator, this, "topic", buffer, theTopic);
1423            }
1424            {
1425                Object theAny;
1426                theAny = this.getAny();
1427                strategy.appendField(locator, this, "any", buffer, theAny);
1428            }
1429            return buffer;
1430        }
1431
1432        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
1433            int currentHashCode = 1;
1434            {
1435                DtoQueue theQueue;
1436                theQueue = this.getQueue();
1437                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "queue", theQueue), currentHashCode, theQueue);
1438            }
1439            {
1440                DtoTempQueue theTempQueue;
1441                theTempQueue = this.getTempQueue();
1442                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "tempQueue", theTempQueue), currentHashCode, theTempQueue);
1443            }
1444            {
1445                DtoTempTopic theTempTopic;
1446                theTempTopic = this.getTempTopic();
1447                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "tempTopic", theTempTopic), currentHashCode, theTempTopic);
1448            }
1449            {
1450                DtoTopic theTopic;
1451                theTopic = this.getTopic();
1452                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "topic", theTopic), currentHashCode, theTopic);
1453            }
1454            {
1455                Object theAny;
1456                theAny = this.getAny();
1457                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
1458            }
1459            return currentHashCode;
1460        }
1461
1462        public int hashCode() {
1463            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
1464            return this.hashCode(null, strategy);
1465        }
1466
1467        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
1468            if (!(object instanceof DtoFilteredKahaDB.Destination)) {
1469                return false;
1470            }
1471            if (this == object) {
1472                return true;
1473            }
1474            final DtoFilteredKahaDB.Destination that = ((DtoFilteredKahaDB.Destination) object);
1475            {
1476                DtoQueue lhsQueue;
1477                lhsQueue = this.getQueue();
1478                DtoQueue rhsQueue;
1479                rhsQueue = that.getQueue();
1480                if (!strategy.equals(LocatorUtils.property(thisLocator, "queue", lhsQueue), LocatorUtils.property(thatLocator, "queue", rhsQueue), lhsQueue, rhsQueue)) {
1481                    return false;
1482                }
1483            }
1484            {
1485                DtoTempQueue lhsTempQueue;
1486                lhsTempQueue = this.getTempQueue();
1487                DtoTempQueue rhsTempQueue;
1488                rhsTempQueue = that.getTempQueue();
1489                if (!strategy.equals(LocatorUtils.property(thisLocator, "tempQueue", lhsTempQueue), LocatorUtils.property(thatLocator, "tempQueue", rhsTempQueue), lhsTempQueue, rhsTempQueue)) {
1490                    return false;
1491                }
1492            }
1493            {
1494                DtoTempTopic lhsTempTopic;
1495                lhsTempTopic = this.getTempTopic();
1496                DtoTempTopic rhsTempTopic;
1497                rhsTempTopic = that.getTempTopic();
1498                if (!strategy.equals(LocatorUtils.property(thisLocator, "tempTopic", lhsTempTopic), LocatorUtils.property(thatLocator, "tempTopic", rhsTempTopic), lhsTempTopic, rhsTempTopic)) {
1499                    return false;
1500                }
1501            }
1502            {
1503                DtoTopic lhsTopic;
1504                lhsTopic = this.getTopic();
1505                DtoTopic rhsTopic;
1506                rhsTopic = that.getTopic();
1507                if (!strategy.equals(LocatorUtils.property(thisLocator, "topic", lhsTopic), LocatorUtils.property(thatLocator, "topic", rhsTopic), lhsTopic, rhsTopic)) {
1508                    return false;
1509                }
1510            }
1511            {
1512                Object lhsAny;
1513                lhsAny = this.getAny();
1514                Object rhsAny;
1515                rhsAny = that.getAny();
1516                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
1517                    return false;
1518                }
1519            }
1520            return true;
1521        }
1522
1523        public boolean equals(Object object) {
1524            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
1525            return equals(null, null, object, strategy);
1526        }
1527
1528    }
1529
1530
1531    /**
1532     * <p>Java class for anonymous complex type.
1533     * 
1534     * <p>The following schema fragment specifies the expected content contained within this class.
1535     * 
1536     * <pre>
1537     * &lt;complexType>
1538     *   &lt;complexContent>
1539     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
1540     *       &lt;choice minOccurs="0">
1541     *         &lt;element ref="{http://activemq.apache.org/schema/core}jdbcPersistenceAdapter"/>
1542     *         &lt;element ref="{http://activemq.apache.org/schema/core}journalPersistenceAdapter"/>
1543     *         &lt;element ref="{http://activemq.apache.org/schema/core}kahaDB"/>
1544     *         &lt;element ref="{http://activemq.apache.org/schema/core}levelDB"/>
1545     *         &lt;element ref="{http://activemq.apache.org/schema/core}mKahaDB"/>
1546     *         &lt;element ref="{http://activemq.apache.org/schema/core}memoryPersistenceAdapter"/>
1547     *         &lt;element ref="{http://activemq.apache.org/schema/core}replicatedLevelDB"/>
1548     *         &lt;any namespace='##other'/>
1549     *       &lt;/choice>
1550     *     &lt;/restriction>
1551     *   &lt;/complexContent>
1552     * &lt;/complexType>
1553     * </pre>
1554     * 
1555     * 
1556     */
1557    @XmlAccessorType(XmlAccessType.FIELD)
1558    @XmlType(name = "", propOrder = {
1559        "jdbcPersistenceAdapter",
1560        "journalPersistenceAdapter",
1561        "kahaDB",
1562        "levelDB",
1563        "mKahaDB",
1564        "memoryPersistenceAdapter",
1565        "replicatedLevelDB",
1566        "any"
1567    })
1568    public static class PersistenceAdapter
1569        implements Equals, HashCode, ToString
1570    {
1571
1572        protected DtoJdbcPersistenceAdapter jdbcPersistenceAdapter;
1573        protected DtoJournalPersistenceAdapter journalPersistenceAdapter;
1574        protected DtoKahaDB kahaDB;
1575        protected DtoLevelDB levelDB;
1576        protected DtoMKahaDB mKahaDB;
1577        protected DtoMemoryPersistenceAdapter memoryPersistenceAdapter;
1578        protected DtoReplicatedLevelDB replicatedLevelDB;
1579        @XmlAnyElement(lax = true)
1580        protected Object any;
1581
1582        /**
1583         * Gets the value of the jdbcPersistenceAdapter property.
1584         * 
1585         * @return
1586         *     possible object is
1587         *     {@link DtoJdbcPersistenceAdapter }
1588         *     
1589         */
1590        public DtoJdbcPersistenceAdapter getJdbcPersistenceAdapter() {
1591            return jdbcPersistenceAdapter;
1592        }
1593
1594        /**
1595         * Sets the value of the jdbcPersistenceAdapter property.
1596         * 
1597         * @param value
1598         *     allowed object is
1599         *     {@link DtoJdbcPersistenceAdapter }
1600         *     
1601         */
1602        public void setJdbcPersistenceAdapter(DtoJdbcPersistenceAdapter value) {
1603            this.jdbcPersistenceAdapter = value;
1604        }
1605
1606        /**
1607         * Gets the value of the journalPersistenceAdapter property.
1608         * 
1609         * @return
1610         *     possible object is
1611         *     {@link DtoJournalPersistenceAdapter }
1612         *     
1613         */
1614        public DtoJournalPersistenceAdapter getJournalPersistenceAdapter() {
1615            return journalPersistenceAdapter;
1616        }
1617
1618        /**
1619         * Sets the value of the journalPersistenceAdapter property.
1620         * 
1621         * @param value
1622         *     allowed object is
1623         *     {@link DtoJournalPersistenceAdapter }
1624         *     
1625         */
1626        public void setJournalPersistenceAdapter(DtoJournalPersistenceAdapter value) {
1627            this.journalPersistenceAdapter = value;
1628        }
1629
1630        /**
1631         * Gets the value of the kahaDB property.
1632         * 
1633         * @return
1634         *     possible object is
1635         *     {@link DtoKahaDB }
1636         *     
1637         */
1638        public DtoKahaDB getKahaDB() {
1639            return kahaDB;
1640        }
1641
1642        /**
1643         * Sets the value of the kahaDB property.
1644         * 
1645         * @param value
1646         *     allowed object is
1647         *     {@link DtoKahaDB }
1648         *     
1649         */
1650        public void setKahaDB(DtoKahaDB value) {
1651            this.kahaDB = value;
1652        }
1653
1654        /**
1655         * Gets the value of the levelDB property.
1656         * 
1657         * @return
1658         *     possible object is
1659         *     {@link DtoLevelDB }
1660         *     
1661         */
1662        public DtoLevelDB getLevelDB() {
1663            return levelDB;
1664        }
1665
1666        /**
1667         * Sets the value of the levelDB property.
1668         * 
1669         * @param value
1670         *     allowed object is
1671         *     {@link DtoLevelDB }
1672         *     
1673         */
1674        public void setLevelDB(DtoLevelDB value) {
1675            this.levelDB = value;
1676        }
1677
1678        /**
1679         * Gets the value of the mKahaDB property.
1680         * 
1681         * @return
1682         *     possible object is
1683         *     {@link DtoMKahaDB }
1684         *     
1685         */
1686        public DtoMKahaDB getMKahaDB() {
1687            return mKahaDB;
1688        }
1689
1690        /**
1691         * Sets the value of the mKahaDB property.
1692         * 
1693         * @param value
1694         *     allowed object is
1695         *     {@link DtoMKahaDB }
1696         *     
1697         */
1698        public void setMKahaDB(DtoMKahaDB value) {
1699            this.mKahaDB = value;
1700        }
1701
1702        /**
1703         * Gets the value of the memoryPersistenceAdapter property.
1704         * 
1705         * @return
1706         *     possible object is
1707         *     {@link DtoMemoryPersistenceAdapter }
1708         *     
1709         */
1710        public DtoMemoryPersistenceAdapter getMemoryPersistenceAdapter() {
1711            return memoryPersistenceAdapter;
1712        }
1713
1714        /**
1715         * Sets the value of the memoryPersistenceAdapter property.
1716         * 
1717         * @param value
1718         *     allowed object is
1719         *     {@link DtoMemoryPersistenceAdapter }
1720         *     
1721         */
1722        public void setMemoryPersistenceAdapter(DtoMemoryPersistenceAdapter value) {
1723            this.memoryPersistenceAdapter = value;
1724        }
1725
1726        /**
1727         * Gets the value of the replicatedLevelDB property.
1728         * 
1729         * @return
1730         *     possible object is
1731         *     {@link DtoReplicatedLevelDB }
1732         *     
1733         */
1734        public DtoReplicatedLevelDB getReplicatedLevelDB() {
1735            return replicatedLevelDB;
1736        }
1737
1738        /**
1739         * Sets the value of the replicatedLevelDB property.
1740         * 
1741         * @param value
1742         *     allowed object is
1743         *     {@link DtoReplicatedLevelDB }
1744         *     
1745         */
1746        public void setReplicatedLevelDB(DtoReplicatedLevelDB value) {
1747            this.replicatedLevelDB = value;
1748        }
1749
1750        /**
1751         * Gets the value of the any property.
1752         * 
1753         * @return
1754         *     possible object is
1755         *     {@link Object }
1756         *     
1757         */
1758        public Object getAny() {
1759            return any;
1760        }
1761
1762        /**
1763         * Sets the value of the any property.
1764         * 
1765         * @param value
1766         *     allowed object is
1767         *     {@link Object }
1768         *     
1769         */
1770        public void setAny(Object value) {
1771            this.any = value;
1772        }
1773
1774        public String toString() {
1775            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
1776            final StringBuilder buffer = new StringBuilder();
1777            append(null, buffer, strategy);
1778            return buffer.toString();
1779        }
1780
1781        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
1782            strategy.appendStart(locator, this, buffer);
1783            appendFields(locator, buffer, strategy);
1784            strategy.appendEnd(locator, this, buffer);
1785            return buffer;
1786        }
1787
1788        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
1789            {
1790                DtoJdbcPersistenceAdapter theJdbcPersistenceAdapter;
1791                theJdbcPersistenceAdapter = this.getJdbcPersistenceAdapter();
1792                strategy.appendField(locator, this, "jdbcPersistenceAdapter", buffer, theJdbcPersistenceAdapter);
1793            }
1794            {
1795                DtoJournalPersistenceAdapter theJournalPersistenceAdapter;
1796                theJournalPersistenceAdapter = this.getJournalPersistenceAdapter();
1797                strategy.appendField(locator, this, "journalPersistenceAdapter", buffer, theJournalPersistenceAdapter);
1798            }
1799            {
1800                DtoKahaDB theKahaDB;
1801                theKahaDB = this.getKahaDB();
1802                strategy.appendField(locator, this, "kahaDB", buffer, theKahaDB);
1803            }
1804            {
1805                DtoLevelDB theLevelDB;
1806                theLevelDB = this.getLevelDB();
1807                strategy.appendField(locator, this, "levelDB", buffer, theLevelDB);
1808            }
1809            {
1810                DtoMKahaDB theMKahaDB;
1811                theMKahaDB = this.getMKahaDB();
1812                strategy.appendField(locator, this, "mKahaDB", buffer, theMKahaDB);
1813            }
1814            {
1815                DtoMemoryPersistenceAdapter theMemoryPersistenceAdapter;
1816                theMemoryPersistenceAdapter = this.getMemoryPersistenceAdapter();
1817                strategy.appendField(locator, this, "memoryPersistenceAdapter", buffer, theMemoryPersistenceAdapter);
1818            }
1819            {
1820                DtoReplicatedLevelDB theReplicatedLevelDB;
1821                theReplicatedLevelDB = this.getReplicatedLevelDB();
1822                strategy.appendField(locator, this, "replicatedLevelDB", buffer, theReplicatedLevelDB);
1823            }
1824            {
1825                Object theAny;
1826                theAny = this.getAny();
1827                strategy.appendField(locator, this, "any", buffer, theAny);
1828            }
1829            return buffer;
1830        }
1831
1832        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
1833            int currentHashCode = 1;
1834            {
1835                DtoJdbcPersistenceAdapter theJdbcPersistenceAdapter;
1836                theJdbcPersistenceAdapter = this.getJdbcPersistenceAdapter();
1837                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "jdbcPersistenceAdapter", theJdbcPersistenceAdapter), currentHashCode, theJdbcPersistenceAdapter);
1838            }
1839            {
1840                DtoJournalPersistenceAdapter theJournalPersistenceAdapter;
1841                theJournalPersistenceAdapter = this.getJournalPersistenceAdapter();
1842                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "journalPersistenceAdapter", theJournalPersistenceAdapter), currentHashCode, theJournalPersistenceAdapter);
1843            }
1844            {
1845                DtoKahaDB theKahaDB;
1846                theKahaDB = this.getKahaDB();
1847                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "kahaDB", theKahaDB), currentHashCode, theKahaDB);
1848            }
1849            {
1850                DtoLevelDB theLevelDB;
1851                theLevelDB = this.getLevelDB();
1852                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "levelDB", theLevelDB), currentHashCode, theLevelDB);
1853            }
1854            {
1855                DtoMKahaDB theMKahaDB;
1856                theMKahaDB = this.getMKahaDB();
1857                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "mKahaDB", theMKahaDB), currentHashCode, theMKahaDB);
1858            }
1859            {
1860                DtoMemoryPersistenceAdapter theMemoryPersistenceAdapter;
1861                theMemoryPersistenceAdapter = this.getMemoryPersistenceAdapter();
1862                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "memoryPersistenceAdapter", theMemoryPersistenceAdapter), currentHashCode, theMemoryPersistenceAdapter);
1863            }
1864            {
1865                DtoReplicatedLevelDB theReplicatedLevelDB;
1866                theReplicatedLevelDB = this.getReplicatedLevelDB();
1867                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "replicatedLevelDB", theReplicatedLevelDB), currentHashCode, theReplicatedLevelDB);
1868            }
1869            {
1870                Object theAny;
1871                theAny = this.getAny();
1872                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
1873            }
1874            return currentHashCode;
1875        }
1876
1877        public int hashCode() {
1878            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
1879            return this.hashCode(null, strategy);
1880        }
1881
1882        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
1883            if (!(object instanceof DtoFilteredKahaDB.PersistenceAdapter)) {
1884                return false;
1885            }
1886            if (this == object) {
1887                return true;
1888            }
1889            final DtoFilteredKahaDB.PersistenceAdapter that = ((DtoFilteredKahaDB.PersistenceAdapter) object);
1890            {
1891                DtoJdbcPersistenceAdapter lhsJdbcPersistenceAdapter;
1892                lhsJdbcPersistenceAdapter = this.getJdbcPersistenceAdapter();
1893                DtoJdbcPersistenceAdapter rhsJdbcPersistenceAdapter;
1894                rhsJdbcPersistenceAdapter = that.getJdbcPersistenceAdapter();
1895                if (!strategy.equals(LocatorUtils.property(thisLocator, "jdbcPersistenceAdapter", lhsJdbcPersistenceAdapter), LocatorUtils.property(thatLocator, "jdbcPersistenceAdapter", rhsJdbcPersistenceAdapter), lhsJdbcPersistenceAdapter, rhsJdbcPersistenceAdapter)) {
1896                    return false;
1897                }
1898            }
1899            {
1900                DtoJournalPersistenceAdapter lhsJournalPersistenceAdapter;
1901                lhsJournalPersistenceAdapter = this.getJournalPersistenceAdapter();
1902                DtoJournalPersistenceAdapter rhsJournalPersistenceAdapter;
1903                rhsJournalPersistenceAdapter = that.getJournalPersistenceAdapter();
1904                if (!strategy.equals(LocatorUtils.property(thisLocator, "journalPersistenceAdapter", lhsJournalPersistenceAdapter), LocatorUtils.property(thatLocator, "journalPersistenceAdapter", rhsJournalPersistenceAdapter), lhsJournalPersistenceAdapter, rhsJournalPersistenceAdapter)) {
1905                    return false;
1906                }
1907            }
1908            {
1909                DtoKahaDB lhsKahaDB;
1910                lhsKahaDB = this.getKahaDB();
1911                DtoKahaDB rhsKahaDB;
1912                rhsKahaDB = that.getKahaDB();
1913                if (!strategy.equals(LocatorUtils.property(thisLocator, "kahaDB", lhsKahaDB), LocatorUtils.property(thatLocator, "kahaDB", rhsKahaDB), lhsKahaDB, rhsKahaDB)) {
1914                    return false;
1915                }
1916            }
1917            {
1918                DtoLevelDB lhsLevelDB;
1919                lhsLevelDB = this.getLevelDB();
1920                DtoLevelDB rhsLevelDB;
1921                rhsLevelDB = that.getLevelDB();
1922                if (!strategy.equals(LocatorUtils.property(thisLocator, "levelDB", lhsLevelDB), LocatorUtils.property(thatLocator, "levelDB", rhsLevelDB), lhsLevelDB, rhsLevelDB)) {
1923                    return false;
1924                }
1925            }
1926            {
1927                DtoMKahaDB lhsMKahaDB;
1928                lhsMKahaDB = this.getMKahaDB();
1929                DtoMKahaDB rhsMKahaDB;
1930                rhsMKahaDB = that.getMKahaDB();
1931                if (!strategy.equals(LocatorUtils.property(thisLocator, "mKahaDB", lhsMKahaDB), LocatorUtils.property(thatLocator, "mKahaDB", rhsMKahaDB), lhsMKahaDB, rhsMKahaDB)) {
1932                    return false;
1933                }
1934            }
1935            {
1936                DtoMemoryPersistenceAdapter lhsMemoryPersistenceAdapter;
1937                lhsMemoryPersistenceAdapter = this.getMemoryPersistenceAdapter();
1938                DtoMemoryPersistenceAdapter rhsMemoryPersistenceAdapter;
1939                rhsMemoryPersistenceAdapter = that.getMemoryPersistenceAdapter();
1940                if (!strategy.equals(LocatorUtils.property(thisLocator, "memoryPersistenceAdapter", lhsMemoryPersistenceAdapter), LocatorUtils.property(thatLocator, "memoryPersistenceAdapter", rhsMemoryPersistenceAdapter), lhsMemoryPersistenceAdapter, rhsMemoryPersistenceAdapter)) {
1941                    return false;
1942                }
1943            }
1944            {
1945                DtoReplicatedLevelDB lhsReplicatedLevelDB;
1946                lhsReplicatedLevelDB = this.getReplicatedLevelDB();
1947                DtoReplicatedLevelDB rhsReplicatedLevelDB;
1948                rhsReplicatedLevelDB = that.getReplicatedLevelDB();
1949                if (!strategy.equals(LocatorUtils.property(thisLocator, "replicatedLevelDB", lhsReplicatedLevelDB), LocatorUtils.property(thatLocator, "replicatedLevelDB", rhsReplicatedLevelDB), lhsReplicatedLevelDB, rhsReplicatedLevelDB)) {
1950                    return false;
1951                }
1952            }
1953            {
1954                Object lhsAny;
1955                lhsAny = this.getAny();
1956                Object rhsAny;
1957                rhsAny = that.getAny();
1958                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
1959                    return false;
1960                }
1961            }
1962            return true;
1963        }
1964
1965        public boolean equals(Object object) {
1966            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
1967            return equals(null, null, object, strategy);
1968        }
1969
1970    }
1971
1972
1973    /**
1974     * <p>Java class for anonymous complex type.
1975     * 
1976     * <p>The following schema fragment specifies the expected content contained within this class.
1977     * 
1978     * <pre>
1979     * &lt;complexType>
1980     *   &lt;complexContent>
1981     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
1982     *       &lt;choice minOccurs="0">
1983     *         &lt;element ref="{http://activemq.apache.org/schema/core}filteredKahaDB"/>
1984     *         &lt;any namespace='##other'/>
1985     *       &lt;/choice>
1986     *     &lt;/restriction>
1987     *   &lt;/complexContent>
1988     * &lt;/complexType>
1989     * </pre>
1990     * 
1991     * 
1992     */
1993    @XmlAccessorType(XmlAccessType.FIELD)
1994    @XmlType(name = "", propOrder = {
1995        "filteredKahaDB",
1996        "any"
1997    })
1998    public static class Template
1999        implements Equals, HashCode, ToString
2000    {
2001
2002        protected DtoFilteredKahaDB filteredKahaDB;
2003        @XmlAnyElement(lax = true)
2004        protected Object any;
2005
2006        /**
2007         * Gets the value of the filteredKahaDB property.
2008         * 
2009         * @return
2010         *     possible object is
2011         *     {@link DtoFilteredKahaDB }
2012         *     
2013         */
2014        public DtoFilteredKahaDB getFilteredKahaDB() {
2015            return filteredKahaDB;
2016        }
2017
2018        /**
2019         * Sets the value of the filteredKahaDB property.
2020         * 
2021         * @param value
2022         *     allowed object is
2023         *     {@link DtoFilteredKahaDB }
2024         *     
2025         */
2026        public void setFilteredKahaDB(DtoFilteredKahaDB value) {
2027            this.filteredKahaDB = value;
2028        }
2029
2030        /**
2031         * Gets the value of the any property.
2032         * 
2033         * @return
2034         *     possible object is
2035         *     {@link Object }
2036         *     
2037         */
2038        public Object getAny() {
2039            return any;
2040        }
2041
2042        /**
2043         * Sets the value of the any property.
2044         * 
2045         * @param value
2046         *     allowed object is
2047         *     {@link Object }
2048         *     
2049         */
2050        public void setAny(Object value) {
2051            this.any = value;
2052        }
2053
2054        public String toString() {
2055            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
2056            final StringBuilder buffer = new StringBuilder();
2057            append(null, buffer, strategy);
2058            return buffer.toString();
2059        }
2060
2061        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
2062            strategy.appendStart(locator, this, buffer);
2063            appendFields(locator, buffer, strategy);
2064            strategy.appendEnd(locator, this, buffer);
2065            return buffer;
2066        }
2067
2068        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
2069            {
2070                DtoFilteredKahaDB theFilteredKahaDB;
2071                theFilteredKahaDB = this.getFilteredKahaDB();
2072                strategy.appendField(locator, this, "filteredKahaDB", buffer, theFilteredKahaDB);
2073            }
2074            {
2075                Object theAny;
2076                theAny = this.getAny();
2077                strategy.appendField(locator, this, "any", buffer, theAny);
2078            }
2079            return buffer;
2080        }
2081
2082        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
2083            int currentHashCode = 1;
2084            {
2085                DtoFilteredKahaDB theFilteredKahaDB;
2086                theFilteredKahaDB = this.getFilteredKahaDB();
2087                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "filteredKahaDB", theFilteredKahaDB), currentHashCode, theFilteredKahaDB);
2088            }
2089            {
2090                Object theAny;
2091                theAny = this.getAny();
2092                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
2093            }
2094            return currentHashCode;
2095        }
2096
2097        public int hashCode() {
2098            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
2099            return this.hashCode(null, strategy);
2100        }
2101
2102        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
2103            if (!(object instanceof DtoFilteredKahaDB.Template)) {
2104                return false;
2105            }
2106            if (this == object) {
2107                return true;
2108            }
2109            final DtoFilteredKahaDB.Template that = ((DtoFilteredKahaDB.Template) object);
2110            {
2111                DtoFilteredKahaDB lhsFilteredKahaDB;
2112                lhsFilteredKahaDB = this.getFilteredKahaDB();
2113                DtoFilteredKahaDB rhsFilteredKahaDB;
2114                rhsFilteredKahaDB = that.getFilteredKahaDB();
2115                if (!strategy.equals(LocatorUtils.property(thisLocator, "filteredKahaDB", lhsFilteredKahaDB), LocatorUtils.property(thatLocator, "filteredKahaDB", rhsFilteredKahaDB), lhsFilteredKahaDB, rhsFilteredKahaDB)) {
2116                    return false;
2117                }
2118            }
2119            {
2120                Object lhsAny;
2121                lhsAny = this.getAny();
2122                Object rhsAny;
2123                rhsAny = that.getAny();
2124                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
2125                    return false;
2126                }
2127            }
2128            return true;
2129        }
2130
2131        public boolean equals(Object object) {
2132            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
2133            return equals(null, null, object, strategy);
2134        }
2135
2136    }
2137
2138
2139    /**
2140     * <p>Java class for anonymous complex type.
2141     * 
2142     * <p>The following schema fragment specifies the expected content contained within this class.
2143     * 
2144     * <pre>
2145     * &lt;complexType>
2146     *   &lt;complexContent>
2147     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
2148     *       &lt;choice minOccurs="0">
2149     *         &lt;element ref="{http://activemq.apache.org/schema/core}storeUsage"/>
2150     *         &lt;any namespace='##other'/>
2151     *       &lt;/choice>
2152     *     &lt;/restriction>
2153     *   &lt;/complexContent>
2154     * &lt;/complexType>
2155     * </pre>
2156     * 
2157     * 
2158     */
2159    @XmlAccessorType(XmlAccessType.FIELD)
2160    @XmlType(name = "", propOrder = {
2161        "storeUsage",
2162        "any"
2163    })
2164    public static class Usage
2165        implements Equals, HashCode, ToString
2166    {
2167
2168        protected DtoStoreUsage storeUsage;
2169        @XmlAnyElement(lax = true)
2170        protected Object any;
2171
2172        /**
2173         * Gets the value of the storeUsage property.
2174         * 
2175         * @return
2176         *     possible object is
2177         *     {@link DtoStoreUsage }
2178         *     
2179         */
2180        public DtoStoreUsage getStoreUsage() {
2181            return storeUsage;
2182        }
2183
2184        /**
2185         * Sets the value of the storeUsage property.
2186         * 
2187         * @param value
2188         *     allowed object is
2189         *     {@link DtoStoreUsage }
2190         *     
2191         */
2192        public void setStoreUsage(DtoStoreUsage value) {
2193            this.storeUsage = value;
2194        }
2195
2196        /**
2197         * Gets the value of the any property.
2198         * 
2199         * @return
2200         *     possible object is
2201         *     {@link Object }
2202         *     
2203         */
2204        public Object getAny() {
2205            return any;
2206        }
2207
2208        /**
2209         * Sets the value of the any property.
2210         * 
2211         * @param value
2212         *     allowed object is
2213         *     {@link Object }
2214         *     
2215         */
2216        public void setAny(Object value) {
2217            this.any = value;
2218        }
2219
2220        public String toString() {
2221            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
2222            final StringBuilder buffer = new StringBuilder();
2223            append(null, buffer, strategy);
2224            return buffer.toString();
2225        }
2226
2227        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
2228            strategy.appendStart(locator, this, buffer);
2229            appendFields(locator, buffer, strategy);
2230            strategy.appendEnd(locator, this, buffer);
2231            return buffer;
2232        }
2233
2234        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
2235            {
2236                DtoStoreUsage theStoreUsage;
2237                theStoreUsage = this.getStoreUsage();
2238                strategy.appendField(locator, this, "storeUsage", buffer, theStoreUsage);
2239            }
2240            {
2241                Object theAny;
2242                theAny = this.getAny();
2243                strategy.appendField(locator, this, "any", buffer, theAny);
2244            }
2245            return buffer;
2246        }
2247
2248        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
2249            int currentHashCode = 1;
2250            {
2251                DtoStoreUsage theStoreUsage;
2252                theStoreUsage = this.getStoreUsage();
2253                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "storeUsage", theStoreUsage), currentHashCode, theStoreUsage);
2254            }
2255            {
2256                Object theAny;
2257                theAny = this.getAny();
2258                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
2259            }
2260            return currentHashCode;
2261        }
2262
2263        public int hashCode() {
2264            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
2265            return this.hashCode(null, strategy);
2266        }
2267
2268        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
2269            if (!(object instanceof DtoFilteredKahaDB.Usage)) {
2270                return false;
2271            }
2272            if (this == object) {
2273                return true;
2274            }
2275            final DtoFilteredKahaDB.Usage that = ((DtoFilteredKahaDB.Usage) object);
2276            {
2277                DtoStoreUsage lhsStoreUsage;
2278                lhsStoreUsage = this.getStoreUsage();
2279                DtoStoreUsage rhsStoreUsage;
2280                rhsStoreUsage = that.getStoreUsage();
2281                if (!strategy.equals(LocatorUtils.property(thisLocator, "storeUsage", lhsStoreUsage), LocatorUtils.property(thatLocator, "storeUsage", rhsStoreUsage), lhsStoreUsage, rhsStoreUsage)) {
2282                    return false;
2283                }
2284            }
2285            {
2286                Object lhsAny;
2287                lhsAny = this.getAny();
2288                Object rhsAny;
2289                rhsAny = that.getAny();
2290                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
2291                    return false;
2292                }
2293            }
2294            return true;
2295        }
2296
2297        public boolean equals(Object object) {
2298            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
2299            return equals(null, null, object, strategy);
2300        }
2301
2302    }
2303
2304}