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.12.02 at 07:37:45 AM EST 
006//
007
008
009package org.apache.activemq.schema.core;
010
011import java.util.HashMap;
012import java.util.Map;
013import javax.xml.bind.annotation.XmlAccessType;
014import javax.xml.bind.annotation.XmlAccessorType;
015import javax.xml.bind.annotation.XmlAnyAttribute;
016import javax.xml.bind.annotation.XmlAttribute;
017import javax.xml.bind.annotation.XmlID;
018import javax.xml.bind.annotation.XmlRootElement;
019import javax.xml.bind.annotation.XmlSchemaType;
020import javax.xml.bind.annotation.XmlType;
021import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
022import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
023import javax.xml.namespace.QName;
024import org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy;
025import org.jvnet.jaxb2_commons.lang.Equals;
026import org.jvnet.jaxb2_commons.lang.EqualsStrategy;
027import org.jvnet.jaxb2_commons.lang.HashCode;
028import org.jvnet.jaxb2_commons.lang.HashCodeStrategy;
029import org.jvnet.jaxb2_commons.lang.JAXBHashCodeStrategy;
030import org.jvnet.jaxb2_commons.lang.JAXBToStringStrategy;
031import org.jvnet.jaxb2_commons.lang.ToString;
032import org.jvnet.jaxb2_commons.lang.ToStringStrategy;
033import org.jvnet.jaxb2_commons.locator.ObjectLocator;
034import org.jvnet.jaxb2_commons.locator.util.LocatorUtils;
035
036
037/**
038 * <p>Java class for anonymous complex type.
039 * 
040 * <p>The following schema fragment specifies the expected content contained within this class.
041 * 
042 * <pre>
043 * &lt;complexType>
044 *   &lt;complexContent>
045 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
046 *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
047 *       &lt;anyAttribute processContents='lax' namespace='##other'/>
048 *     &lt;/restriction>
049 *   &lt;/complexContent>
050 * &lt;/complexType>
051 * </pre>
052 * 
053 * 
054 */
055@XmlAccessorType(XmlAccessType.FIELD)
056@XmlType(name = "")
057@XmlRootElement(name = "statisticsBrokerPlugin")
058public class DtoStatisticsBrokerPlugin implements Equals, HashCode, ToString
059{
060
061    @XmlAttribute(name = "id")
062    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
063    @XmlID
064    @XmlSchemaType(name = "ID")
065    protected String id;
066    @XmlAnyAttribute
067    private Map<QName, String> otherAttributes = new HashMap<QName, String>();
068
069    /**
070     * Gets the value of the id property.
071     * 
072     * @return
073     *     possible object is
074     *     {@link String }
075     *     
076     */
077    public String getId() {
078        return id;
079    }
080
081    /**
082     * Sets the value of the id property.
083     * 
084     * @param value
085     *     allowed object is
086     *     {@link String }
087     *     
088     */
089    public void setId(String value) {
090        this.id = value;
091    }
092
093    /**
094     * Gets a map that contains attributes that aren't bound to any typed property on this class.
095     * 
096     * <p>
097     * the map is keyed by the name of the attribute and 
098     * the value is the string value of the attribute.
099     * 
100     * the map returned by this method is live, and you can add new attribute
101     * by updating the map directly. Because of this design, there's no setter.
102     * 
103     * 
104     * @return
105     *     always non-null
106     */
107    public Map<QName, String> getOtherAttributes() {
108        return otherAttributes;
109    }
110
111    public String toString() {
112        final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
113        final StringBuilder buffer = new StringBuilder();
114        append(null, buffer, strategy);
115        return buffer.toString();
116    }
117
118    public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
119        strategy.appendStart(locator, this, buffer);
120        appendFields(locator, buffer, strategy);
121        strategy.appendEnd(locator, this, buffer);
122        return buffer;
123    }
124
125    public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
126        {
127            String theId;
128            theId = this.getId();
129            strategy.appendField(locator, this, "id", buffer, theId);
130        }
131        return buffer;
132    }
133
134    public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
135        int currentHashCode = 1;
136        {
137            String theId;
138            theId = this.getId();
139            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "id", theId), currentHashCode, theId);
140        }
141        return currentHashCode;
142    }
143
144    public int hashCode() {
145        final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
146        return this.hashCode(null, strategy);
147    }
148
149    public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
150        if (!(object instanceof DtoStatisticsBrokerPlugin)) {
151            return false;
152        }
153        if (this == object) {
154            return true;
155        }
156        final DtoStatisticsBrokerPlugin that = ((DtoStatisticsBrokerPlugin) object);
157        {
158            String lhsId;
159            lhsId = this.getId();
160            String rhsId;
161            rhsId = that.getId();
162            if (!strategy.equals(LocatorUtils.property(thisLocator, "id", lhsId), LocatorUtils.property(thatLocator, "id", rhsId), lhsId, rhsId)) {
163                return false;
164            }
165        }
166        return true;
167    }
168
169    public boolean equals(Object object) {
170        final EqualsStrategy strategy = new ElementAwareEqualsStrategy();
171        return equals(null, null, object, strategy);
172    }
173
174}