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