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="camelContext" minOccurs="0">
054 *             &lt;complexType>
055 *               &lt;complexContent>
056 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
057 *                   &lt;sequence minOccurs="0">
058 *                     &lt;any maxOccurs="unbounded" minOccurs="0"/>
059 *                   &lt;/sequence>
060 *                 &lt;/restriction>
061 *               &lt;/complexContent>
062 *             &lt;/complexType>
063 *           &lt;/element>
064 *           &lt;element name="component" minOccurs="0">
065 *             &lt;complexType>
066 *               &lt;complexContent>
067 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
068 *                   &lt;sequence minOccurs="0">
069 *                     &lt;any maxOccurs="unbounded" minOccurs="0"/>
070 *                   &lt;/sequence>
071 *                 &lt;/restriction>
072 *               &lt;/complexContent>
073 *             &lt;/complexType>
074 *           &lt;/element>
075 *           &lt;element name="source" minOccurs="0">
076 *             &lt;complexType>
077 *               &lt;complexContent>
078 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
079 *                   &lt;sequence minOccurs="0">
080 *                     &lt;any maxOccurs="unbounded" minOccurs="0"/>
081 *                   &lt;/sequence>
082 *                 &lt;/restriction>
083 *               &lt;/complexContent>
084 *             &lt;/complexType>
085 *           &lt;/element>
086 *           &lt;any namespace='##other' maxOccurs="unbounded" minOccurs="0"/>
087 *         &lt;/choice>
088 *       &lt;/choice>
089 *       &lt;attribute name="camelContext" type="{http://www.w3.org/2001/XMLSchema}string" />
090 *       &lt;attribute name="component" type="{http://www.w3.org/2001/XMLSchema}string" />
091 *       &lt;attribute name="source" type="{http://www.w3.org/2001/XMLSchema}string" />
092 *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
093 *       &lt;anyAttribute processContents='lax' namespace='##other'/>
094 *     &lt;/restriction>
095 *   &lt;/complexContent>
096 * &lt;/complexType>
097 * </pre>
098 * 
099 * 
100 */
101@XmlAccessorType(XmlAccessType.FIELD)
102@XmlType(name = "", propOrder = {
103    "camelContextOrComponentOrSource"
104})
105@XmlRootElement(name = "camelEndpointLoader")
106public class DtoCamelEndpointLoader
107    implements Equals, HashCode, ToString
108{
109
110    @XmlElementRefs({
111        @XmlElementRef(name = "component", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false),
112        @XmlElementRef(name = "source", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false),
113        @XmlElementRef(name = "camelContext", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false)
114    })
115    @XmlAnyElement(lax = true)
116    protected List<Object> camelContextOrComponentOrSource;
117    @XmlAttribute(name = "camelContext")
118    protected String camelContext;
119    @XmlAttribute(name = "component")
120    protected String component;
121    @XmlAttribute(name = "source")
122    protected String source;
123    @XmlAttribute(name = "id")
124    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
125    @XmlID
126    @XmlSchemaType(name = "ID")
127    protected String id;
128    @XmlAnyAttribute
129    private Map<QName, String> otherAttributes = new HashMap<QName, String>();
130
131    /**
132     * Gets the value of the camelContextOrComponentOrSource property.
133     * 
134     * <p>
135     * This accessor method returns a reference to the live list,
136     * not a snapshot. Therefore any modification you make to the
137     * returned list will be present inside the JAXB object.
138     * This is why there is not a <CODE>set</CODE> method for the camelContextOrComponentOrSource property.
139     * 
140     * <p>
141     * For example, to add a new item, do as follows:
142     * <pre>
143     *    getCamelContextOrComponentOrSource().add(newItem);
144     * </pre>
145     * 
146     * 
147     * <p>
148     * Objects of the following type(s) are allowed in the list
149     * {@link Object }
150     * {@link JAXBElement }{@code <}{@link DtoCamelEndpointLoader.Component }{@code >}
151     * {@link JAXBElement }{@code <}{@link DtoCamelEndpointLoader.CamelContext }{@code >}
152     * {@link JAXBElement }{@code <}{@link DtoCamelEndpointLoader.Source }{@code >}
153     * 
154     * 
155     */
156    public List<Object> getCamelContextOrComponentOrSource() {
157        if (camelContextOrComponentOrSource == null) {
158            camelContextOrComponentOrSource = new ArrayList<Object>();
159        }
160        return this.camelContextOrComponentOrSource;
161    }
162
163    /**
164     * Gets the value of the camelContext property.
165     * 
166     * @return
167     *     possible object is
168     *     {@link String }
169     *     
170     */
171    public String getCamelContext() {
172        return camelContext;
173    }
174
175    /**
176     * Sets the value of the camelContext property.
177     * 
178     * @param value
179     *     allowed object is
180     *     {@link String }
181     *     
182     */
183    public void setCamelContext(String value) {
184        this.camelContext = value;
185    }
186
187    /**
188     * Gets the value of the component property.
189     * 
190     * @return
191     *     possible object is
192     *     {@link String }
193     *     
194     */
195    public String getComponent() {
196        return component;
197    }
198
199    /**
200     * Sets the value of the component property.
201     * 
202     * @param value
203     *     allowed object is
204     *     {@link String }
205     *     
206     */
207    public void setComponent(String value) {
208        this.component = value;
209    }
210
211    /**
212     * Gets the value of the source property.
213     * 
214     * @return
215     *     possible object is
216     *     {@link String }
217     *     
218     */
219    public String getSource() {
220        return source;
221    }
222
223    /**
224     * Sets the value of the source property.
225     * 
226     * @param value
227     *     allowed object is
228     *     {@link String }
229     *     
230     */
231    public void setSource(String value) {
232        this.source = value;
233    }
234
235    /**
236     * Gets the value of the id property.
237     * 
238     * @return
239     *     possible object is
240     *     {@link String }
241     *     
242     */
243    public String getId() {
244        return id;
245    }
246
247    /**
248     * Sets the value of the id property.
249     * 
250     * @param value
251     *     allowed object is
252     *     {@link String }
253     *     
254     */
255    public void setId(String value) {
256        this.id = value;
257    }
258
259    /**
260     * Gets a map that contains attributes that aren't bound to any typed property on this class.
261     * 
262     * <p>
263     * the map is keyed by the name of the attribute and 
264     * the value is the string value of the attribute.
265     * 
266     * the map returned by this method is live, and you can add new attribute
267     * by updating the map directly. Because of this design, there's no setter.
268     * 
269     * 
270     * @return
271     *     always non-null
272     */
273    public Map<QName, String> getOtherAttributes() {
274        return otherAttributes;
275    }
276
277    public String toString() {
278        final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
279        final StringBuilder buffer = new StringBuilder();
280        append(null, buffer, strategy);
281        return buffer.toString();
282    }
283
284    public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
285        strategy.appendStart(locator, this, buffer);
286        appendFields(locator, buffer, strategy);
287        strategy.appendEnd(locator, this, buffer);
288        return buffer;
289    }
290
291    public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
292        {
293            List<Object> theCamelContextOrComponentOrSource;
294            theCamelContextOrComponentOrSource = (((this.camelContextOrComponentOrSource!= null)&&(!this.camelContextOrComponentOrSource.isEmpty()))?this.getCamelContextOrComponentOrSource():null);
295            strategy.appendField(locator, this, "camelContextOrComponentOrSource", buffer, theCamelContextOrComponentOrSource);
296        }
297        {
298            String theCamelContext;
299            theCamelContext = this.getCamelContext();
300            strategy.appendField(locator, this, "camelContext", buffer, theCamelContext);
301        }
302        {
303            String theComponent;
304            theComponent = this.getComponent();
305            strategy.appendField(locator, this, "component", buffer, theComponent);
306        }
307        {
308            String theSource;
309            theSource = this.getSource();
310            strategy.appendField(locator, this, "source", buffer, theSource);
311        }
312        {
313            String theId;
314            theId = this.getId();
315            strategy.appendField(locator, this, "id", buffer, theId);
316        }
317        return buffer;
318    }
319
320    public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
321        int currentHashCode = 1;
322        {
323            List<Object> theCamelContextOrComponentOrSource;
324            theCamelContextOrComponentOrSource = (((this.camelContextOrComponentOrSource!= null)&&(!this.camelContextOrComponentOrSource.isEmpty()))?this.getCamelContextOrComponentOrSource():null);
325            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "camelContextOrComponentOrSource", theCamelContextOrComponentOrSource), currentHashCode, theCamelContextOrComponentOrSource);
326        }
327        {
328            String theCamelContext;
329            theCamelContext = this.getCamelContext();
330            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "camelContext", theCamelContext), currentHashCode, theCamelContext);
331        }
332        {
333            String theComponent;
334            theComponent = this.getComponent();
335            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "component", theComponent), currentHashCode, theComponent);
336        }
337        {
338            String theSource;
339            theSource = this.getSource();
340            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "source", theSource), currentHashCode, theSource);
341        }
342        {
343            String theId;
344            theId = this.getId();
345            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "id", theId), currentHashCode, theId);
346        }
347        return currentHashCode;
348    }
349
350    public int hashCode() {
351        final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
352        return this.hashCode(null, strategy);
353    }
354
355    public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
356        if (!(object instanceof DtoCamelEndpointLoader)) {
357            return false;
358        }
359        if (this == object) {
360            return true;
361        }
362        final DtoCamelEndpointLoader that = ((DtoCamelEndpointLoader) object);
363        {
364            List<Object> lhsCamelContextOrComponentOrSource;
365            lhsCamelContextOrComponentOrSource = (((this.camelContextOrComponentOrSource!= null)&&(!this.camelContextOrComponentOrSource.isEmpty()))?this.getCamelContextOrComponentOrSource():null);
366            List<Object> rhsCamelContextOrComponentOrSource;
367            rhsCamelContextOrComponentOrSource = (((that.camelContextOrComponentOrSource!= null)&&(!that.camelContextOrComponentOrSource.isEmpty()))?that.getCamelContextOrComponentOrSource():null);
368            if (!strategy.equals(LocatorUtils.property(thisLocator, "camelContextOrComponentOrSource", lhsCamelContextOrComponentOrSource), LocatorUtils.property(thatLocator, "camelContextOrComponentOrSource", rhsCamelContextOrComponentOrSource), lhsCamelContextOrComponentOrSource, rhsCamelContextOrComponentOrSource)) {
369                return false;
370            }
371        }
372        {
373            String lhsCamelContext;
374            lhsCamelContext = this.getCamelContext();
375            String rhsCamelContext;
376            rhsCamelContext = that.getCamelContext();
377            if (!strategy.equals(LocatorUtils.property(thisLocator, "camelContext", lhsCamelContext), LocatorUtils.property(thatLocator, "camelContext", rhsCamelContext), lhsCamelContext, rhsCamelContext)) {
378                return false;
379            }
380        }
381        {
382            String lhsComponent;
383            lhsComponent = this.getComponent();
384            String rhsComponent;
385            rhsComponent = that.getComponent();
386            if (!strategy.equals(LocatorUtils.property(thisLocator, "component", lhsComponent), LocatorUtils.property(thatLocator, "component", rhsComponent), lhsComponent, rhsComponent)) {
387                return false;
388            }
389        }
390        {
391            String lhsSource;
392            lhsSource = this.getSource();
393            String rhsSource;
394            rhsSource = that.getSource();
395            if (!strategy.equals(LocatorUtils.property(thisLocator, "source", lhsSource), LocatorUtils.property(thatLocator, "source", rhsSource), lhsSource, rhsSource)) {
396                return false;
397            }
398        }
399        {
400            String lhsId;
401            lhsId = this.getId();
402            String rhsId;
403            rhsId = that.getId();
404            if (!strategy.equals(LocatorUtils.property(thisLocator, "id", lhsId), LocatorUtils.property(thatLocator, "id", rhsId), lhsId, rhsId)) {
405                return false;
406            }
407        }
408        return true;
409    }
410
411    public boolean equals(Object object) {
412        final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
413        return equals(null, null, object, strategy);
414    }
415
416
417    /**
418     * <p>Java class for anonymous complex type.
419     * 
420     * <p>The following schema fragment specifies the expected content contained within this class.
421     * 
422     * <pre>
423     * &lt;complexType>
424     *   &lt;complexContent>
425     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
426     *       &lt;sequence minOccurs="0">
427     *         &lt;any maxOccurs="unbounded" minOccurs="0"/>
428     *       &lt;/sequence>
429     *     &lt;/restriction>
430     *   &lt;/complexContent>
431     * &lt;/complexType>
432     * </pre>
433     * 
434     * 
435     */
436    @XmlAccessorType(XmlAccessType.FIELD)
437    @XmlType(name = "", propOrder = {
438        "any"
439    })
440    public static class CamelContext
441        implements Equals, HashCode, ToString
442    {
443
444        @XmlAnyElement(lax = true)
445        protected List<Object> any;
446
447        /**
448         * Gets the value of the any property.
449         * 
450         * <p>
451         * This accessor method returns a reference to the live list,
452         * not a snapshot. Therefore any modification you make to the
453         * returned list will be present inside the JAXB object.
454         * This is why there is not a <CODE>set</CODE> method for the any property.
455         * 
456         * <p>
457         * For example, to add a new item, do as follows:
458         * <pre>
459         *    getAny().add(newItem);
460         * </pre>
461         * 
462         * 
463         * <p>
464         * Objects of the following type(s) are allowed in the list
465         * {@link Object }
466         * 
467         * 
468         */
469        public List<Object> getAny() {
470            if (any == null) {
471                any = new ArrayList<Object>();
472            }
473            return this.any;
474        }
475
476        public String toString() {
477            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
478            final StringBuilder buffer = new StringBuilder();
479            append(null, buffer, strategy);
480            return buffer.toString();
481        }
482
483        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
484            strategy.appendStart(locator, this, buffer);
485            appendFields(locator, buffer, strategy);
486            strategy.appendEnd(locator, this, buffer);
487            return buffer;
488        }
489
490        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
491            {
492                List<Object> theAny;
493                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
494                strategy.appendField(locator, this, "any", buffer, theAny);
495            }
496            return buffer;
497        }
498
499        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
500            int currentHashCode = 1;
501            {
502                List<Object> theAny;
503                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
504                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
505            }
506            return currentHashCode;
507        }
508
509        public int hashCode() {
510            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
511            return this.hashCode(null, strategy);
512        }
513
514        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
515            if (!(object instanceof DtoCamelEndpointLoader.CamelContext)) {
516                return false;
517            }
518            if (this == object) {
519                return true;
520            }
521            final DtoCamelEndpointLoader.CamelContext that = ((DtoCamelEndpointLoader.CamelContext) object);
522            {
523                List<Object> lhsAny;
524                lhsAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
525                List<Object> rhsAny;
526                rhsAny = (((that.any!= null)&&(!that.any.isEmpty()))?that.getAny():null);
527                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
528                    return false;
529                }
530            }
531            return true;
532        }
533
534        public boolean equals(Object object) {
535            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
536            return equals(null, null, object, strategy);
537        }
538
539    }
540
541
542    /**
543     * <p>Java class for anonymous complex type.
544     * 
545     * <p>The following schema fragment specifies the expected content contained within this class.
546     * 
547     * <pre>
548     * &lt;complexType>
549     *   &lt;complexContent>
550     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
551     *       &lt;sequence minOccurs="0">
552     *         &lt;any maxOccurs="unbounded" minOccurs="0"/>
553     *       &lt;/sequence>
554     *     &lt;/restriction>
555     *   &lt;/complexContent>
556     * &lt;/complexType>
557     * </pre>
558     * 
559     * 
560     */
561    @XmlAccessorType(XmlAccessType.FIELD)
562    @XmlType(name = "", propOrder = {
563        "any"
564    })
565    public static class Component
566        implements Equals, HashCode, ToString
567    {
568
569        @XmlAnyElement(lax = true)
570        protected List<Object> any;
571
572        /**
573         * Gets the value of the any property.
574         * 
575         * <p>
576         * This accessor method returns a reference to the live list,
577         * not a snapshot. Therefore any modification you make to the
578         * returned list will be present inside the JAXB object.
579         * This is why there is not a <CODE>set</CODE> method for the any property.
580         * 
581         * <p>
582         * For example, to add a new item, do as follows:
583         * <pre>
584         *    getAny().add(newItem);
585         * </pre>
586         * 
587         * 
588         * <p>
589         * Objects of the following type(s) are allowed in the list
590         * {@link Object }
591         * 
592         * 
593         */
594        public List<Object> getAny() {
595            if (any == null) {
596                any = new ArrayList<Object>();
597            }
598            return this.any;
599        }
600
601        public String toString() {
602            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
603            final StringBuilder buffer = new StringBuilder();
604            append(null, buffer, strategy);
605            return buffer.toString();
606        }
607
608        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
609            strategy.appendStart(locator, this, buffer);
610            appendFields(locator, buffer, strategy);
611            strategy.appendEnd(locator, this, buffer);
612            return buffer;
613        }
614
615        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
616            {
617                List<Object> theAny;
618                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
619                strategy.appendField(locator, this, "any", buffer, theAny);
620            }
621            return buffer;
622        }
623
624        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
625            int currentHashCode = 1;
626            {
627                List<Object> theAny;
628                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
629                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
630            }
631            return currentHashCode;
632        }
633
634        public int hashCode() {
635            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
636            return this.hashCode(null, strategy);
637        }
638
639        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
640            if (!(object instanceof DtoCamelEndpointLoader.Component)) {
641                return false;
642            }
643            if (this == object) {
644                return true;
645            }
646            final DtoCamelEndpointLoader.Component that = ((DtoCamelEndpointLoader.Component) object);
647            {
648                List<Object> lhsAny;
649                lhsAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
650                List<Object> rhsAny;
651                rhsAny = (((that.any!= null)&&(!that.any.isEmpty()))?that.getAny():null);
652                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
653                    return false;
654                }
655            }
656            return true;
657        }
658
659        public boolean equals(Object object) {
660            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
661            return equals(null, null, object, strategy);
662        }
663
664    }
665
666
667    /**
668     * <p>Java class for anonymous complex type.
669     * 
670     * <p>The following schema fragment specifies the expected content contained within this class.
671     * 
672     * <pre>
673     * &lt;complexType>
674     *   &lt;complexContent>
675     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
676     *       &lt;sequence minOccurs="0">
677     *         &lt;any maxOccurs="unbounded" minOccurs="0"/>
678     *       &lt;/sequence>
679     *     &lt;/restriction>
680     *   &lt;/complexContent>
681     * &lt;/complexType>
682     * </pre>
683     * 
684     * 
685     */
686    @XmlAccessorType(XmlAccessType.FIELD)
687    @XmlType(name = "", propOrder = {
688        "any"
689    })
690    public static class Source
691        implements Equals, HashCode, ToString
692    {
693
694        @XmlAnyElement(lax = true)
695        protected List<Object> any;
696
697        /**
698         * Gets the value of the any property.
699         * 
700         * <p>
701         * This accessor method returns a reference to the live list,
702         * not a snapshot. Therefore any modification you make to the
703         * returned list will be present inside the JAXB object.
704         * This is why there is not a <CODE>set</CODE> method for the any property.
705         * 
706         * <p>
707         * For example, to add a new item, do as follows:
708         * <pre>
709         *    getAny().add(newItem);
710         * </pre>
711         * 
712         * 
713         * <p>
714         * Objects of the following type(s) are allowed in the list
715         * {@link Object }
716         * 
717         * 
718         */
719        public List<Object> getAny() {
720            if (any == null) {
721                any = new ArrayList<Object>();
722            }
723            return this.any;
724        }
725
726        public String toString() {
727            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
728            final StringBuilder buffer = new StringBuilder();
729            append(null, buffer, strategy);
730            return buffer.toString();
731        }
732
733        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
734            strategy.appendStart(locator, this, buffer);
735            appendFields(locator, buffer, strategy);
736            strategy.appendEnd(locator, this, buffer);
737            return buffer;
738        }
739
740        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
741            {
742                List<Object> theAny;
743                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
744                strategy.appendField(locator, this, "any", buffer, theAny);
745            }
746            return buffer;
747        }
748
749        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
750            int currentHashCode = 1;
751            {
752                List<Object> theAny;
753                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
754                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
755            }
756            return currentHashCode;
757        }
758
759        public int hashCode() {
760            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
761            return this.hashCode(null, strategy);
762        }
763
764        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
765            if (!(object instanceof DtoCamelEndpointLoader.Source)) {
766                return false;
767            }
768            if (this == object) {
769                return true;
770            }
771            final DtoCamelEndpointLoader.Source that = ((DtoCamelEndpointLoader.Source) object);
772            {
773                List<Object> lhsAny;
774                lhsAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
775                List<Object> rhsAny;
776                rhsAny = (((that.any!= null)&&(!that.any.isEmpty()))?that.getAny():null);
777                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
778                    return false;
779                }
780            }
781            return true;
782        }
783
784        public boolean equals(Object object) {
785            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
786            return equals(null, null, object, strategy);
787        }
788
789    }
790
791}