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: 2020.03.31 at 08:59:25 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="broker" 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}destinationPathSeparatorPlugin"/>
059 *                     &lt;element ref="{http://activemq.apache.org/schema/core}destinationsPlugin"/>
060 *                     &lt;element ref="{http://activemq.apache.org/schema/core}forcePersistencyModeBroker"/>
061 *                     &lt;element ref="{http://activemq.apache.org/schema/core}loggingBrokerPlugin"/>
062 *                     &lt;element ref="{http://activemq.apache.org/schema/core}multicastTraceBrokerPlugin"/>
063 *                     &lt;element ref="{http://activemq.apache.org/schema/core}redeliveryPlugin"/>
064 *                     &lt;element ref="{http://activemq.apache.org/schema/core}timeStampingBrokerPlugin"/>
065 *                     &lt;element ref="{http://activemq.apache.org/schema/core}traceBrokerPathPlugin"/>
066 *                     &lt;element ref="{http://activemq.apache.org/schema/core}udpTraceBrokerPlugin"/>
067 *                     &lt;any namespace='##other'/>
068 *                   &lt;/choice>
069 *                 &lt;/restriction>
070 *               &lt;/complexContent>
071 *             &lt;/complexType>
072 *           &lt;/element>
073 *           &lt;element name="wrapped" minOccurs="0">
074 *             &lt;complexType>
075 *               &lt;complexContent>
076 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
077 *                   &lt;choice minOccurs="0">
078 *                     &lt;element ref="{http://activemq.apache.org/schema/core}fixedCountSubscriptionRecoveryPolicy"/>
079 *                     &lt;element ref="{http://activemq.apache.org/schema/core}fixedSizedSubscriptionRecoveryPolicy"/>
080 *                     &lt;element ref="{http://activemq.apache.org/schema/core}lastImageSubscriptionRecoveryPolicy"/>
081 *                     &lt;element ref="{http://activemq.apache.org/schema/core}noSubscriptionRecoveryPolicy"/>
082 *                     &lt;element ref="{http://activemq.apache.org/schema/core}queryBasedSubscriptionRecoveryPolicy"/>
083 *                     &lt;element ref="{http://activemq.apache.org/schema/core}retainedMessageSubscriptionRecoveryPolicy"/>
084 *                     &lt;element ref="{http://activemq.apache.org/schema/core}timedSubscriptionRecoveryPolicy"/>
085 *                     &lt;any namespace='##other'/>
086 *                   &lt;/choice>
087 *                 &lt;/restriction>
088 *               &lt;/complexContent>
089 *             &lt;/complexType>
090 *           &lt;/element>
091 *           &lt;any namespace='##other' maxOccurs="unbounded" minOccurs="0"/>
092 *         &lt;/choice>
093 *       &lt;/choice>
094 *       &lt;attribute name="broker" type="{http://www.w3.org/2001/XMLSchema}string" />
095 *       &lt;attribute name="wrapped" type="{http://www.w3.org/2001/XMLSchema}string" />
096 *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
097 *       &lt;anyAttribute processContents='lax' namespace='##other'/>
098 *     &lt;/restriction>
099 *   &lt;/complexContent>
100 * &lt;/complexType>
101 * </pre>
102 * 
103 * 
104 */
105@XmlAccessorType(XmlAccessType.FIELD)
106@XmlType(name = "", propOrder = {
107    "brokerOrWrappedOrAny"
108})
109@XmlRootElement(name = "retainedMessageSubscriptionRecoveryPolicy")
110public class DtoRetainedMessageSubscriptionRecoveryPolicy
111    implements Equals, HashCode, ToString
112{
113
114    @XmlElementRefs({
115        @XmlElementRef(name = "broker", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false),
116        @XmlElementRef(name = "wrapped", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false)
117    })
118    @XmlAnyElement(lax = true)
119    protected List<Object> brokerOrWrappedOrAny;
120    @XmlAttribute(name = "broker")
121    protected String broker;
122    @XmlAttribute(name = "wrapped")
123    protected String wrapped;
124    @XmlAttribute(name = "id")
125    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
126    @XmlID
127    @XmlSchemaType(name = "ID")
128    protected String id;
129    @XmlAnyAttribute
130    private Map<QName, String> otherAttributes = new HashMap<QName, String>();
131
132    /**
133     * Gets the value of the brokerOrWrappedOrAny property.
134     * 
135     * <p>
136     * This accessor method returns a reference to the live list,
137     * not a snapshot. Therefore any modification you make to the
138     * returned list will be present inside the JAXB object.
139     * This is why there is not a <CODE>set</CODE> method for the brokerOrWrappedOrAny property.
140     * 
141     * <p>
142     * For example, to add a new item, do as follows:
143     * <pre>
144     *    getBrokerOrWrappedOrAny().add(newItem);
145     * </pre>
146     * 
147     * 
148     * <p>
149     * Objects of the following type(s) are allowed in the list
150     * {@link JAXBElement }{@code <}{@link DtoRetainedMessageSubscriptionRecoveryPolicy.Broker }{@code >}
151     * {@link Object }
152     * {@link JAXBElement }{@code <}{@link DtoRetainedMessageSubscriptionRecoveryPolicy.Wrapped }{@code >}
153     * 
154     * 
155     */
156    public List<Object> getBrokerOrWrappedOrAny() {
157        if (brokerOrWrappedOrAny == null) {
158            brokerOrWrappedOrAny = new ArrayList<Object>();
159        }
160        return this.brokerOrWrappedOrAny;
161    }
162
163    /**
164     * Gets the value of the broker property.
165     * 
166     * @return
167     *     possible object is
168     *     {@link String }
169     *     
170     */
171    public String getBroker() {
172        return broker;
173    }
174
175    /**
176     * Sets the value of the broker property.
177     * 
178     * @param value
179     *     allowed object is
180     *     {@link String }
181     *     
182     */
183    public void setBroker(String value) {
184        this.broker = value;
185    }
186
187    /**
188     * Gets the value of the wrapped property.
189     * 
190     * @return
191     *     possible object is
192     *     {@link String }
193     *     
194     */
195    public String getWrapped() {
196        return wrapped;
197    }
198
199    /**
200     * Sets the value of the wrapped property.
201     * 
202     * @param value
203     *     allowed object is
204     *     {@link String }
205     *     
206     */
207    public void setWrapped(String value) {
208        this.wrapped = value;
209    }
210
211    /**
212     * Gets the value of the id property.
213     * 
214     * @return
215     *     possible object is
216     *     {@link String }
217     *     
218     */
219    public String getId() {
220        return id;
221    }
222
223    /**
224     * Sets the value of the id property.
225     * 
226     * @param value
227     *     allowed object is
228     *     {@link String }
229     *     
230     */
231    public void setId(String value) {
232        this.id = value;
233    }
234
235    /**
236     * Gets a map that contains attributes that aren't bound to any typed property on this class.
237     * 
238     * <p>
239     * the map is keyed by the name of the attribute and 
240     * the value is the string value of the attribute.
241     * 
242     * the map returned by this method is live, and you can add new attribute
243     * by updating the map directly. Because of this design, there's no setter.
244     * 
245     * 
246     * @return
247     *     always non-null
248     */
249    public Map<QName, String> getOtherAttributes() {
250        return otherAttributes;
251    }
252
253    public String toString() {
254        final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
255        final StringBuilder buffer = new StringBuilder();
256        append(null, buffer, strategy);
257        return buffer.toString();
258    }
259
260    public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
261        strategy.appendStart(locator, this, buffer);
262        appendFields(locator, buffer, strategy);
263        strategy.appendEnd(locator, this, buffer);
264        return buffer;
265    }
266
267    public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
268        {
269            List<Object> theBrokerOrWrappedOrAny;
270            theBrokerOrWrappedOrAny = (((this.brokerOrWrappedOrAny!= null)&&(!this.brokerOrWrappedOrAny.isEmpty()))?this.getBrokerOrWrappedOrAny():null);
271            strategy.appendField(locator, this, "brokerOrWrappedOrAny", buffer, theBrokerOrWrappedOrAny);
272        }
273        {
274            String theBroker;
275            theBroker = this.getBroker();
276            strategy.appendField(locator, this, "broker", buffer, theBroker);
277        }
278        {
279            String theWrapped;
280            theWrapped = this.getWrapped();
281            strategy.appendField(locator, this, "wrapped", buffer, theWrapped);
282        }
283        {
284            String theId;
285            theId = this.getId();
286            strategy.appendField(locator, this, "id", buffer, theId);
287        }
288        return buffer;
289    }
290
291    public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
292        int currentHashCode = 1;
293        {
294            List<Object> theBrokerOrWrappedOrAny;
295            theBrokerOrWrappedOrAny = (((this.brokerOrWrappedOrAny!= null)&&(!this.brokerOrWrappedOrAny.isEmpty()))?this.getBrokerOrWrappedOrAny():null);
296            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "brokerOrWrappedOrAny", theBrokerOrWrappedOrAny), currentHashCode, theBrokerOrWrappedOrAny);
297        }
298        {
299            String theBroker;
300            theBroker = this.getBroker();
301            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "broker", theBroker), currentHashCode, theBroker);
302        }
303        {
304            String theWrapped;
305            theWrapped = this.getWrapped();
306            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "wrapped", theWrapped), currentHashCode, theWrapped);
307        }
308        {
309            String theId;
310            theId = this.getId();
311            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "id", theId), currentHashCode, theId);
312        }
313        return currentHashCode;
314    }
315
316    public int hashCode() {
317        final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
318        return this.hashCode(null, strategy);
319    }
320
321    public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
322        if (!(object instanceof DtoRetainedMessageSubscriptionRecoveryPolicy)) {
323            return false;
324        }
325        if (this == object) {
326            return true;
327        }
328        final DtoRetainedMessageSubscriptionRecoveryPolicy that = ((DtoRetainedMessageSubscriptionRecoveryPolicy) object);
329        {
330            List<Object> lhsBrokerOrWrappedOrAny;
331            lhsBrokerOrWrappedOrAny = (((this.brokerOrWrappedOrAny!= null)&&(!this.brokerOrWrappedOrAny.isEmpty()))?this.getBrokerOrWrappedOrAny():null);
332            List<Object> rhsBrokerOrWrappedOrAny;
333            rhsBrokerOrWrappedOrAny = (((that.brokerOrWrappedOrAny!= null)&&(!that.brokerOrWrappedOrAny.isEmpty()))?that.getBrokerOrWrappedOrAny():null);
334            if (!strategy.equals(LocatorUtils.property(thisLocator, "brokerOrWrappedOrAny", lhsBrokerOrWrappedOrAny), LocatorUtils.property(thatLocator, "brokerOrWrappedOrAny", rhsBrokerOrWrappedOrAny), lhsBrokerOrWrappedOrAny, rhsBrokerOrWrappedOrAny)) {
335                return false;
336            }
337        }
338        {
339            String lhsBroker;
340            lhsBroker = this.getBroker();
341            String rhsBroker;
342            rhsBroker = that.getBroker();
343            if (!strategy.equals(LocatorUtils.property(thisLocator, "broker", lhsBroker), LocatorUtils.property(thatLocator, "broker", rhsBroker), lhsBroker, rhsBroker)) {
344                return false;
345            }
346        }
347        {
348            String lhsWrapped;
349            lhsWrapped = this.getWrapped();
350            String rhsWrapped;
351            rhsWrapped = that.getWrapped();
352            if (!strategy.equals(LocatorUtils.property(thisLocator, "wrapped", lhsWrapped), LocatorUtils.property(thatLocator, "wrapped", rhsWrapped), lhsWrapped, rhsWrapped)) {
353                return false;
354            }
355        }
356        {
357            String lhsId;
358            lhsId = this.getId();
359            String rhsId;
360            rhsId = that.getId();
361            if (!strategy.equals(LocatorUtils.property(thisLocator, "id", lhsId), LocatorUtils.property(thatLocator, "id", rhsId), lhsId, rhsId)) {
362                return false;
363            }
364        }
365        return true;
366    }
367
368    public boolean equals(Object object) {
369        final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
370        return equals(null, null, object, strategy);
371    }
372
373
374    /**
375     * <p>Java class for anonymous complex type.
376     * 
377     * <p>The following schema fragment specifies the expected content contained within this class.
378     * 
379     * <pre>
380     * &lt;complexType>
381     *   &lt;complexContent>
382     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
383     *       &lt;choice minOccurs="0">
384     *         &lt;element ref="{http://activemq.apache.org/schema/core}destinationPathSeparatorPlugin"/>
385     *         &lt;element ref="{http://activemq.apache.org/schema/core}destinationsPlugin"/>
386     *         &lt;element ref="{http://activemq.apache.org/schema/core}forcePersistencyModeBroker"/>
387     *         &lt;element ref="{http://activemq.apache.org/schema/core}loggingBrokerPlugin"/>
388     *         &lt;element ref="{http://activemq.apache.org/schema/core}multicastTraceBrokerPlugin"/>
389     *         &lt;element ref="{http://activemq.apache.org/schema/core}redeliveryPlugin"/>
390     *         &lt;element ref="{http://activemq.apache.org/schema/core}timeStampingBrokerPlugin"/>
391     *         &lt;element ref="{http://activemq.apache.org/schema/core}traceBrokerPathPlugin"/>
392     *         &lt;element ref="{http://activemq.apache.org/schema/core}udpTraceBrokerPlugin"/>
393     *         &lt;any namespace='##other'/>
394     *       &lt;/choice>
395     *     &lt;/restriction>
396     *   &lt;/complexContent>
397     * &lt;/complexType>
398     * </pre>
399     * 
400     * 
401     */
402    @XmlAccessorType(XmlAccessType.FIELD)
403    @XmlType(name = "", propOrder = {
404        "destinationPathSeparatorPlugin",
405        "destinationsPlugin",
406        "forcePersistencyModeBroker",
407        "loggingBrokerPlugin",
408        "multicastTraceBrokerPlugin",
409        "redeliveryPlugin",
410        "timeStampingBrokerPlugin",
411        "traceBrokerPathPlugin",
412        "udpTraceBrokerPlugin",
413        "any"
414    })
415    public static class Broker
416        implements Equals, HashCode, ToString
417    {
418
419        protected DtoDestinationPathSeparatorPlugin destinationPathSeparatorPlugin;
420        protected DtoDestinationsPlugin destinationsPlugin;
421        protected DtoForcePersistencyModeBroker forcePersistencyModeBroker;
422        protected DtoLoggingBrokerPlugin loggingBrokerPlugin;
423        protected DtoMulticastTraceBrokerPlugin multicastTraceBrokerPlugin;
424        protected DtoRedeliveryPlugin redeliveryPlugin;
425        protected DtoTimeStampingBrokerPlugin timeStampingBrokerPlugin;
426        protected DtoTraceBrokerPathPlugin traceBrokerPathPlugin;
427        protected DtoUdpTraceBrokerPlugin udpTraceBrokerPlugin;
428        @XmlAnyElement(lax = true)
429        protected Object any;
430
431        /**
432         * Gets the value of the destinationPathSeparatorPlugin property.
433         * 
434         * @return
435         *     possible object is
436         *     {@link DtoDestinationPathSeparatorPlugin }
437         *     
438         */
439        public DtoDestinationPathSeparatorPlugin getDestinationPathSeparatorPlugin() {
440            return destinationPathSeparatorPlugin;
441        }
442
443        /**
444         * Sets the value of the destinationPathSeparatorPlugin property.
445         * 
446         * @param value
447         *     allowed object is
448         *     {@link DtoDestinationPathSeparatorPlugin }
449         *     
450         */
451        public void setDestinationPathSeparatorPlugin(DtoDestinationPathSeparatorPlugin value) {
452            this.destinationPathSeparatorPlugin = value;
453        }
454
455        /**
456         * Gets the value of the destinationsPlugin property.
457         * 
458         * @return
459         *     possible object is
460         *     {@link DtoDestinationsPlugin }
461         *     
462         */
463        public DtoDestinationsPlugin getDestinationsPlugin() {
464            return destinationsPlugin;
465        }
466
467        /**
468         * Sets the value of the destinationsPlugin property.
469         * 
470         * @param value
471         *     allowed object is
472         *     {@link DtoDestinationsPlugin }
473         *     
474         */
475        public void setDestinationsPlugin(DtoDestinationsPlugin value) {
476            this.destinationsPlugin = value;
477        }
478
479        /**
480         * Gets the value of the forcePersistencyModeBroker property.
481         * 
482         * @return
483         *     possible object is
484         *     {@link DtoForcePersistencyModeBroker }
485         *     
486         */
487        public DtoForcePersistencyModeBroker getForcePersistencyModeBroker() {
488            return forcePersistencyModeBroker;
489        }
490
491        /**
492         * Sets the value of the forcePersistencyModeBroker property.
493         * 
494         * @param value
495         *     allowed object is
496         *     {@link DtoForcePersistencyModeBroker }
497         *     
498         */
499        public void setForcePersistencyModeBroker(DtoForcePersistencyModeBroker value) {
500            this.forcePersistencyModeBroker = value;
501        }
502
503        /**
504         * Gets the value of the loggingBrokerPlugin property.
505         * 
506         * @return
507         *     possible object is
508         *     {@link DtoLoggingBrokerPlugin }
509         *     
510         */
511        public DtoLoggingBrokerPlugin getLoggingBrokerPlugin() {
512            return loggingBrokerPlugin;
513        }
514
515        /**
516         * Sets the value of the loggingBrokerPlugin property.
517         * 
518         * @param value
519         *     allowed object is
520         *     {@link DtoLoggingBrokerPlugin }
521         *     
522         */
523        public void setLoggingBrokerPlugin(DtoLoggingBrokerPlugin value) {
524            this.loggingBrokerPlugin = value;
525        }
526
527        /**
528         * Gets the value of the multicastTraceBrokerPlugin property.
529         * 
530         * @return
531         *     possible object is
532         *     {@link DtoMulticastTraceBrokerPlugin }
533         *     
534         */
535        public DtoMulticastTraceBrokerPlugin getMulticastTraceBrokerPlugin() {
536            return multicastTraceBrokerPlugin;
537        }
538
539        /**
540         * Sets the value of the multicastTraceBrokerPlugin property.
541         * 
542         * @param value
543         *     allowed object is
544         *     {@link DtoMulticastTraceBrokerPlugin }
545         *     
546         */
547        public void setMulticastTraceBrokerPlugin(DtoMulticastTraceBrokerPlugin value) {
548            this.multicastTraceBrokerPlugin = value;
549        }
550
551        /**
552         * Gets the value of the redeliveryPlugin property.
553         * 
554         * @return
555         *     possible object is
556         *     {@link DtoRedeliveryPlugin }
557         *     
558         */
559        public DtoRedeliveryPlugin getRedeliveryPlugin() {
560            return redeliveryPlugin;
561        }
562
563        /**
564         * Sets the value of the redeliveryPlugin property.
565         * 
566         * @param value
567         *     allowed object is
568         *     {@link DtoRedeliveryPlugin }
569         *     
570         */
571        public void setRedeliveryPlugin(DtoRedeliveryPlugin value) {
572            this.redeliveryPlugin = value;
573        }
574
575        /**
576         * Gets the value of the timeStampingBrokerPlugin property.
577         * 
578         * @return
579         *     possible object is
580         *     {@link DtoTimeStampingBrokerPlugin }
581         *     
582         */
583        public DtoTimeStampingBrokerPlugin getTimeStampingBrokerPlugin() {
584            return timeStampingBrokerPlugin;
585        }
586
587        /**
588         * Sets the value of the timeStampingBrokerPlugin property.
589         * 
590         * @param value
591         *     allowed object is
592         *     {@link DtoTimeStampingBrokerPlugin }
593         *     
594         */
595        public void setTimeStampingBrokerPlugin(DtoTimeStampingBrokerPlugin value) {
596            this.timeStampingBrokerPlugin = value;
597        }
598
599        /**
600         * Gets the value of the traceBrokerPathPlugin property.
601         * 
602         * @return
603         *     possible object is
604         *     {@link DtoTraceBrokerPathPlugin }
605         *     
606         */
607        public DtoTraceBrokerPathPlugin getTraceBrokerPathPlugin() {
608            return traceBrokerPathPlugin;
609        }
610
611        /**
612         * Sets the value of the traceBrokerPathPlugin property.
613         * 
614         * @param value
615         *     allowed object is
616         *     {@link DtoTraceBrokerPathPlugin }
617         *     
618         */
619        public void setTraceBrokerPathPlugin(DtoTraceBrokerPathPlugin value) {
620            this.traceBrokerPathPlugin = value;
621        }
622
623        /**
624         * Gets the value of the udpTraceBrokerPlugin property.
625         * 
626         * @return
627         *     possible object is
628         *     {@link DtoUdpTraceBrokerPlugin }
629         *     
630         */
631        public DtoUdpTraceBrokerPlugin getUdpTraceBrokerPlugin() {
632            return udpTraceBrokerPlugin;
633        }
634
635        /**
636         * Sets the value of the udpTraceBrokerPlugin property.
637         * 
638         * @param value
639         *     allowed object is
640         *     {@link DtoUdpTraceBrokerPlugin }
641         *     
642         */
643        public void setUdpTraceBrokerPlugin(DtoUdpTraceBrokerPlugin value) {
644            this.udpTraceBrokerPlugin = value;
645        }
646
647        /**
648         * Gets the value of the any property.
649         * 
650         * @return
651         *     possible object is
652         *     {@link Object }
653         *     
654         */
655        public Object getAny() {
656            return any;
657        }
658
659        /**
660         * Sets the value of the any property.
661         * 
662         * @param value
663         *     allowed object is
664         *     {@link Object }
665         *     
666         */
667        public void setAny(Object value) {
668            this.any = value;
669        }
670
671        public String toString() {
672            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
673            final StringBuilder buffer = new StringBuilder();
674            append(null, buffer, strategy);
675            return buffer.toString();
676        }
677
678        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
679            strategy.appendStart(locator, this, buffer);
680            appendFields(locator, buffer, strategy);
681            strategy.appendEnd(locator, this, buffer);
682            return buffer;
683        }
684
685        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
686            {
687                DtoDestinationPathSeparatorPlugin theDestinationPathSeparatorPlugin;
688                theDestinationPathSeparatorPlugin = this.getDestinationPathSeparatorPlugin();
689                strategy.appendField(locator, this, "destinationPathSeparatorPlugin", buffer, theDestinationPathSeparatorPlugin);
690            }
691            {
692                DtoDestinationsPlugin theDestinationsPlugin;
693                theDestinationsPlugin = this.getDestinationsPlugin();
694                strategy.appendField(locator, this, "destinationsPlugin", buffer, theDestinationsPlugin);
695            }
696            {
697                DtoForcePersistencyModeBroker theForcePersistencyModeBroker;
698                theForcePersistencyModeBroker = this.getForcePersistencyModeBroker();
699                strategy.appendField(locator, this, "forcePersistencyModeBroker", buffer, theForcePersistencyModeBroker);
700            }
701            {
702                DtoLoggingBrokerPlugin theLoggingBrokerPlugin;
703                theLoggingBrokerPlugin = this.getLoggingBrokerPlugin();
704                strategy.appendField(locator, this, "loggingBrokerPlugin", buffer, theLoggingBrokerPlugin);
705            }
706            {
707                DtoMulticastTraceBrokerPlugin theMulticastTraceBrokerPlugin;
708                theMulticastTraceBrokerPlugin = this.getMulticastTraceBrokerPlugin();
709                strategy.appendField(locator, this, "multicastTraceBrokerPlugin", buffer, theMulticastTraceBrokerPlugin);
710            }
711            {
712                DtoRedeliveryPlugin theRedeliveryPlugin;
713                theRedeliveryPlugin = this.getRedeliveryPlugin();
714                strategy.appendField(locator, this, "redeliveryPlugin", buffer, theRedeliveryPlugin);
715            }
716            {
717                DtoTimeStampingBrokerPlugin theTimeStampingBrokerPlugin;
718                theTimeStampingBrokerPlugin = this.getTimeStampingBrokerPlugin();
719                strategy.appendField(locator, this, "timeStampingBrokerPlugin", buffer, theTimeStampingBrokerPlugin);
720            }
721            {
722                DtoTraceBrokerPathPlugin theTraceBrokerPathPlugin;
723                theTraceBrokerPathPlugin = this.getTraceBrokerPathPlugin();
724                strategy.appendField(locator, this, "traceBrokerPathPlugin", buffer, theTraceBrokerPathPlugin);
725            }
726            {
727                DtoUdpTraceBrokerPlugin theUdpTraceBrokerPlugin;
728                theUdpTraceBrokerPlugin = this.getUdpTraceBrokerPlugin();
729                strategy.appendField(locator, this, "udpTraceBrokerPlugin", buffer, theUdpTraceBrokerPlugin);
730            }
731            {
732                Object theAny;
733                theAny = this.getAny();
734                strategy.appendField(locator, this, "any", buffer, theAny);
735            }
736            return buffer;
737        }
738
739        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
740            int currentHashCode = 1;
741            {
742                DtoDestinationPathSeparatorPlugin theDestinationPathSeparatorPlugin;
743                theDestinationPathSeparatorPlugin = this.getDestinationPathSeparatorPlugin();
744                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "destinationPathSeparatorPlugin", theDestinationPathSeparatorPlugin), currentHashCode, theDestinationPathSeparatorPlugin);
745            }
746            {
747                DtoDestinationsPlugin theDestinationsPlugin;
748                theDestinationsPlugin = this.getDestinationsPlugin();
749                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "destinationsPlugin", theDestinationsPlugin), currentHashCode, theDestinationsPlugin);
750            }
751            {
752                DtoForcePersistencyModeBroker theForcePersistencyModeBroker;
753                theForcePersistencyModeBroker = this.getForcePersistencyModeBroker();
754                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "forcePersistencyModeBroker", theForcePersistencyModeBroker), currentHashCode, theForcePersistencyModeBroker);
755            }
756            {
757                DtoLoggingBrokerPlugin theLoggingBrokerPlugin;
758                theLoggingBrokerPlugin = this.getLoggingBrokerPlugin();
759                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "loggingBrokerPlugin", theLoggingBrokerPlugin), currentHashCode, theLoggingBrokerPlugin);
760            }
761            {
762                DtoMulticastTraceBrokerPlugin theMulticastTraceBrokerPlugin;
763                theMulticastTraceBrokerPlugin = this.getMulticastTraceBrokerPlugin();
764                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "multicastTraceBrokerPlugin", theMulticastTraceBrokerPlugin), currentHashCode, theMulticastTraceBrokerPlugin);
765            }
766            {
767                DtoRedeliveryPlugin theRedeliveryPlugin;
768                theRedeliveryPlugin = this.getRedeliveryPlugin();
769                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "redeliveryPlugin", theRedeliveryPlugin), currentHashCode, theRedeliveryPlugin);
770            }
771            {
772                DtoTimeStampingBrokerPlugin theTimeStampingBrokerPlugin;
773                theTimeStampingBrokerPlugin = this.getTimeStampingBrokerPlugin();
774                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "timeStampingBrokerPlugin", theTimeStampingBrokerPlugin), currentHashCode, theTimeStampingBrokerPlugin);
775            }
776            {
777                DtoTraceBrokerPathPlugin theTraceBrokerPathPlugin;
778                theTraceBrokerPathPlugin = this.getTraceBrokerPathPlugin();
779                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "traceBrokerPathPlugin", theTraceBrokerPathPlugin), currentHashCode, theTraceBrokerPathPlugin);
780            }
781            {
782                DtoUdpTraceBrokerPlugin theUdpTraceBrokerPlugin;
783                theUdpTraceBrokerPlugin = this.getUdpTraceBrokerPlugin();
784                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "udpTraceBrokerPlugin", theUdpTraceBrokerPlugin), currentHashCode, theUdpTraceBrokerPlugin);
785            }
786            {
787                Object theAny;
788                theAny = this.getAny();
789                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
790            }
791            return currentHashCode;
792        }
793
794        public int hashCode() {
795            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
796            return this.hashCode(null, strategy);
797        }
798
799        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
800            if (!(object instanceof DtoRetainedMessageSubscriptionRecoveryPolicy.Broker)) {
801                return false;
802            }
803            if (this == object) {
804                return true;
805            }
806            final DtoRetainedMessageSubscriptionRecoveryPolicy.Broker that = ((DtoRetainedMessageSubscriptionRecoveryPolicy.Broker) object);
807            {
808                DtoDestinationPathSeparatorPlugin lhsDestinationPathSeparatorPlugin;
809                lhsDestinationPathSeparatorPlugin = this.getDestinationPathSeparatorPlugin();
810                DtoDestinationPathSeparatorPlugin rhsDestinationPathSeparatorPlugin;
811                rhsDestinationPathSeparatorPlugin = that.getDestinationPathSeparatorPlugin();
812                if (!strategy.equals(LocatorUtils.property(thisLocator, "destinationPathSeparatorPlugin", lhsDestinationPathSeparatorPlugin), LocatorUtils.property(thatLocator, "destinationPathSeparatorPlugin", rhsDestinationPathSeparatorPlugin), lhsDestinationPathSeparatorPlugin, rhsDestinationPathSeparatorPlugin)) {
813                    return false;
814                }
815            }
816            {
817                DtoDestinationsPlugin lhsDestinationsPlugin;
818                lhsDestinationsPlugin = this.getDestinationsPlugin();
819                DtoDestinationsPlugin rhsDestinationsPlugin;
820                rhsDestinationsPlugin = that.getDestinationsPlugin();
821                if (!strategy.equals(LocatorUtils.property(thisLocator, "destinationsPlugin", lhsDestinationsPlugin), LocatorUtils.property(thatLocator, "destinationsPlugin", rhsDestinationsPlugin), lhsDestinationsPlugin, rhsDestinationsPlugin)) {
822                    return false;
823                }
824            }
825            {
826                DtoForcePersistencyModeBroker lhsForcePersistencyModeBroker;
827                lhsForcePersistencyModeBroker = this.getForcePersistencyModeBroker();
828                DtoForcePersistencyModeBroker rhsForcePersistencyModeBroker;
829                rhsForcePersistencyModeBroker = that.getForcePersistencyModeBroker();
830                if (!strategy.equals(LocatorUtils.property(thisLocator, "forcePersistencyModeBroker", lhsForcePersistencyModeBroker), LocatorUtils.property(thatLocator, "forcePersistencyModeBroker", rhsForcePersistencyModeBroker), lhsForcePersistencyModeBroker, rhsForcePersistencyModeBroker)) {
831                    return false;
832                }
833            }
834            {
835                DtoLoggingBrokerPlugin lhsLoggingBrokerPlugin;
836                lhsLoggingBrokerPlugin = this.getLoggingBrokerPlugin();
837                DtoLoggingBrokerPlugin rhsLoggingBrokerPlugin;
838                rhsLoggingBrokerPlugin = that.getLoggingBrokerPlugin();
839                if (!strategy.equals(LocatorUtils.property(thisLocator, "loggingBrokerPlugin", lhsLoggingBrokerPlugin), LocatorUtils.property(thatLocator, "loggingBrokerPlugin", rhsLoggingBrokerPlugin), lhsLoggingBrokerPlugin, rhsLoggingBrokerPlugin)) {
840                    return false;
841                }
842            }
843            {
844                DtoMulticastTraceBrokerPlugin lhsMulticastTraceBrokerPlugin;
845                lhsMulticastTraceBrokerPlugin = this.getMulticastTraceBrokerPlugin();
846                DtoMulticastTraceBrokerPlugin rhsMulticastTraceBrokerPlugin;
847                rhsMulticastTraceBrokerPlugin = that.getMulticastTraceBrokerPlugin();
848                if (!strategy.equals(LocatorUtils.property(thisLocator, "multicastTraceBrokerPlugin", lhsMulticastTraceBrokerPlugin), LocatorUtils.property(thatLocator, "multicastTraceBrokerPlugin", rhsMulticastTraceBrokerPlugin), lhsMulticastTraceBrokerPlugin, rhsMulticastTraceBrokerPlugin)) {
849                    return false;
850                }
851            }
852            {
853                DtoRedeliveryPlugin lhsRedeliveryPlugin;
854                lhsRedeliveryPlugin = this.getRedeliveryPlugin();
855                DtoRedeliveryPlugin rhsRedeliveryPlugin;
856                rhsRedeliveryPlugin = that.getRedeliveryPlugin();
857                if (!strategy.equals(LocatorUtils.property(thisLocator, "redeliveryPlugin", lhsRedeliveryPlugin), LocatorUtils.property(thatLocator, "redeliveryPlugin", rhsRedeliveryPlugin), lhsRedeliveryPlugin, rhsRedeliveryPlugin)) {
858                    return false;
859                }
860            }
861            {
862                DtoTimeStampingBrokerPlugin lhsTimeStampingBrokerPlugin;
863                lhsTimeStampingBrokerPlugin = this.getTimeStampingBrokerPlugin();
864                DtoTimeStampingBrokerPlugin rhsTimeStampingBrokerPlugin;
865                rhsTimeStampingBrokerPlugin = that.getTimeStampingBrokerPlugin();
866                if (!strategy.equals(LocatorUtils.property(thisLocator, "timeStampingBrokerPlugin", lhsTimeStampingBrokerPlugin), LocatorUtils.property(thatLocator, "timeStampingBrokerPlugin", rhsTimeStampingBrokerPlugin), lhsTimeStampingBrokerPlugin, rhsTimeStampingBrokerPlugin)) {
867                    return false;
868                }
869            }
870            {
871                DtoTraceBrokerPathPlugin lhsTraceBrokerPathPlugin;
872                lhsTraceBrokerPathPlugin = this.getTraceBrokerPathPlugin();
873                DtoTraceBrokerPathPlugin rhsTraceBrokerPathPlugin;
874                rhsTraceBrokerPathPlugin = that.getTraceBrokerPathPlugin();
875                if (!strategy.equals(LocatorUtils.property(thisLocator, "traceBrokerPathPlugin", lhsTraceBrokerPathPlugin), LocatorUtils.property(thatLocator, "traceBrokerPathPlugin", rhsTraceBrokerPathPlugin), lhsTraceBrokerPathPlugin, rhsTraceBrokerPathPlugin)) {
876                    return false;
877                }
878            }
879            {
880                DtoUdpTraceBrokerPlugin lhsUdpTraceBrokerPlugin;
881                lhsUdpTraceBrokerPlugin = this.getUdpTraceBrokerPlugin();
882                DtoUdpTraceBrokerPlugin rhsUdpTraceBrokerPlugin;
883                rhsUdpTraceBrokerPlugin = that.getUdpTraceBrokerPlugin();
884                if (!strategy.equals(LocatorUtils.property(thisLocator, "udpTraceBrokerPlugin", lhsUdpTraceBrokerPlugin), LocatorUtils.property(thatLocator, "udpTraceBrokerPlugin", rhsUdpTraceBrokerPlugin), lhsUdpTraceBrokerPlugin, rhsUdpTraceBrokerPlugin)) {
885                    return false;
886                }
887            }
888            {
889                Object lhsAny;
890                lhsAny = this.getAny();
891                Object rhsAny;
892                rhsAny = that.getAny();
893                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
894                    return false;
895                }
896            }
897            return true;
898        }
899
900        public boolean equals(Object object) {
901            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
902            return equals(null, null, object, strategy);
903        }
904
905    }
906
907
908    /**
909     * <p>Java class for anonymous complex type.
910     * 
911     * <p>The following schema fragment specifies the expected content contained within this class.
912     * 
913     * <pre>
914     * &lt;complexType>
915     *   &lt;complexContent>
916     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
917     *       &lt;choice minOccurs="0">
918     *         &lt;element ref="{http://activemq.apache.org/schema/core}fixedCountSubscriptionRecoveryPolicy"/>
919     *         &lt;element ref="{http://activemq.apache.org/schema/core}fixedSizedSubscriptionRecoveryPolicy"/>
920     *         &lt;element ref="{http://activemq.apache.org/schema/core}lastImageSubscriptionRecoveryPolicy"/>
921     *         &lt;element ref="{http://activemq.apache.org/schema/core}noSubscriptionRecoveryPolicy"/>
922     *         &lt;element ref="{http://activemq.apache.org/schema/core}queryBasedSubscriptionRecoveryPolicy"/>
923     *         &lt;element ref="{http://activemq.apache.org/schema/core}retainedMessageSubscriptionRecoveryPolicy"/>
924     *         &lt;element ref="{http://activemq.apache.org/schema/core}timedSubscriptionRecoveryPolicy"/>
925     *         &lt;any namespace='##other'/>
926     *       &lt;/choice>
927     *     &lt;/restriction>
928     *   &lt;/complexContent>
929     * &lt;/complexType>
930     * </pre>
931     * 
932     * 
933     */
934    @XmlAccessorType(XmlAccessType.FIELD)
935    @XmlType(name = "", propOrder = {
936        "fixedCountSubscriptionRecoveryPolicy",
937        "fixedSizedSubscriptionRecoveryPolicy",
938        "lastImageSubscriptionRecoveryPolicy",
939        "noSubscriptionRecoveryPolicy",
940        "queryBasedSubscriptionRecoveryPolicy",
941        "retainedMessageSubscriptionRecoveryPolicy",
942        "timedSubscriptionRecoveryPolicy",
943        "any"
944    })
945    public static class Wrapped
946        implements Equals, HashCode, ToString
947    {
948
949        protected DtoFixedCountSubscriptionRecoveryPolicy fixedCountSubscriptionRecoveryPolicy;
950        protected DtoFixedSizedSubscriptionRecoveryPolicy fixedSizedSubscriptionRecoveryPolicy;
951        protected DtoLastImageSubscriptionRecoveryPolicy lastImageSubscriptionRecoveryPolicy;
952        protected DtoNoSubscriptionRecoveryPolicy noSubscriptionRecoveryPolicy;
953        protected DtoQueryBasedSubscriptionRecoveryPolicy queryBasedSubscriptionRecoveryPolicy;
954        protected DtoRetainedMessageSubscriptionRecoveryPolicy retainedMessageSubscriptionRecoveryPolicy;
955        protected DtoTimedSubscriptionRecoveryPolicy timedSubscriptionRecoveryPolicy;
956        @XmlAnyElement(lax = true)
957        protected Object any;
958
959        /**
960         * Gets the value of the fixedCountSubscriptionRecoveryPolicy property.
961         * 
962         * @return
963         *     possible object is
964         *     {@link DtoFixedCountSubscriptionRecoveryPolicy }
965         *     
966         */
967        public DtoFixedCountSubscriptionRecoveryPolicy getFixedCountSubscriptionRecoveryPolicy() {
968            return fixedCountSubscriptionRecoveryPolicy;
969        }
970
971        /**
972         * Sets the value of the fixedCountSubscriptionRecoveryPolicy property.
973         * 
974         * @param value
975         *     allowed object is
976         *     {@link DtoFixedCountSubscriptionRecoveryPolicy }
977         *     
978         */
979        public void setFixedCountSubscriptionRecoveryPolicy(DtoFixedCountSubscriptionRecoveryPolicy value) {
980            this.fixedCountSubscriptionRecoveryPolicy = value;
981        }
982
983        /**
984         * Gets the value of the fixedSizedSubscriptionRecoveryPolicy property.
985         * 
986         * @return
987         *     possible object is
988         *     {@link DtoFixedSizedSubscriptionRecoveryPolicy }
989         *     
990         */
991        public DtoFixedSizedSubscriptionRecoveryPolicy getFixedSizedSubscriptionRecoveryPolicy() {
992            return fixedSizedSubscriptionRecoveryPolicy;
993        }
994
995        /**
996         * Sets the value of the fixedSizedSubscriptionRecoveryPolicy property.
997         * 
998         * @param value
999         *     allowed object is
1000         *     {@link DtoFixedSizedSubscriptionRecoveryPolicy }
1001         *     
1002         */
1003        public void setFixedSizedSubscriptionRecoveryPolicy(DtoFixedSizedSubscriptionRecoveryPolicy value) {
1004            this.fixedSizedSubscriptionRecoveryPolicy = value;
1005        }
1006
1007        /**
1008         * Gets the value of the lastImageSubscriptionRecoveryPolicy property.
1009         * 
1010         * @return
1011         *     possible object is
1012         *     {@link DtoLastImageSubscriptionRecoveryPolicy }
1013         *     
1014         */
1015        public DtoLastImageSubscriptionRecoveryPolicy getLastImageSubscriptionRecoveryPolicy() {
1016            return lastImageSubscriptionRecoveryPolicy;
1017        }
1018
1019        /**
1020         * Sets the value of the lastImageSubscriptionRecoveryPolicy property.
1021         * 
1022         * @param value
1023         *     allowed object is
1024         *     {@link DtoLastImageSubscriptionRecoveryPolicy }
1025         *     
1026         */
1027        public void setLastImageSubscriptionRecoveryPolicy(DtoLastImageSubscriptionRecoveryPolicy value) {
1028            this.lastImageSubscriptionRecoveryPolicy = value;
1029        }
1030
1031        /**
1032         * Gets the value of the noSubscriptionRecoveryPolicy property.
1033         * 
1034         * @return
1035         *     possible object is
1036         *     {@link DtoNoSubscriptionRecoveryPolicy }
1037         *     
1038         */
1039        public DtoNoSubscriptionRecoveryPolicy getNoSubscriptionRecoveryPolicy() {
1040            return noSubscriptionRecoveryPolicy;
1041        }
1042
1043        /**
1044         * Sets the value of the noSubscriptionRecoveryPolicy property.
1045         * 
1046         * @param value
1047         *     allowed object is
1048         *     {@link DtoNoSubscriptionRecoveryPolicy }
1049         *     
1050         */
1051        public void setNoSubscriptionRecoveryPolicy(DtoNoSubscriptionRecoveryPolicy value) {
1052            this.noSubscriptionRecoveryPolicy = value;
1053        }
1054
1055        /**
1056         * Gets the value of the queryBasedSubscriptionRecoveryPolicy property.
1057         * 
1058         * @return
1059         *     possible object is
1060         *     {@link DtoQueryBasedSubscriptionRecoveryPolicy }
1061         *     
1062         */
1063        public DtoQueryBasedSubscriptionRecoveryPolicy getQueryBasedSubscriptionRecoveryPolicy() {
1064            return queryBasedSubscriptionRecoveryPolicy;
1065        }
1066
1067        /**
1068         * Sets the value of the queryBasedSubscriptionRecoveryPolicy property.
1069         * 
1070         * @param value
1071         *     allowed object is
1072         *     {@link DtoQueryBasedSubscriptionRecoveryPolicy }
1073         *     
1074         */
1075        public void setQueryBasedSubscriptionRecoveryPolicy(DtoQueryBasedSubscriptionRecoveryPolicy value) {
1076            this.queryBasedSubscriptionRecoveryPolicy = value;
1077        }
1078
1079        /**
1080         * Gets the value of the retainedMessageSubscriptionRecoveryPolicy property.
1081         * 
1082         * @return
1083         *     possible object is
1084         *     {@link DtoRetainedMessageSubscriptionRecoveryPolicy }
1085         *     
1086         */
1087        public DtoRetainedMessageSubscriptionRecoveryPolicy getRetainedMessageSubscriptionRecoveryPolicy() {
1088            return retainedMessageSubscriptionRecoveryPolicy;
1089        }
1090
1091        /**
1092         * Sets the value of the retainedMessageSubscriptionRecoveryPolicy property.
1093         * 
1094         * @param value
1095         *     allowed object is
1096         *     {@link DtoRetainedMessageSubscriptionRecoveryPolicy }
1097         *     
1098         */
1099        public void setRetainedMessageSubscriptionRecoveryPolicy(DtoRetainedMessageSubscriptionRecoveryPolicy value) {
1100            this.retainedMessageSubscriptionRecoveryPolicy = value;
1101        }
1102
1103        /**
1104         * Gets the value of the timedSubscriptionRecoveryPolicy property.
1105         * 
1106         * @return
1107         *     possible object is
1108         *     {@link DtoTimedSubscriptionRecoveryPolicy }
1109         *     
1110         */
1111        public DtoTimedSubscriptionRecoveryPolicy getTimedSubscriptionRecoveryPolicy() {
1112            return timedSubscriptionRecoveryPolicy;
1113        }
1114
1115        /**
1116         * Sets the value of the timedSubscriptionRecoveryPolicy property.
1117         * 
1118         * @param value
1119         *     allowed object is
1120         *     {@link DtoTimedSubscriptionRecoveryPolicy }
1121         *     
1122         */
1123        public void setTimedSubscriptionRecoveryPolicy(DtoTimedSubscriptionRecoveryPolicy value) {
1124            this.timedSubscriptionRecoveryPolicy = value;
1125        }
1126
1127        /**
1128         * Gets the value of the any property.
1129         * 
1130         * @return
1131         *     possible object is
1132         *     {@link Object }
1133         *     
1134         */
1135        public Object getAny() {
1136            return any;
1137        }
1138
1139        /**
1140         * Sets the value of the any property.
1141         * 
1142         * @param value
1143         *     allowed object is
1144         *     {@link Object }
1145         *     
1146         */
1147        public void setAny(Object value) {
1148            this.any = value;
1149        }
1150
1151        public String toString() {
1152            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
1153            final StringBuilder buffer = new StringBuilder();
1154            append(null, buffer, strategy);
1155            return buffer.toString();
1156        }
1157
1158        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
1159            strategy.appendStart(locator, this, buffer);
1160            appendFields(locator, buffer, strategy);
1161            strategy.appendEnd(locator, this, buffer);
1162            return buffer;
1163        }
1164
1165        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
1166            {
1167                DtoFixedCountSubscriptionRecoveryPolicy theFixedCountSubscriptionRecoveryPolicy;
1168                theFixedCountSubscriptionRecoveryPolicy = this.getFixedCountSubscriptionRecoveryPolicy();
1169                strategy.appendField(locator, this, "fixedCountSubscriptionRecoveryPolicy", buffer, theFixedCountSubscriptionRecoveryPolicy);
1170            }
1171            {
1172                DtoFixedSizedSubscriptionRecoveryPolicy theFixedSizedSubscriptionRecoveryPolicy;
1173                theFixedSizedSubscriptionRecoveryPolicy = this.getFixedSizedSubscriptionRecoveryPolicy();
1174                strategy.appendField(locator, this, "fixedSizedSubscriptionRecoveryPolicy", buffer, theFixedSizedSubscriptionRecoveryPolicy);
1175            }
1176            {
1177                DtoLastImageSubscriptionRecoveryPolicy theLastImageSubscriptionRecoveryPolicy;
1178                theLastImageSubscriptionRecoveryPolicy = this.getLastImageSubscriptionRecoveryPolicy();
1179                strategy.appendField(locator, this, "lastImageSubscriptionRecoveryPolicy", buffer, theLastImageSubscriptionRecoveryPolicy);
1180            }
1181            {
1182                DtoNoSubscriptionRecoveryPolicy theNoSubscriptionRecoveryPolicy;
1183                theNoSubscriptionRecoveryPolicy = this.getNoSubscriptionRecoveryPolicy();
1184                strategy.appendField(locator, this, "noSubscriptionRecoveryPolicy", buffer, theNoSubscriptionRecoveryPolicy);
1185            }
1186            {
1187                DtoQueryBasedSubscriptionRecoveryPolicy theQueryBasedSubscriptionRecoveryPolicy;
1188                theQueryBasedSubscriptionRecoveryPolicy = this.getQueryBasedSubscriptionRecoveryPolicy();
1189                strategy.appendField(locator, this, "queryBasedSubscriptionRecoveryPolicy", buffer, theQueryBasedSubscriptionRecoveryPolicy);
1190            }
1191            {
1192                DtoRetainedMessageSubscriptionRecoveryPolicy theRetainedMessageSubscriptionRecoveryPolicy;
1193                theRetainedMessageSubscriptionRecoveryPolicy = this.getRetainedMessageSubscriptionRecoveryPolicy();
1194                strategy.appendField(locator, this, "retainedMessageSubscriptionRecoveryPolicy", buffer, theRetainedMessageSubscriptionRecoveryPolicy);
1195            }
1196            {
1197                DtoTimedSubscriptionRecoveryPolicy theTimedSubscriptionRecoveryPolicy;
1198                theTimedSubscriptionRecoveryPolicy = this.getTimedSubscriptionRecoveryPolicy();
1199                strategy.appendField(locator, this, "timedSubscriptionRecoveryPolicy", buffer, theTimedSubscriptionRecoveryPolicy);
1200            }
1201            {
1202                Object theAny;
1203                theAny = this.getAny();
1204                strategy.appendField(locator, this, "any", buffer, theAny);
1205            }
1206            return buffer;
1207        }
1208
1209        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
1210            int currentHashCode = 1;
1211            {
1212                DtoFixedCountSubscriptionRecoveryPolicy theFixedCountSubscriptionRecoveryPolicy;
1213                theFixedCountSubscriptionRecoveryPolicy = this.getFixedCountSubscriptionRecoveryPolicy();
1214                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "fixedCountSubscriptionRecoveryPolicy", theFixedCountSubscriptionRecoveryPolicy), currentHashCode, theFixedCountSubscriptionRecoveryPolicy);
1215            }
1216            {
1217                DtoFixedSizedSubscriptionRecoveryPolicy theFixedSizedSubscriptionRecoveryPolicy;
1218                theFixedSizedSubscriptionRecoveryPolicy = this.getFixedSizedSubscriptionRecoveryPolicy();
1219                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "fixedSizedSubscriptionRecoveryPolicy", theFixedSizedSubscriptionRecoveryPolicy), currentHashCode, theFixedSizedSubscriptionRecoveryPolicy);
1220            }
1221            {
1222                DtoLastImageSubscriptionRecoveryPolicy theLastImageSubscriptionRecoveryPolicy;
1223                theLastImageSubscriptionRecoveryPolicy = this.getLastImageSubscriptionRecoveryPolicy();
1224                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "lastImageSubscriptionRecoveryPolicy", theLastImageSubscriptionRecoveryPolicy), currentHashCode, theLastImageSubscriptionRecoveryPolicy);
1225            }
1226            {
1227                DtoNoSubscriptionRecoveryPolicy theNoSubscriptionRecoveryPolicy;
1228                theNoSubscriptionRecoveryPolicy = this.getNoSubscriptionRecoveryPolicy();
1229                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "noSubscriptionRecoveryPolicy", theNoSubscriptionRecoveryPolicy), currentHashCode, theNoSubscriptionRecoveryPolicy);
1230            }
1231            {
1232                DtoQueryBasedSubscriptionRecoveryPolicy theQueryBasedSubscriptionRecoveryPolicy;
1233                theQueryBasedSubscriptionRecoveryPolicy = this.getQueryBasedSubscriptionRecoveryPolicy();
1234                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "queryBasedSubscriptionRecoveryPolicy", theQueryBasedSubscriptionRecoveryPolicy), currentHashCode, theQueryBasedSubscriptionRecoveryPolicy);
1235            }
1236            {
1237                DtoRetainedMessageSubscriptionRecoveryPolicy theRetainedMessageSubscriptionRecoveryPolicy;
1238                theRetainedMessageSubscriptionRecoveryPolicy = this.getRetainedMessageSubscriptionRecoveryPolicy();
1239                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "retainedMessageSubscriptionRecoveryPolicy", theRetainedMessageSubscriptionRecoveryPolicy), currentHashCode, theRetainedMessageSubscriptionRecoveryPolicy);
1240            }
1241            {
1242                DtoTimedSubscriptionRecoveryPolicy theTimedSubscriptionRecoveryPolicy;
1243                theTimedSubscriptionRecoveryPolicy = this.getTimedSubscriptionRecoveryPolicy();
1244                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "timedSubscriptionRecoveryPolicy", theTimedSubscriptionRecoveryPolicy), currentHashCode, theTimedSubscriptionRecoveryPolicy);
1245            }
1246            {
1247                Object theAny;
1248                theAny = this.getAny();
1249                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
1250            }
1251            return currentHashCode;
1252        }
1253
1254        public int hashCode() {
1255            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
1256            return this.hashCode(null, strategy);
1257        }
1258
1259        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
1260            if (!(object instanceof DtoRetainedMessageSubscriptionRecoveryPolicy.Wrapped)) {
1261                return false;
1262            }
1263            if (this == object) {
1264                return true;
1265            }
1266            final DtoRetainedMessageSubscriptionRecoveryPolicy.Wrapped that = ((DtoRetainedMessageSubscriptionRecoveryPolicy.Wrapped) object);
1267            {
1268                DtoFixedCountSubscriptionRecoveryPolicy lhsFixedCountSubscriptionRecoveryPolicy;
1269                lhsFixedCountSubscriptionRecoveryPolicy = this.getFixedCountSubscriptionRecoveryPolicy();
1270                DtoFixedCountSubscriptionRecoveryPolicy rhsFixedCountSubscriptionRecoveryPolicy;
1271                rhsFixedCountSubscriptionRecoveryPolicy = that.getFixedCountSubscriptionRecoveryPolicy();
1272                if (!strategy.equals(LocatorUtils.property(thisLocator, "fixedCountSubscriptionRecoveryPolicy", lhsFixedCountSubscriptionRecoveryPolicy), LocatorUtils.property(thatLocator, "fixedCountSubscriptionRecoveryPolicy", rhsFixedCountSubscriptionRecoveryPolicy), lhsFixedCountSubscriptionRecoveryPolicy, rhsFixedCountSubscriptionRecoveryPolicy)) {
1273                    return false;
1274                }
1275            }
1276            {
1277                DtoFixedSizedSubscriptionRecoveryPolicy lhsFixedSizedSubscriptionRecoveryPolicy;
1278                lhsFixedSizedSubscriptionRecoveryPolicy = this.getFixedSizedSubscriptionRecoveryPolicy();
1279                DtoFixedSizedSubscriptionRecoveryPolicy rhsFixedSizedSubscriptionRecoveryPolicy;
1280                rhsFixedSizedSubscriptionRecoveryPolicy = that.getFixedSizedSubscriptionRecoveryPolicy();
1281                if (!strategy.equals(LocatorUtils.property(thisLocator, "fixedSizedSubscriptionRecoveryPolicy", lhsFixedSizedSubscriptionRecoveryPolicy), LocatorUtils.property(thatLocator, "fixedSizedSubscriptionRecoveryPolicy", rhsFixedSizedSubscriptionRecoveryPolicy), lhsFixedSizedSubscriptionRecoveryPolicy, rhsFixedSizedSubscriptionRecoveryPolicy)) {
1282                    return false;
1283                }
1284            }
1285            {
1286                DtoLastImageSubscriptionRecoveryPolicy lhsLastImageSubscriptionRecoveryPolicy;
1287                lhsLastImageSubscriptionRecoveryPolicy = this.getLastImageSubscriptionRecoveryPolicy();
1288                DtoLastImageSubscriptionRecoveryPolicy rhsLastImageSubscriptionRecoveryPolicy;
1289                rhsLastImageSubscriptionRecoveryPolicy = that.getLastImageSubscriptionRecoveryPolicy();
1290                if (!strategy.equals(LocatorUtils.property(thisLocator, "lastImageSubscriptionRecoveryPolicy", lhsLastImageSubscriptionRecoveryPolicy), LocatorUtils.property(thatLocator, "lastImageSubscriptionRecoveryPolicy", rhsLastImageSubscriptionRecoveryPolicy), lhsLastImageSubscriptionRecoveryPolicy, rhsLastImageSubscriptionRecoveryPolicy)) {
1291                    return false;
1292                }
1293            }
1294            {
1295                DtoNoSubscriptionRecoveryPolicy lhsNoSubscriptionRecoveryPolicy;
1296                lhsNoSubscriptionRecoveryPolicy = this.getNoSubscriptionRecoveryPolicy();
1297                DtoNoSubscriptionRecoveryPolicy rhsNoSubscriptionRecoveryPolicy;
1298                rhsNoSubscriptionRecoveryPolicy = that.getNoSubscriptionRecoveryPolicy();
1299                if (!strategy.equals(LocatorUtils.property(thisLocator, "noSubscriptionRecoveryPolicy", lhsNoSubscriptionRecoveryPolicy), LocatorUtils.property(thatLocator, "noSubscriptionRecoveryPolicy", rhsNoSubscriptionRecoveryPolicy), lhsNoSubscriptionRecoveryPolicy, rhsNoSubscriptionRecoveryPolicy)) {
1300                    return false;
1301                }
1302            }
1303            {
1304                DtoQueryBasedSubscriptionRecoveryPolicy lhsQueryBasedSubscriptionRecoveryPolicy;
1305                lhsQueryBasedSubscriptionRecoveryPolicy = this.getQueryBasedSubscriptionRecoveryPolicy();
1306                DtoQueryBasedSubscriptionRecoveryPolicy rhsQueryBasedSubscriptionRecoveryPolicy;
1307                rhsQueryBasedSubscriptionRecoveryPolicy = that.getQueryBasedSubscriptionRecoveryPolicy();
1308                if (!strategy.equals(LocatorUtils.property(thisLocator, "queryBasedSubscriptionRecoveryPolicy", lhsQueryBasedSubscriptionRecoveryPolicy), LocatorUtils.property(thatLocator, "queryBasedSubscriptionRecoveryPolicy", rhsQueryBasedSubscriptionRecoveryPolicy), lhsQueryBasedSubscriptionRecoveryPolicy, rhsQueryBasedSubscriptionRecoveryPolicy)) {
1309                    return false;
1310                }
1311            }
1312            {
1313                DtoRetainedMessageSubscriptionRecoveryPolicy lhsRetainedMessageSubscriptionRecoveryPolicy;
1314                lhsRetainedMessageSubscriptionRecoveryPolicy = this.getRetainedMessageSubscriptionRecoveryPolicy();
1315                DtoRetainedMessageSubscriptionRecoveryPolicy rhsRetainedMessageSubscriptionRecoveryPolicy;
1316                rhsRetainedMessageSubscriptionRecoveryPolicy = that.getRetainedMessageSubscriptionRecoveryPolicy();
1317                if (!strategy.equals(LocatorUtils.property(thisLocator, "retainedMessageSubscriptionRecoveryPolicy", lhsRetainedMessageSubscriptionRecoveryPolicy), LocatorUtils.property(thatLocator, "retainedMessageSubscriptionRecoveryPolicy", rhsRetainedMessageSubscriptionRecoveryPolicy), lhsRetainedMessageSubscriptionRecoveryPolicy, rhsRetainedMessageSubscriptionRecoveryPolicy)) {
1318                    return false;
1319                }
1320            }
1321            {
1322                DtoTimedSubscriptionRecoveryPolicy lhsTimedSubscriptionRecoveryPolicy;
1323                lhsTimedSubscriptionRecoveryPolicy = this.getTimedSubscriptionRecoveryPolicy();
1324                DtoTimedSubscriptionRecoveryPolicy rhsTimedSubscriptionRecoveryPolicy;
1325                rhsTimedSubscriptionRecoveryPolicy = that.getTimedSubscriptionRecoveryPolicy();
1326                if (!strategy.equals(LocatorUtils.property(thisLocator, "timedSubscriptionRecoveryPolicy", lhsTimedSubscriptionRecoveryPolicy), LocatorUtils.property(thatLocator, "timedSubscriptionRecoveryPolicy", rhsTimedSubscriptionRecoveryPolicy), lhsTimedSubscriptionRecoveryPolicy, rhsTimedSubscriptionRecoveryPolicy)) {
1327                    return false;
1328                }
1329            }
1330            {
1331                Object lhsAny;
1332                lhsAny = this.getAny();
1333                Object rhsAny;
1334                rhsAny = that.getAny();
1335                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
1336                    return false;
1337                }
1338            }
1339            return true;
1340        }
1341
1342        public boolean equals(Object object) {
1343            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
1344            return equals(null, null, object, strategy);
1345        }
1346
1347    }
1348
1349}