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.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="statements" minOccurs="0">
054 *             &lt;complexType>
055 *               &lt;complexContent>
056 *                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
057 *                   &lt;choice minOccurs="0">
058 *                     &lt;element ref="{http://activemq.apache.org/schema/core}statements"/>
059 *                     &lt;any namespace='##other'/>
060 *                   &lt;/choice>
061 *                 &lt;/restriction>
062 *               &lt;/complexContent>
063 *             &lt;/complexType>
064 *           &lt;/element>
065 *           &lt;any namespace='##other' maxOccurs="unbounded" minOccurs="0"/>
066 *         &lt;/choice>
067 *       &lt;/choice>
068 *       &lt;attribute name="batchStatements" type="{http://www.w3.org/2001/XMLSchema}boolean" />
069 *       &lt;attribute name="batchStatments" type="{http://www.w3.org/2001/XMLSchema}boolean" />
070 *       &lt;attribute name="maxRows" type="{http://www.w3.org/2001/XMLSchema}integer" />
071 *       &lt;attribute name="statements" type="{http://www.w3.org/2001/XMLSchema}string" />
072 *       &lt;attribute name="useExternalMessageReferences" type="{http://www.w3.org/2001/XMLSchema}boolean" />
073 *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
074 *       &lt;anyAttribute processContents='lax' namespace='##other'/>
075 *     &lt;/restriction>
076 *   &lt;/complexContent>
077 * &lt;/complexType>
078 * </pre>
079 * 
080 * 
081 */
082@XmlAccessorType(XmlAccessType.FIELD)
083@XmlType(name = "", propOrder = {
084    "statementsOrAny"
085})
086@XmlRootElement(name = "axionJDBCAdapter")
087public class DtoAxionJDBCAdapter
088    implements Equals, HashCode, ToString
089{
090
091    @XmlElementRef(name = "statements", namespace = "http://activemq.apache.org/schema/core", type = JAXBElement.class, required = false)
092    @XmlAnyElement(lax = true)
093    protected List<Object> statementsOrAny;
094    @XmlAttribute(name = "batchStatements")
095    protected Boolean batchStatements;
096    @XmlAttribute(name = "batchStatments")
097    protected Boolean batchStatments;
098    @XmlAttribute(name = "maxRows")
099    protected BigInteger maxRows;
100    @XmlAttribute(name = "statements")
101    protected String statements;
102    @XmlAttribute(name = "useExternalMessageReferences")
103    protected Boolean useExternalMessageReferences;
104    @XmlAttribute(name = "id")
105    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
106    @XmlID
107    @XmlSchemaType(name = "ID")
108    protected String id;
109    @XmlAnyAttribute
110    private Map<QName, String> otherAttributes = new HashMap<QName, String>();
111
112    /**
113     * Gets the value of the statementsOrAny property.
114     * 
115     * <p>
116     * This accessor method returns a reference to the live list,
117     * not a snapshot. Therefore any modification you make to the
118     * returned list will be present inside the JAXB object.
119     * This is why there is not a <CODE>set</CODE> method for the statementsOrAny property.
120     * 
121     * <p>
122     * For example, to add a new item, do as follows:
123     * <pre>
124     *    getStatementsOrAny().add(newItem);
125     * </pre>
126     * 
127     * 
128     * <p>
129     * Objects of the following type(s) are allowed in the list
130     * {@link Object }
131     * {@link JAXBElement }{@code <}{@link DtoAxionJDBCAdapter.Statements }{@code >}
132     * 
133     * 
134     */
135    public List<Object> getStatementsOrAny() {
136        if (statementsOrAny == null) {
137            statementsOrAny = new ArrayList<Object>();
138        }
139        return this.statementsOrAny;
140    }
141
142    /**
143     * Gets the value of the batchStatements property.
144     * 
145     * @return
146     *     possible object is
147     *     {@link Boolean }
148     *     
149     */
150    public Boolean isBatchStatements() {
151        return batchStatements;
152    }
153
154    /**
155     * Sets the value of the batchStatements property.
156     * 
157     * @param value
158     *     allowed object is
159     *     {@link Boolean }
160     *     
161     */
162    public void setBatchStatements(Boolean value) {
163        this.batchStatements = value;
164    }
165
166    /**
167     * Gets the value of the batchStatments property.
168     * 
169     * @return
170     *     possible object is
171     *     {@link Boolean }
172     *     
173     */
174    public Boolean isBatchStatments() {
175        return batchStatments;
176    }
177
178    /**
179     * Sets the value of the batchStatments property.
180     * 
181     * @param value
182     *     allowed object is
183     *     {@link Boolean }
184     *     
185     */
186    public void setBatchStatments(Boolean value) {
187        this.batchStatments = value;
188    }
189
190    /**
191     * Gets the value of the maxRows property.
192     * 
193     * @return
194     *     possible object is
195     *     {@link BigInteger }
196     *     
197     */
198    public BigInteger getMaxRows() {
199        return maxRows;
200    }
201
202    /**
203     * Sets the value of the maxRows property.
204     * 
205     * @param value
206     *     allowed object is
207     *     {@link BigInteger }
208     *     
209     */
210    public void setMaxRows(BigInteger value) {
211        this.maxRows = value;
212    }
213
214    /**
215     * Gets the value of the statements property.
216     * 
217     * @return
218     *     possible object is
219     *     {@link String }
220     *     
221     */
222    public String getStatements() {
223        return statements;
224    }
225
226    /**
227     * Sets the value of the statements property.
228     * 
229     * @param value
230     *     allowed object is
231     *     {@link String }
232     *     
233     */
234    public void setStatements(String value) {
235        this.statements = value;
236    }
237
238    /**
239     * Gets the value of the useExternalMessageReferences property.
240     * 
241     * @return
242     *     possible object is
243     *     {@link Boolean }
244     *     
245     */
246    public Boolean isUseExternalMessageReferences() {
247        return useExternalMessageReferences;
248    }
249
250    /**
251     * Sets the value of the useExternalMessageReferences property.
252     * 
253     * @param value
254     *     allowed object is
255     *     {@link Boolean }
256     *     
257     */
258    public void setUseExternalMessageReferences(Boolean value) {
259        this.useExternalMessageReferences = value;
260    }
261
262    /**
263     * Gets the value of the id property.
264     * 
265     * @return
266     *     possible object is
267     *     {@link String }
268     *     
269     */
270    public String getId() {
271        return id;
272    }
273
274    /**
275     * Sets the value of the id property.
276     * 
277     * @param value
278     *     allowed object is
279     *     {@link String }
280     *     
281     */
282    public void setId(String value) {
283        this.id = value;
284    }
285
286    /**
287     * Gets a map that contains attributes that aren't bound to any typed property on this class.
288     * 
289     * <p>
290     * the map is keyed by the name of the attribute and 
291     * the value is the string value of the attribute.
292     * 
293     * the map returned by this method is live, and you can add new attribute
294     * by updating the map directly. Because of this design, there's no setter.
295     * 
296     * 
297     * @return
298     *     always non-null
299     */
300    public Map<QName, String> getOtherAttributes() {
301        return otherAttributes;
302    }
303
304    public String toString() {
305        final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
306        final StringBuilder buffer = new StringBuilder();
307        append(null, buffer, strategy);
308        return buffer.toString();
309    }
310
311    public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
312        strategy.appendStart(locator, this, buffer);
313        appendFields(locator, buffer, strategy);
314        strategy.appendEnd(locator, this, buffer);
315        return buffer;
316    }
317
318    public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
319        {
320            List<Object> theStatementsOrAny;
321            theStatementsOrAny = (((this.statementsOrAny!= null)&&(!this.statementsOrAny.isEmpty()))?this.getStatementsOrAny():null);
322            strategy.appendField(locator, this, "statementsOrAny", buffer, theStatementsOrAny);
323        }
324        {
325            Boolean theBatchStatements;
326            theBatchStatements = this.isBatchStatements();
327            strategy.appendField(locator, this, "batchStatements", buffer, theBatchStatements);
328        }
329        {
330            Boolean theBatchStatments;
331            theBatchStatments = this.isBatchStatments();
332            strategy.appendField(locator, this, "batchStatments", buffer, theBatchStatments);
333        }
334        {
335            BigInteger theMaxRows;
336            theMaxRows = this.getMaxRows();
337            strategy.appendField(locator, this, "maxRows", buffer, theMaxRows);
338        }
339        {
340            String theStatements;
341            theStatements = this.getStatements();
342            strategy.appendField(locator, this, "statements", buffer, theStatements);
343        }
344        {
345            Boolean theUseExternalMessageReferences;
346            theUseExternalMessageReferences = this.isUseExternalMessageReferences();
347            strategy.appendField(locator, this, "useExternalMessageReferences", buffer, theUseExternalMessageReferences);
348        }
349        {
350            String theId;
351            theId = this.getId();
352            strategy.appendField(locator, this, "id", buffer, theId);
353        }
354        return buffer;
355    }
356
357    public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
358        int currentHashCode = 1;
359        {
360            List<Object> theStatementsOrAny;
361            theStatementsOrAny = (((this.statementsOrAny!= null)&&(!this.statementsOrAny.isEmpty()))?this.getStatementsOrAny():null);
362            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "statementsOrAny", theStatementsOrAny), currentHashCode, theStatementsOrAny);
363        }
364        {
365            Boolean theBatchStatements;
366            theBatchStatements = this.isBatchStatements();
367            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "batchStatements", theBatchStatements), currentHashCode, theBatchStatements);
368        }
369        {
370            Boolean theBatchStatments;
371            theBatchStatments = this.isBatchStatments();
372            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "batchStatments", theBatchStatments), currentHashCode, theBatchStatments);
373        }
374        {
375            BigInteger theMaxRows;
376            theMaxRows = this.getMaxRows();
377            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "maxRows", theMaxRows), currentHashCode, theMaxRows);
378        }
379        {
380            String theStatements;
381            theStatements = this.getStatements();
382            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "statements", theStatements), currentHashCode, theStatements);
383        }
384        {
385            Boolean theUseExternalMessageReferences;
386            theUseExternalMessageReferences = this.isUseExternalMessageReferences();
387            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "useExternalMessageReferences", theUseExternalMessageReferences), currentHashCode, theUseExternalMessageReferences);
388        }
389        {
390            String theId;
391            theId = this.getId();
392            currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "id", theId), currentHashCode, theId);
393        }
394        return currentHashCode;
395    }
396
397    public int hashCode() {
398        final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
399        return this.hashCode(null, strategy);
400    }
401
402    public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
403        if (!(object instanceof DtoAxionJDBCAdapter)) {
404            return false;
405        }
406        if (this == object) {
407            return true;
408        }
409        final DtoAxionJDBCAdapter that = ((DtoAxionJDBCAdapter) object);
410        {
411            List<Object> lhsStatementsOrAny;
412            lhsStatementsOrAny = (((this.statementsOrAny!= null)&&(!this.statementsOrAny.isEmpty()))?this.getStatementsOrAny():null);
413            List<Object> rhsStatementsOrAny;
414            rhsStatementsOrAny = (((that.statementsOrAny!= null)&&(!that.statementsOrAny.isEmpty()))?that.getStatementsOrAny():null);
415            if (!strategy.equals(LocatorUtils.property(thisLocator, "statementsOrAny", lhsStatementsOrAny), LocatorUtils.property(thatLocator, "statementsOrAny", rhsStatementsOrAny), lhsStatementsOrAny, rhsStatementsOrAny)) {
416                return false;
417            }
418        }
419        {
420            Boolean lhsBatchStatements;
421            lhsBatchStatements = this.isBatchStatements();
422            Boolean rhsBatchStatements;
423            rhsBatchStatements = that.isBatchStatements();
424            if (!strategy.equals(LocatorUtils.property(thisLocator, "batchStatements", lhsBatchStatements), LocatorUtils.property(thatLocator, "batchStatements", rhsBatchStatements), lhsBatchStatements, rhsBatchStatements)) {
425                return false;
426            }
427        }
428        {
429            Boolean lhsBatchStatments;
430            lhsBatchStatments = this.isBatchStatments();
431            Boolean rhsBatchStatments;
432            rhsBatchStatments = that.isBatchStatments();
433            if (!strategy.equals(LocatorUtils.property(thisLocator, "batchStatments", lhsBatchStatments), LocatorUtils.property(thatLocator, "batchStatments", rhsBatchStatments), lhsBatchStatments, rhsBatchStatments)) {
434                return false;
435            }
436        }
437        {
438            BigInteger lhsMaxRows;
439            lhsMaxRows = this.getMaxRows();
440            BigInteger rhsMaxRows;
441            rhsMaxRows = that.getMaxRows();
442            if (!strategy.equals(LocatorUtils.property(thisLocator, "maxRows", lhsMaxRows), LocatorUtils.property(thatLocator, "maxRows", rhsMaxRows), lhsMaxRows, rhsMaxRows)) {
443                return false;
444            }
445        }
446        {
447            String lhsStatements;
448            lhsStatements = this.getStatements();
449            String rhsStatements;
450            rhsStatements = that.getStatements();
451            if (!strategy.equals(LocatorUtils.property(thisLocator, "statements", lhsStatements), LocatorUtils.property(thatLocator, "statements", rhsStatements), lhsStatements, rhsStatements)) {
452                return false;
453            }
454        }
455        {
456            Boolean lhsUseExternalMessageReferences;
457            lhsUseExternalMessageReferences = this.isUseExternalMessageReferences();
458            Boolean rhsUseExternalMessageReferences;
459            rhsUseExternalMessageReferences = that.isUseExternalMessageReferences();
460            if (!strategy.equals(LocatorUtils.property(thisLocator, "useExternalMessageReferences", lhsUseExternalMessageReferences), LocatorUtils.property(thatLocator, "useExternalMessageReferences", rhsUseExternalMessageReferences), lhsUseExternalMessageReferences, rhsUseExternalMessageReferences)) {
461                return false;
462            }
463        }
464        {
465            String lhsId;
466            lhsId = this.getId();
467            String rhsId;
468            rhsId = that.getId();
469            if (!strategy.equals(LocatorUtils.property(thisLocator, "id", lhsId), LocatorUtils.property(thatLocator, "id", rhsId), lhsId, rhsId)) {
470                return false;
471            }
472        }
473        return true;
474    }
475
476    public boolean equals(Object object) {
477        final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
478        return equals(null, null, object, strategy);
479    }
480
481
482    /**
483     * <p>Java class for anonymous complex type.
484     * 
485     * <p>The following schema fragment specifies the expected content contained within this class.
486     * 
487     * <pre>
488     * &lt;complexType>
489     *   &lt;complexContent>
490     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
491     *       &lt;choice minOccurs="0">
492     *         &lt;element ref="{http://activemq.apache.org/schema/core}statements"/>
493     *         &lt;any namespace='##other'/>
494     *       &lt;/choice>
495     *     &lt;/restriction>
496     *   &lt;/complexContent>
497     * &lt;/complexType>
498     * </pre>
499     * 
500     * 
501     */
502    @XmlAccessorType(XmlAccessType.FIELD)
503    @XmlType(name = "", propOrder = {
504        "statements",
505        "any"
506    })
507    public static class Statements
508        implements Equals, HashCode, ToString
509    {
510
511        protected DtoStatements statements;
512        @XmlAnyElement(lax = true)
513        protected Object any;
514
515        /**
516         * Gets the value of the statements property.
517         * 
518         * @return
519         *     possible object is
520         *     {@link DtoStatements }
521         *     
522         */
523        public DtoStatements getStatements() {
524            return statements;
525        }
526
527        /**
528         * Sets the value of the statements property.
529         * 
530         * @param value
531         *     allowed object is
532         *     {@link DtoStatements }
533         *     
534         */
535        public void setStatements(DtoStatements value) {
536            this.statements = value;
537        }
538
539        /**
540         * Gets the value of the any property.
541         * 
542         * @return
543         *     possible object is
544         *     {@link Object }
545         *     
546         */
547        public Object getAny() {
548            return any;
549        }
550
551        /**
552         * Sets the value of the any property.
553         * 
554         * @param value
555         *     allowed object is
556         *     {@link Object }
557         *     
558         */
559        public void setAny(Object value) {
560            this.any = value;
561        }
562
563        public String toString() {
564            final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
565            final StringBuilder buffer = new StringBuilder();
566            append(null, buffer, strategy);
567            return buffer.toString();
568        }
569
570        public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
571            strategy.appendStart(locator, this, buffer);
572            appendFields(locator, buffer, strategy);
573            strategy.appendEnd(locator, this, buffer);
574            return buffer;
575        }
576
577        public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
578            {
579                DtoStatements theStatements;
580                theStatements = this.getStatements();
581                strategy.appendField(locator, this, "statements", buffer, theStatements);
582            }
583            {
584                Object theAny;
585                theAny = this.getAny();
586                strategy.appendField(locator, this, "any", buffer, theAny);
587            }
588            return buffer;
589        }
590
591        public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
592            int currentHashCode = 1;
593            {
594                DtoStatements theStatements;
595                theStatements = this.getStatements();
596                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "statements", theStatements), currentHashCode, theStatements);
597            }
598            {
599                Object theAny;
600                theAny = this.getAny();
601                currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "any", theAny), currentHashCode, theAny);
602            }
603            return currentHashCode;
604        }
605
606        public int hashCode() {
607            final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
608            return this.hashCode(null, strategy);
609        }
610
611        public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
612            if (!(object instanceof DtoAxionJDBCAdapter.Statements)) {
613                return false;
614            }
615            if (this == object) {
616                return true;
617            }
618            final DtoAxionJDBCAdapter.Statements that = ((DtoAxionJDBCAdapter.Statements) object);
619            {
620                DtoStatements lhsStatements;
621                lhsStatements = this.getStatements();
622                DtoStatements rhsStatements;
623                rhsStatements = that.getStatements();
624                if (!strategy.equals(LocatorUtils.property(thisLocator, "statements", lhsStatements), LocatorUtils.property(thatLocator, "statements", rhsStatements), lhsStatements, rhsStatements)) {
625                    return false;
626                }
627            }
628            {
629                Object lhsAny;
630                lhsAny = this.getAny();
631                Object rhsAny;
632                rhsAny = that.getAny();
633                if (!strategy.equals(LocatorUtils.property(thisLocator, "any", lhsAny), LocatorUtils.property(thatLocator, "any", rhsAny), lhsAny, rhsAny)) {
634                    return false;
635                }
636            }
637            return true;
638        }
639
640        public boolean equals(Object object) {
641            final EqualsStrategy strategy = new org.apache.activemq.plugin.jaxb2_commons.ElementAwareEqualsStrategy();
642            return equals(null, null, object, strategy);
643        }
644
645    }
646
647}