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.08.16 at 01:13:55 AM EDT 
006//
007
008
009package org.apache.activemq.schema.core;
010
011import java.math.BigInteger;
012import java.util.HashMap;
013import java.util.Map;
014import javax.xml.bind.annotation.XmlAccessType;
015import javax.xml.bind.annotation.XmlAccessorType;
016import javax.xml.bind.annotation.XmlAnyAttribute;
017import javax.xml.bind.annotation.XmlAttribute;
018import javax.xml.bind.annotation.XmlID;
019import javax.xml.bind.annotation.XmlRootElement;
020import javax.xml.bind.annotation.XmlSchemaType;
021import javax.xml.bind.annotation.XmlType;
022import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
023import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
024import javax.xml.namespace.QName;
025import org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy;
026import org.jvnet.jaxb2_commons.lang.Equals;
027import org.jvnet.jaxb2_commons.lang.EqualsStrategy;
028import org.jvnet.jaxb2_commons.lang.HashCode;
029import org.jvnet.jaxb2_commons.lang.HashCodeStrategy;
030import org.jvnet.jaxb2_commons.lang.JAXBHashCodeStrategy;
031import org.jvnet.jaxb2_commons.lang.JAXBToStringStrategy;
032import org.jvnet.jaxb2_commons.lang.ToString;
033import org.jvnet.jaxb2_commons.lang.ToStringStrategy;
034import org.jvnet.jaxb2_commons.locator.ObjectLocator;
035import org.jvnet.jaxb2_commons.locator.util.LocatorUtils;
036
037
038/**
039 * <p>Java class for anonymous complex type.
040 * 
041 * <p>The following schema fragment specifies the expected content contained within this class.
042 * 
043 * <pre>
044 * &lt;complexType>
045 *   &lt;complexContent>
046 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
047 *       &lt;attribute name="rateDuration" type="{http://www.w3.org/2001/XMLSchema}integer" />
048 *       &lt;attribute name="rateLimit" type="{http://www.w3.org/2001/XMLSchema}integer" />
049 *       &lt;attribute name="replayDelay" type="{http://www.w3.org/2001/XMLSchema}integer" />
050 *       &lt;attribute name="replayWhenNoConsumers" type="{http://www.w3.org/2001/XMLSchema}boolean" />
051 *       &lt;attribute name="selectorAware" type="{http://www.w3.org/2001/XMLSchema}boolean" />
052 *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
053 *       &lt;anyAttribute processContents='lax' namespace='##other'/>
054 *     &lt;/restriction>
055 *   &lt;/complexContent>
056 * &lt;/complexType>
057 * </pre>
058 * 
059 * 
060 */
061@XmlAccessorType(XmlAccessType.FIELD)
062@XmlType(name = "")
063@XmlRootElement(name = "conditionalNetworkBridgeFilterFactory")
064public class DtoConditionalNetworkBridgeFilterFactory
065    implements Equals, HashCode, ToString
066{
067
068    @XmlAttribute(name = "rateDuration")
069    protected BigInteger rateDuration;
070    @XmlAttribute(name = "rateLimit")
071    protected BigInteger rateLimit;
072    @XmlAttribute(name = "replayDelay")
073    protected BigInteger replayDelay;
074    @XmlAttribute(name = "replayWhenNoConsumers")
075    protected Boolean replayWhenNoConsumers;
076    @XmlAttribute(name = "selectorAware")
077    protected Boolean selectorAware;
078    @XmlAttribute(name = "id")
079    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
080    @XmlID
081    @XmlSchemaType(name = "ID")
082    protected String id;
083    @XmlAnyAttribute
084    private Map<QName, String> otherAttributes = new HashMap<QName, String>();
085
086    /**
087     * Gets the value of the rateDuration property.
088     * 
089     * @return
090     *     possible object is
091     *     {@link BigInteger }
092     *     
093     */
094    public BigInteger getRateDuration() {
095        return rateDuration;
096    }
097
098    /**
099     * Sets the value of the rateDuration property.
100     * 
101     * @param value
102     *     allowed object is
103     *     {@link BigInteger }
104     *     
105     */
106    public void setRateDuration(BigInteger value) {
107        this.rateDuration = value;
108    }
109
110    /**
111     * Gets the value of the rateLimit property.
112     * 
113     * @return
114     *     possible object is
115     *     {@link BigInteger }
116     *     
117     */
118    public BigInteger getRateLimit() {
119        return rateLimit;
120    }
121
122    /**
123     * Sets the value of the rateLimit property.
124     * 
125     * @param value
126     *     allowed object is
127     *     {@link BigInteger }
128     *     
129     */
130    public void setRateLimit(BigInteger value) {
131        this.rateLimit = value;
132    }
133
134    /**
135     * Gets the value of the replayDelay property.
136     * 
137     * @return
138     *     possible object is
139     *     {@link BigInteger }
140     *     
141     */
142    public BigInteger getReplayDelay() {
143        return replayDelay;
144    }
145
146    /**
147     * Sets the value of the replayDelay property.
148     * 
149     * @param value
150     *     allowed object is
151     *     {@link BigInteger }
152     *     
153     */
154    public void setReplayDelay(BigInteger value) {
155        this.replayDelay = value;
156    }
157
158    /**
159     * Gets the value of the replayWhenNoConsumers property.
160     * 
161     * @return
162     *     possible object is
163     *     {@link Boolean }
164     *     
165     */
166    public Boolean isReplayWhenNoConsumers() {
167        return replayWhenNoConsumers;
168    }
169
170    /**
171     * Sets the value of the replayWhenNoConsumers property.
172     * 
173     * @param value
174     *     allowed object is
175     *     {@link Boolean }
176     *     
177     */
178    public void setReplayWhenNoConsumers(Boolean value) {
179        this.replayWhenNoConsumers = value;
180    }
181
182    /**
183     * Gets the value of the selectorAware property.
184     * 
185     * @return
186     *     possible object is
187     *     {@link Boolean }
188     *     
189     */
190    public Boolean isSelectorAware() {
191        return selectorAware;
192    }
193
194    /**
195     * Sets the value of the selectorAware property.
196     * 
197     * @param value
198     *     allowed object is
199     *     {@link Boolean }
200     *     
201     */
202    public void setSelectorAware(Boolean value) {
203        this.selectorAware = value;
204    }
205
206    /**
207     * Gets the value of the id property.
208     * 
209     * @return
210     *     possible object is
211     *     {@link String }
212     *     
213     */
214    public String getId() {
215        return id;
216    }
217
218    /**
219     * Sets the value of the id property.
220     * 
221     * @param value
222     *     allowed object is
223     *     {@link String }
224     *     
225     */
226    public void setId(String value) {
227        this.id = value;
228    }
229
230    /**
231     * Gets a map that contains attributes that aren't bound to any typed property on this class.
232     * 
233     * <p>
234     * the map is keyed by the name of the attribute and 
235     * the value is the string value of the attribute.
236     * 
237     * the map returned by this method is live, and you can add new attribute
238     * by updating the map directly. Because of this design, there's no setter.
239     * 
240     * 
241     * @return
242     *     always non-null
243     */
244    public Map<QName, String> getOtherAttributes() {
245        return otherAttributes;
246    }
247
248    public String toString() {
249        final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
250        final StringBuilder buffer = new StringBuilder();
251        append(null, buffer, strategy);
252        return buffer.toString();
253    }
254
255    public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
256        strategy.appendStart(locator, this, buffer);
257        appendFields(locator, buffer, strategy);
258        strategy.appendEnd(locator, this, buffer);
259        return buffer;
260    }
261
262    public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
263        {
264            BigInteger theRateDuration;
265            theRateDuration = this.getRateDuration();
266            strategy.appendField(locator, this, "rateDuration", buffer, theRateDuration);
267        }
268        {
269            BigInteger theRateLimit;
270            theRateLimit = this.getRateLimit();
271            strategy.appendField(locator, this, "rateLimit", buffer, theRateLimit);
272        }
273        {
274            BigInteger theReplayDelay;
275            theReplayDelay = this.getReplayDelay();
276            strategy.appendField(locator, this, "replayDelay", buffer, theReplayDelay);
277        }
278        {
279            Boolean theReplayWhenNoConsumers;
280            theReplayWhenNoConsumers = this.isReplayWhenNoConsumers();
281            strategy.appendField(locator, this, "replayWhenNoConsumers", buffer, theReplayWhenNoConsumers);
282        }
283        {
284            Boolean theSelectorAware;
285            theSelectorAware = this.isSelectorAware();
286            strategy.appendField(locator, this, "selectorAware", buffer, theSelectorAware);
287        }
288        {
289            String theId;
290            theId = this.getId();
291            strategy.appendField(locator, this, "id", buffer, theId);
292        }
293        return buffer;
294    }
295
296    public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
297        int currentHashCode = 1;
298        {
299            BigInteger theRateDuration;
300            theRateDuration = this.getRateDuration();
301            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "rateDuration", theRateDuration), currentHashCode, theRateDuration);
302        }
303        {
304            BigInteger theRateLimit;
305            theRateLimit = this.getRateLimit();
306            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "rateLimit", theRateLimit), currentHashCode, theRateLimit);
307        }
308        {
309            BigInteger theReplayDelay;
310            theReplayDelay = this.getReplayDelay();
311            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "replayDelay", theReplayDelay), currentHashCode, theReplayDelay);
312        }
313        {
314            Boolean theReplayWhenNoConsumers;
315            theReplayWhenNoConsumers = this.isReplayWhenNoConsumers();
316            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "replayWhenNoConsumers", theReplayWhenNoConsumers), currentHashCode, theReplayWhenNoConsumers);
317        }
318        {
319            Boolean theSelectorAware;
320            theSelectorAware = this.isSelectorAware();
321            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "selectorAware", theSelectorAware), currentHashCode, theSelectorAware);
322        }
323        {
324            String theId;
325            theId = this.getId();
326            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "id", theId), currentHashCode, theId);
327        }
328        return currentHashCode;
329    }
330
331    public int hashCode() {
332        final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
333        return this.hashCode(null, strategy);
334    }
335
336    public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
337        if (!(object instanceof DtoConditionalNetworkBridgeFilterFactory)) {
338            return false;
339        }
340        if (this == object) {
341            return true;
342        }
343        final DtoConditionalNetworkBridgeFilterFactory that = ((DtoConditionalNetworkBridgeFilterFactory) object);
344        {
345            BigInteger lhsRateDuration;
346            lhsRateDuration = this.getRateDuration();
347            BigInteger rhsRateDuration;
348            rhsRateDuration = that.getRateDuration();
349            if (!strategy.equals(LocatorUtils.property(thisLocator, "rateDuration", lhsRateDuration), LocatorUtils.property(thatLocator, "rateDuration", rhsRateDuration), lhsRateDuration, rhsRateDuration)) {
350                return false;
351            }
352        }
353        {
354            BigInteger lhsRateLimit;
355            lhsRateLimit = this.getRateLimit();
356            BigInteger rhsRateLimit;
357            rhsRateLimit = that.getRateLimit();
358            if (!strategy.equals(LocatorUtils.property(thisLocator, "rateLimit", lhsRateLimit), LocatorUtils.property(thatLocator, "rateLimit", rhsRateLimit), lhsRateLimit, rhsRateLimit)) {
359                return false;
360            }
361        }
362        {
363            BigInteger lhsReplayDelay;
364            lhsReplayDelay = this.getReplayDelay();
365            BigInteger rhsReplayDelay;
366            rhsReplayDelay = that.getReplayDelay();
367            if (!strategy.equals(LocatorUtils.property(thisLocator, "replayDelay", lhsReplayDelay), LocatorUtils.property(thatLocator, "replayDelay", rhsReplayDelay), lhsReplayDelay, rhsReplayDelay)) {
368                return false;
369            }
370        }
371        {
372            Boolean lhsReplayWhenNoConsumers;
373            lhsReplayWhenNoConsumers = this.isReplayWhenNoConsumers();
374            Boolean rhsReplayWhenNoConsumers;
375            rhsReplayWhenNoConsumers = that.isReplayWhenNoConsumers();
376            if (!strategy.equals(LocatorUtils.property(thisLocator, "replayWhenNoConsumers", lhsReplayWhenNoConsumers), LocatorUtils.property(thatLocator, "replayWhenNoConsumers", rhsReplayWhenNoConsumers), lhsReplayWhenNoConsumers, rhsReplayWhenNoConsumers)) {
377                return false;
378            }
379        }
380        {
381            Boolean lhsSelectorAware;
382            lhsSelectorAware = this.isSelectorAware();
383            Boolean rhsSelectorAware;
384            rhsSelectorAware = that.isSelectorAware();
385            if (!strategy.equals(LocatorUtils.property(thisLocator, "selectorAware", lhsSelectorAware), LocatorUtils.property(thatLocator, "selectorAware", rhsSelectorAware), lhsSelectorAware, rhsSelectorAware)) {
386                return false;
387            }
388        }
389        {
390            String lhsId;
391            lhsId = this.getId();
392            String rhsId;
393            rhsId = that.getId();
394            if (!strategy.equals(LocatorUtils.property(thisLocator, "id", lhsId), LocatorUtils.property(thatLocator, "id", rhsId), lhsId, rhsId)) {
395                return false;
396            }
397        }
398        return true;
399    }
400
401    public boolean equals(Object object) {
402        final EqualsStrategy strategy = new ElementAwareEqualsStrategy();
403        return equals(null, null, object, strategy);
404    }
405
406}