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: 2021.01.20 at 07:26:32 AM EST 
006//
007
008
009package org.apache.activemq.schema.core;
010
011import java.util.ArrayList;
012import java.util.HashMap;
013import java.util.List;
014import java.util.Map;
015import javax.xml.bind.JAXBElement;
016import javax.xml.bind.annotation.XmlAccessType;
017import javax.xml.bind.annotation.XmlAccessorType;
018import javax.xml.bind.annotation.XmlAnyAttribute;
019import javax.xml.bind.annotation.XmlAnyElement;
020import javax.xml.bind.annotation.XmlAttribute;
021import javax.xml.bind.annotation.XmlElementRef;
022import javax.xml.bind.annotation.XmlElementRefs;
023import javax.xml.bind.annotation.XmlID;
024import javax.xml.bind.annotation.XmlRootElement;
025import javax.xml.bind.annotation.XmlSchemaType;
026import javax.xml.bind.annotation.XmlType;
027import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
028import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
029import javax.xml.namespace.QName;
030import org.jvnet.jaxb2_commons.lang.Equals;
031import org.jvnet.jaxb2_commons.lang.EqualsStrategy;
032import org.jvnet.jaxb2_commons.lang.HashCode;
033import org.jvnet.jaxb2_commons.lang.HashCodeStrategy;
034import org.jvnet.jaxb2_commons.lang.JAXBHashCodeStrategy;
035import org.jvnet.jaxb2_commons.lang.JAXBToStringStrategy;
036import org.jvnet.jaxb2_commons.lang.ToString;
037import org.jvnet.jaxb2_commons.lang.ToStringStrategy;
038import org.jvnet.jaxb2_commons.locator.ObjectLocator;
039import org.jvnet.jaxb2_commons.locator.util.LocatorUtils;
040
041
042/**
043 * <p>Java class for anonymous complex type.
044 * 
045 * <p>The following schema fragment specifies the expected content contained within this class.
046 * 
047 * <pre>
048 * &lt;complexType>
049 *   &lt;complexContent>
050 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
051 *       &lt;choice maxOccurs="unbounded" minOccurs="0">
052 *         &lt;choice>
053 *           &lt;element name="userGroups" maxOccurs="unbounded" minOccurs="0">
054 *             &lt;complexType>
055 *               &lt;complexContent>
056 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
057 *                   &lt;sequence maxOccurs="unbounded" 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="userPasswords" maxOccurs="unbounded" minOccurs="0">
065 *             &lt;complexType>
066 *               &lt;complexContent>
067 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
068 *                   &lt;sequence maxOccurs="unbounded" 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="users" maxOccurs="unbounded" minOccurs="0">
076 *             &lt;complexType>
077 *               &lt;complexContent>
078 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
079 *                   &lt;sequence maxOccurs="unbounded" 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="anonymousAccessAllowed" type="{http://www.w3.org/2001/XMLSchema}boolean" />
090 *       &lt;attribute name="anonymousGroup" type="{http://www.w3.org/2001/XMLSchema}string" />
091 *       &lt;attribute name="anonymousUser" type="{http://www.w3.org/2001/XMLSchema}string" />
092 *       &lt;attribute name="userGroups" type="{http://www.w3.org/2001/XMLSchema}string" />
093 *       &lt;attribute name="userPasswords" type="{http://www.w3.org/2001/XMLSchema}string" />
094 *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
095 *       &lt;anyAttribute processContents='lax' namespace='##other'/>
096 *     &lt;/restriction>
097 *   &lt;/complexContent>
098 * &lt;/complexType>
099 * </pre>
100 * 
101 * 
102 */
103@XmlAccessorType(XmlAccessType.FIELD)
104@XmlType(name = "", propOrder = {
105    "contents"
106})
107@XmlRootElement(name = "simpleAuthenticationPlugin")
108public class DtoSimpleAuthenticationPlugin implements Equals, HashCode, ToString
109{
110
111    @XmlElementRefs({
112        @XmlElementRef(name = "users", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false),
113        @XmlElementRef(name = "userPasswords", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false),
114        @XmlElementRef(name = "userGroups", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false)
115    })
116    @XmlAnyElement(lax = true)
117    protected List<Object> contents;
118    @XmlAttribute(name = "anonymousAccessAllowed")
119    protected Boolean anonymousAccessAllowed;
120    @XmlAttribute(name = "anonymousGroup")
121    protected String anonymousGroup;
122    @XmlAttribute(name = "anonymousUser")
123    protected String anonymousUser;
124    @XmlAttribute(name = "userGroups")
125    protected String userGroups;
126    @XmlAttribute(name = "userPasswords")
127    protected String userPasswords;
128    @XmlAttribute(name = "id")
129    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
130    @XmlID
131    @XmlSchemaType(name = "ID")
132    protected String id;
133    @XmlAnyAttribute
134    private Map<QName, String> otherAttributes = new HashMap<QName, String>();
135
136    /**
137     * Gets the value of the contents property.
138     * 
139     * <p>
140     * This accessor method returns a reference to the live list,
141     * not a snapshot. Therefore any modification you make to the
142     * returned list will be present inside the JAXB object.
143     * This is why there is not a <CODE>set</CODE> method for the contents property.
144     * 
145     * <p>
146     * For example, to add a new item, do as follows:
147     * <pre>
148     *    getContents().add(newItem);
149     * </pre>
150     * 
151     * 
152     * <p>
153     * Objects of the following type(s) are allowed in the list
154     * {@link JAXBElement }{@code <}{@link DtoSimpleAuthenticationPlugin.Users }{@code >}
155     * {@link Object }
156     * {@link JAXBElement }{@code <}{@link DtoSimpleAuthenticationPlugin.UserPasswords }{@code >}
157     * {@link JAXBElement }{@code <}{@link DtoSimpleAuthenticationPlugin.UserGroups }{@code >}
158     * 
159     * 
160     */
161    public List<Object> getContents() {
162        if (contents == null) {
163            contents = new ArrayList<Object>();
164        }
165        return this.contents;
166    }
167
168    /**
169     * Gets the value of the anonymousAccessAllowed property.
170     * 
171     * @return
172     *     possible object is
173     *     {@link Boolean }
174     *     
175     */
176    public Boolean isAnonymousAccessAllowed() {
177        return anonymousAccessAllowed;
178    }
179
180    /**
181     * Sets the value of the anonymousAccessAllowed property.
182     * 
183     * @param value
184     *     allowed object is
185     *     {@link Boolean }
186     *     
187     */
188    public void setAnonymousAccessAllowed(Boolean value) {
189        this.anonymousAccessAllowed = value;
190    }
191
192    /**
193     * Gets the value of the anonymousGroup property.
194     * 
195     * @return
196     *     possible object is
197     *     {@link String }
198     *     
199     */
200    public String getAnonymousGroup() {
201        return anonymousGroup;
202    }
203
204    /**
205     * Sets the value of the anonymousGroup property.
206     * 
207     * @param value
208     *     allowed object is
209     *     {@link String }
210     *     
211     */
212    public void setAnonymousGroup(String value) {
213        this.anonymousGroup = value;
214    }
215
216    /**
217     * Gets the value of the anonymousUser property.
218     * 
219     * @return
220     *     possible object is
221     *     {@link String }
222     *     
223     */
224    public String getAnonymousUser() {
225        return anonymousUser;
226    }
227
228    /**
229     * Sets the value of the anonymousUser property.
230     * 
231     * @param value
232     *     allowed object is
233     *     {@link String }
234     *     
235     */
236    public void setAnonymousUser(String value) {
237        this.anonymousUser = value;
238    }
239
240    /**
241     * Gets the value of the userGroups property.
242     * 
243     * @return
244     *     possible object is
245     *     {@link String }
246     *     
247     */
248    public String getUserGroups() {
249        return userGroups;
250    }
251
252    /**
253     * Sets the value of the userGroups property.
254     * 
255     * @param value
256     *     allowed object is
257     *     {@link String }
258     *     
259     */
260    public void setUserGroups(String value) {
261        this.userGroups = value;
262    }
263
264    /**
265     * Gets the value of the userPasswords property.
266     * 
267     * @return
268     *     possible object is
269     *     {@link String }
270     *     
271     */
272    public String getUserPasswords() {
273        return userPasswords;
274    }
275
276    /**
277     * Sets the value of the userPasswords property.
278     * 
279     * @param value
280     *     allowed object is
281     *     {@link String }
282     *     
283     */
284    public void setUserPasswords(String value) {
285        this.userPasswords = value;
286    }
287
288    /**
289     * Gets the value of the id property.
290     * 
291     * @return
292     *     possible object is
293     *     {@link String }
294     *     
295     */
296    public String getId() {
297        return id;
298    }
299
300    /**
301     * Sets the value of the id property.
302     * 
303     * @param value
304     *     allowed object is
305     *     {@link String }
306     *     
307     */
308    public void setId(String value) {
309        this.id = value;
310    }
311
312    /**
313     * Gets a map that contains attributes that aren't bound to any typed property on this class.
314     * 
315     * <p>
316     * the map is keyed by the name of the attribute and 
317     * the value is the string value of the attribute.
318     * 
319     * the map returned by this method is live, and you can add new attribute
320     * by updating the map directly. Because of this design, there's no setter.
321     * 
322     * 
323     * @return
324     *     always non-null
325     */
326    public Map<QName, String> getOtherAttributes() {
327        return otherAttributes;
328    }
329
330    public String toString() {
331        final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
332        final StringBuilder buffer = new StringBuilder();
333        append(null, buffer, strategy);
334        return buffer.toString();
335    }
336
337    public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
338        strategy.appendStart(locator, this, buffer);
339        appendFields(locator, buffer, strategy);
340        strategy.appendEnd(locator, this, buffer);
341        return buffer;
342    }
343
344    public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
345        {
346            List<Object> theContents;
347            theContents = (((this.contents!= null)&&(!this.contents.isEmpty()))?this.getContents():null);
348            strategy.appendField(locator, this, "contents", buffer, theContents);
349        }
350        {
351            Boolean theAnonymousAccessAllowed;
352            theAnonymousAccessAllowed = this.isAnonymousAccessAllowed();
353            strategy.appendField(locator, this, "anonymousAccessAllowed", buffer, theAnonymousAccessAllowed);
354        }
355        {
356            String theAnonymousGroup;
357            theAnonymousGroup = this.getAnonymousGroup();
358            strategy.appendField(locator, this, "anonymousGroup", buffer, theAnonymousGroup);
359        }
360        {
361            String theAnonymousUser;
362            theAnonymousUser = this.getAnonymousUser();
363            strategy.appendField(locator, this, "anonymousUser", buffer, theAnonymousUser);
364        }
365        {
366            String theUserGroups;
367            theUserGroups = this.getUserGroups();
368            strategy.appendField(locator, this, "userGroups", buffer, theUserGroups);
369        }
370        {
371            String theUserPasswords;
372            theUserPasswords = this.getUserPasswords();
373            strategy.appendField(locator, this, "userPasswords", buffer, theUserPasswords);
374        }
375        {
376            String theId;
377            theId = this.getId();
378            strategy.appendField(locator, this, "id", buffer, theId);
379        }
380        return buffer;
381    }
382
383    public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
384        int currentHashCode = 1;
385        {
386            List<Object> theContents;
387            theContents = (((this.contents!= null)&&(!this.contents.isEmpty()))?this.getContents():null);
388            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "contents", theContents), currentHashCode, theContents);
389        }
390        {
391            Boolean theAnonymousAccessAllowed;
392            theAnonymousAccessAllowed = this.isAnonymousAccessAllowed();
393            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "anonymousAccessAllowed", theAnonymousAccessAllowed), currentHashCode, theAnonymousAccessAllowed);
394        }
395        {
396            String theAnonymousGroup;
397            theAnonymousGroup = this.getAnonymousGroup();
398            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "anonymousGroup", theAnonymousGroup), currentHashCode, theAnonymousGroup);
399        }
400        {
401            String theAnonymousUser;
402            theAnonymousUser = this.getAnonymousUser();
403            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "anonymousUser", theAnonymousUser), currentHashCode, theAnonymousUser);
404        }
405        {
406            String theUserGroups;
407            theUserGroups = this.getUserGroups();
408            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "userGroups", theUserGroups), currentHashCode, theUserGroups);
409        }
410        {
411            String theUserPasswords;
412            theUserPasswords = this.getUserPasswords();
413            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "userPasswords", theUserPasswords), currentHashCode, theUserPasswords);
414        }
415        {
416            String theId;
417            theId = this.getId();
418            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "id", theId), currentHashCode, theId);
419        }
420        return currentHashCode;
421    }
422
423    public int hashCode() {
424        final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
425        return this.hashCode(null, strategy);
426    }
427
428    public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
429        if (!(object instanceof DtoSimpleAuthenticationPlugin)) {
430            return false;
431        }
432        if (this == object) {
433            return true;
434        }
435        final DtoSimpleAuthenticationPlugin that = ((DtoSimpleAuthenticationPlugin) object);
436        {
437            List<Object> lhsContents;
438            lhsContents = (((this.contents!= null)&&(!this.contents.isEmpty()))?this.getContents():null);
439            List<Object> rhsContents;
440            rhsContents = (((that.contents!= null)&&(!that.contents.isEmpty()))?that.getContents():null);
441            if (!strategy.equals(LocatorUtils.property(thisLocator, "contents", lhsContents), LocatorUtils.property(thatLocator, "contents", rhsContents), lhsContents, rhsContents)) {
442                return false;
443            }
444        }
445        {
446            Boolean lhsAnonymousAccessAllowed;
447            lhsAnonymousAccessAllowed = this.isAnonymousAccessAllowed();
448            Boolean rhsAnonymousAccessAllowed;
449            rhsAnonymousAccessAllowed = that.isAnonymousAccessAllowed();
450            if (!strategy.equals(LocatorUtils.property(thisLocator, "anonymousAccessAllowed", lhsAnonymousAccessAllowed), LocatorUtils.property(thatLocator, "anonymousAccessAllowed", rhsAnonymousAccessAllowed), lhsAnonymousAccessAllowed, rhsAnonymousAccessAllowed)) {
451                return false;
452            }
453        }
454        {
455            String lhsAnonymousGroup;
456            lhsAnonymousGroup = this.getAnonymousGroup();
457            String rhsAnonymousGroup;
458            rhsAnonymousGroup = that.getAnonymousGroup();
459            if (!strategy.equals(LocatorUtils.property(thisLocator, "anonymousGroup", lhsAnonymousGroup), LocatorUtils.property(thatLocator, "anonymousGroup", rhsAnonymousGroup), lhsAnonymousGroup, rhsAnonymousGroup)) {
460                return false;
461            }
462        }
463        {
464            String lhsAnonymousUser;
465            lhsAnonymousUser = this.getAnonymousUser();
466            String rhsAnonymousUser;
467            rhsAnonymousUser = that.getAnonymousUser();
468            if (!strategy.equals(LocatorUtils.property(thisLocator, "anonymousUser", lhsAnonymousUser), LocatorUtils.property(thatLocator, "anonymousUser", rhsAnonymousUser), lhsAnonymousUser, rhsAnonymousUser)) {
469                return false;
470            }
471        }
472        {
473            String lhsUserGroups;
474            lhsUserGroups = this.getUserGroups();
475            String rhsUserGroups;
476            rhsUserGroups = that.getUserGroups();
477            if (!strategy.equals(LocatorUtils.property(thisLocator, "userGroups", lhsUserGroups), LocatorUtils.property(thatLocator, "userGroups", rhsUserGroups), lhsUserGroups, rhsUserGroups)) {
478                return false;
479            }
480        }
481        {
482            String lhsUserPasswords;
483            lhsUserPasswords = this.getUserPasswords();
484            String rhsUserPasswords;
485            rhsUserPasswords = that.getUserPasswords();
486            if (!strategy.equals(LocatorUtils.property(thisLocator, "userPasswords", lhsUserPasswords), LocatorUtils.property(thatLocator, "userPasswords", rhsUserPasswords), lhsUserPasswords, rhsUserPasswords)) {
487                return false;
488            }
489        }
490        {
491            String lhsId;
492            lhsId = this.getId();
493            String rhsId;
494            rhsId = that.getId();
495            if (!strategy.equals(LocatorUtils.property(thisLocator, "id", lhsId), LocatorUtils.property(thatLocator, "id", rhsId), lhsId, rhsId)) {
496                return false;
497            }
498        }
499        return true;
500    }
501
502    public boolean equals(Object object) {
503        final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
504        return equals(null, null, object, strategy);
505    }
506
507
508    /**
509     * <p>Java class for anonymous complex type.
510     * 
511     * <p>The following schema fragment specifies the expected content contained within this class.
512     * 
513     * <pre>
514     * &lt;complexType>
515     *   &lt;complexContent>
516     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
517     *       &lt;sequence maxOccurs="unbounded" minOccurs="0">
518     *         &lt;any maxOccurs="unbounded" minOccurs="0"/>
519     *       &lt;/sequence>
520     *     &lt;/restriction>
521     *   &lt;/complexContent>
522     * &lt;/complexType>
523     * </pre>
524     * 
525     * 
526     */
527    @XmlAccessorType(XmlAccessType.FIELD)
528    @XmlType(name = "", propOrder = {
529        "any"
530    })
531    public static class UserGroups
532        implements Equals, HashCode, ToString
533    {
534
535        @XmlAnyElement(lax = true)
536        protected List<Object> any;
537
538        /**
539         * Gets the value of the any property.
540         * 
541         * <p>
542         * This accessor method returns a reference to the live list,
543         * not a snapshot. Therefore any modification you make to the
544         * returned list will be present inside the JAXB object.
545         * This is why there is not a <CODE>set</CODE> method for the any property.
546         * 
547         * <p>
548         * For example, to add a new item, do as follows:
549         * <pre>
550         *    getAny().add(newItem);
551         * </pre>
552         * 
553         * 
554         * <p>
555         * Objects of the following type(s) are allowed in the list
556         * {@link Object }
557         * 
558         * 
559         */
560        public List<Object> getAny() {
561            if (any == null) {
562                any = new ArrayList<Object>();
563            }
564            return this.any;
565        }
566
567        public String toString() {
568            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
569            final StringBuilder buffer = new StringBuilder();
570            append(null, buffer, strategy);
571            return buffer.toString();
572        }
573
574        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
575            strategy.appendStart(locator, this, buffer);
576            appendFields(locator, buffer, strategy);
577            strategy.appendEnd(locator, this, buffer);
578            return buffer;
579        }
580
581        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
582            {
583                List<Object> theAny;
584                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
585                strategy.appendField(locator, this, "any", buffer, theAny);
586            }
587            return buffer;
588        }
589
590        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
591            int currentHashCode = 1;
592            {
593                List<Object> theAny;
594                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
595                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
596            }
597            return currentHashCode;
598        }
599
600        public int hashCode() {
601            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
602            return this.hashCode(null, strategy);
603        }
604
605        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
606            if (!(object instanceof DtoSimpleAuthenticationPlugin.UserGroups)) {
607                return false;
608            }
609            if (this == object) {
610                return true;
611            }
612            final DtoSimpleAuthenticationPlugin.UserGroups that = ((DtoSimpleAuthenticationPlugin.UserGroups) object);
613            {
614                List<Object> lhsAny;
615                lhsAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
616                List<Object> rhsAny;
617                rhsAny = (((that.any!= null)&&(!that.any.isEmpty()))?that.getAny():null);
618                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
619                    return false;
620                }
621            }
622            return true;
623        }
624
625        public boolean equals(Object object) {
626            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
627            return equals(null, null, object, strategy);
628        }
629
630    }
631
632
633    /**
634     * <p>Java class for anonymous complex type.
635     * 
636     * <p>The following schema fragment specifies the expected content contained within this class.
637     * 
638     * <pre>
639     * &lt;complexType>
640     *   &lt;complexContent>
641     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
642     *       &lt;sequence maxOccurs="unbounded" minOccurs="0">
643     *         &lt;any maxOccurs="unbounded" minOccurs="0"/>
644     *       &lt;/sequence>
645     *     &lt;/restriction>
646     *   &lt;/complexContent>
647     * &lt;/complexType>
648     * </pre>
649     * 
650     * 
651     */
652    @XmlAccessorType(XmlAccessType.FIELD)
653    @XmlType(name = "", propOrder = {
654        "any"
655    })
656    public static class UserPasswords
657        implements Equals, HashCode, ToString
658    {
659
660        @XmlAnyElement(lax = true)
661        protected List<Object> any;
662
663        /**
664         * Gets the value of the any property.
665         * 
666         * <p>
667         * This accessor method returns a reference to the live list,
668         * not a snapshot. Therefore any modification you make to the
669         * returned list will be present inside the JAXB object.
670         * This is why there is not a <CODE>set</CODE> method for the any property.
671         * 
672         * <p>
673         * For example, to add a new item, do as follows:
674         * <pre>
675         *    getAny().add(newItem);
676         * </pre>
677         * 
678         * 
679         * <p>
680         * Objects of the following type(s) are allowed in the list
681         * {@link Object }
682         * 
683         * 
684         */
685        public List<Object> getAny() {
686            if (any == null) {
687                any = new ArrayList<Object>();
688            }
689            return this.any;
690        }
691
692        public String toString() {
693            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
694            final StringBuilder buffer = new StringBuilder();
695            append(null, buffer, strategy);
696            return buffer.toString();
697        }
698
699        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
700            strategy.appendStart(locator, this, buffer);
701            appendFields(locator, buffer, strategy);
702            strategy.appendEnd(locator, this, buffer);
703            return buffer;
704        }
705
706        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
707            {
708                List<Object> theAny;
709                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
710                strategy.appendField(locator, this, "any", buffer, theAny);
711            }
712            return buffer;
713        }
714
715        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
716            int currentHashCode = 1;
717            {
718                List<Object> theAny;
719                theAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
720                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
721            }
722            return currentHashCode;
723        }
724
725        public int hashCode() {
726            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
727            return this.hashCode(null, strategy);
728        }
729
730        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
731            if (!(object instanceof DtoSimpleAuthenticationPlugin.UserPasswords)) {
732                return false;
733            }
734            if (this == object) {
735                return true;
736            }
737            final DtoSimpleAuthenticationPlugin.UserPasswords that = ((DtoSimpleAuthenticationPlugin.UserPasswords) object);
738            {
739                List<Object> lhsAny;
740                lhsAny = (((this.any!= null)&&(!this.any.isEmpty()))?this.getAny():null);
741                List<Object> rhsAny;
742                rhsAny = (((that.any!= null)&&(!that.any.isEmpty()))?that.getAny():null);
743                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
744                    return false;
745                }
746            }
747            return true;
748        }
749
750        public boolean equals(Object object) {
751            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
752            return equals(null, null, object, strategy);
753        }
754
755    }
756
757
758    /**
759     * <p>Java class for anonymous complex type.
760     * 
761     * <p>The following schema fragment specifies the expected content contained within this class.
762     * 
763     * <pre>
764     * &lt;complexType>
765     *   &lt;complexContent>
766     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
767     *       &lt;sequence maxOccurs="unbounded" minOccurs="0">
768     *         &lt;any maxOccurs="unbounded" minOccurs="0"/>
769     *       &lt;/sequence>
770     *     &lt;/restriction>
771     *   &lt;/complexContent>
772     * &lt;/complexType>
773     * </pre>
774     * 
775     * 
776     */
777    @XmlAccessorType(XmlAccessType.FIELD)
778    @XmlType(name = "", propOrder = {
779        "contents"
780    })
781    public static class Users
782        implements Equals, HashCode, ToString
783    {
784
785        @XmlAnyElement(lax = true)
786        protected List<Object> contents;
787
788        /**
789         * Gets the value of the contents property.
790         * 
791         * <p>
792         * This accessor method returns a reference to the live list,
793         * not a snapshot. Therefore any modification you make to the
794         * returned list will be present inside the JAXB object.
795         * This is why there is not a <CODE>set</CODE> method for the contents property.
796         * 
797         * <p>
798         * For example, to add a new item, do as follows:
799         * <pre>
800         *    getContents().add(newItem);
801         * </pre>
802         * 
803         * 
804         * <p>
805         * Objects of the following type(s) are allowed in the list
806         * {@link Object }
807         * 
808         * 
809         */
810        public List<Object> getContents() {
811            if (contents == null) {
812                contents = new ArrayList<Object>();
813            }
814            return this.contents;
815        }
816
817        public String toString() {
818            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
819            final StringBuilder buffer = new StringBuilder();
820            append(null, buffer, strategy);
821            return buffer.toString();
822        }
823
824        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
825            strategy.appendStart(locator, this, buffer);
826            appendFields(locator, buffer, strategy);
827            strategy.appendEnd(locator, this, buffer);
828            return buffer;
829        }
830
831        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
832            {
833                List<Object> theContents;
834                theContents = (((this.contents!= null)&&(!this.contents.isEmpty()))?this.getContents():null);
835                strategy.appendField(locator, this, "contents", buffer, theContents);
836            }
837            return buffer;
838        }
839
840        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
841            int currentHashCode = 1;
842            {
843                List<Object> theContents;
844                theContents = (((this.contents!= null)&&(!this.contents.isEmpty()))?this.getContents():null);
845                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "contents", theContents), currentHashCode, theContents);
846            }
847            return currentHashCode;
848        }
849
850        public int hashCode() {
851            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
852            return this.hashCode(null, strategy);
853        }
854
855        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
856            if (!(object instanceof DtoSimpleAuthenticationPlugin.Users)) {
857                return false;
858            }
859            if (this == object) {
860                return true;
861            }
862            final DtoSimpleAuthenticationPlugin.Users that = ((DtoSimpleAuthenticationPlugin.Users) object);
863            {
864                List<Object> lhsContents;
865                lhsContents = (((this.contents!= null)&&(!this.contents.isEmpty()))?this.getContents():null);
866                List<Object> rhsContents;
867                rhsContents = (((that.contents!= null)&&(!that.contents.isEmpty()))?that.getContents():null);
868                if (!strategy.equals(LocatorUtils.property(thisLocator, "contents", lhsContents), LocatorUtils.property(thatLocator, "contents", rhsContents), lhsContents, rhsContents)) {
869                    return false;
870                }
871            }
872            return true;
873        }
874
875        public boolean equals(Object object) {
876            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
877            return equals(null, null, object, strategy);
878        }
879
880    }
881
882}