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