001    
002    package org.oasis_open.docs.wsrf.bf_2;
003    
004    import java.util.ArrayList;
005    import java.util.HashMap;
006    import java.util.List;
007    import java.util.Map;
008    import javax.xml.bind.annotation.XmlAccessType;
009    import javax.xml.bind.annotation.XmlAccessorType;
010    import javax.xml.bind.annotation.XmlAnyAttribute;
011    import javax.xml.bind.annotation.XmlAnyElement;
012    import javax.xml.bind.annotation.XmlAttribute;
013    import javax.xml.bind.annotation.XmlElement;
014    import javax.xml.bind.annotation.XmlMixed;
015    import javax.xml.bind.annotation.XmlType;
016    import javax.xml.bind.annotation.XmlValue;
017    import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
018    import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
019    import javax.xml.datatype.XMLGregorianCalendar;
020    import javax.xml.namespace.QName;
021    import org.w3._2005._08.addressing.EndpointReferenceType;
022    import org.w3c.dom.Element;
023    
024    
025    /**
026     * <p>Java class for BaseFaultType complex type.
027     * 
028     * <p>The following schema fragment specifies the expected content contained within this class.
029     * 
030     * <pre>
031     * &lt;complexType name="BaseFaultType">
032     *   &lt;complexContent>
033     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
034     *       &lt;sequence>
035     *         &lt;any/>
036     *         &lt;element name="Timestamp" type="{http://www.w3.org/2001/XMLSchema}dateTime"/>
037     *         &lt;element name="Originator" type="{http://www.w3.org/2005/08/addressing}EndpointReferenceType" minOccurs="0"/>
038     *         &lt;element name="ErrorCode" minOccurs="0">
039     *           &lt;complexType>
040     *             &lt;complexContent>
041     *               &lt;extension base="{http://www.w3.org/2001/XMLSchema}anyType">
042     *                 &lt;attribute name="dialect" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
043     *               &lt;/extension>
044     *             &lt;/complexContent>
045     *           &lt;/complexType>
046     *         &lt;/element>
047     *         &lt;element name="Description" maxOccurs="unbounded" minOccurs="0">
048     *           &lt;complexType>
049     *             &lt;simpleContent>
050     *               &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>string">
051     *                 &lt;attribute ref="{http://www.w3.org/XML/1998/namespace}lang"/>
052     *               &lt;/extension>
053     *             &lt;/simpleContent>
054     *           &lt;/complexType>
055     *         &lt;/element>
056     *         &lt;element name="FaultCause" minOccurs="0">
057     *           &lt;complexType>
058     *             &lt;complexContent>
059     *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
060     *                 &lt;sequence>
061     *                   &lt;any/>
062     *                 &lt;/sequence>
063     *               &lt;/restriction>
064     *             &lt;/complexContent>
065     *           &lt;/complexType>
066     *         &lt;/element>
067     *       &lt;/sequence>
068     *     &lt;/restriction>
069     *   &lt;/complexContent>
070     * &lt;/complexType>
071     * </pre>
072     * 
073     * 
074     */
075    @XmlAccessorType(XmlAccessType.FIELD)
076    @XmlType(name = "BaseFaultType", propOrder = {
077        "any",
078        "timestamp",
079        "originator",
080        "errorCode",
081        "description",
082        "faultCause"
083    })
084    public class BaseFaultType {
085    
086        @XmlAnyElement(lax = true)
087        protected List<Object> any;
088        @XmlElement(name = "Timestamp", required = true)
089        protected XMLGregorianCalendar timestamp;
090        @XmlElement(name = "Originator")
091        protected EndpointReferenceType originator;
092        @XmlElement(name = "ErrorCode")
093        protected BaseFaultType.ErrorCode errorCode;
094        @XmlElement(name = "Description")
095        protected List<BaseFaultType.Description> description;
096        @XmlElement(name = "FaultCause")
097        protected BaseFaultType.FaultCause faultCause;
098        @XmlAnyAttribute
099        private Map<QName, String> otherAttributes = new HashMap<QName, String>();
100    
101        /**
102         * Gets the value of the any property.
103         * 
104         * <p>
105         * This accessor method returns a reference to the live list,
106         * not a snapshot. Therefore any modification you make to the
107         * returned list will be present inside the JAXB object.
108         * This is why there is not a <CODE>set</CODE> method for the any property.
109         * 
110         * <p>
111         * For example, to add a new item, do as follows:
112         * <pre>
113         *    getAny().add(newItem);
114         * </pre>
115         * 
116         * 
117         * <p>
118         * Objects of the following type(s) are allowed in the list
119         * {@link Object }
120         * {@link Element }
121         * 
122         * 
123         */
124        public List<Object> getAny() {
125            if (any == null) {
126                any = new ArrayList<Object>();
127            }
128            return this.any;
129        }
130    
131        /**
132         * Gets the value of the timestamp property.
133         * 
134         * @return
135         *     possible object is
136         *     {@link XMLGregorianCalendar }
137         *     
138         */
139        public XMLGregorianCalendar getTimestamp() {
140            return timestamp;
141        }
142    
143        /**
144         * Sets the value of the timestamp property.
145         * 
146         * @param value
147         *     allowed object is
148         *     {@link XMLGregorianCalendar }
149         *     
150         */
151        public void setTimestamp(XMLGregorianCalendar value) {
152            this.timestamp = value;
153        }
154    
155        /**
156         * Gets the value of the originator property.
157         * 
158         * @return
159         *     possible object is
160         *     {@link EndpointReferenceType }
161         *     
162         */
163        public EndpointReferenceType getOriginator() {
164            return originator;
165        }
166    
167        /**
168         * Sets the value of the originator property.
169         * 
170         * @param value
171         *     allowed object is
172         *     {@link EndpointReferenceType }
173         *     
174         */
175        public void setOriginator(EndpointReferenceType value) {
176            this.originator = value;
177        }
178    
179        /**
180         * Gets the value of the errorCode property.
181         * 
182         * @return
183         *     possible object is
184         *     {@link BaseFaultType.ErrorCode }
185         *     
186         */
187        public BaseFaultType.ErrorCode getErrorCode() {
188            return errorCode;
189        }
190    
191        /**
192         * Sets the value of the errorCode property.
193         * 
194         * @param value
195         *     allowed object is
196         *     {@link BaseFaultType.ErrorCode }
197         *     
198         */
199        public void setErrorCode(BaseFaultType.ErrorCode value) {
200            this.errorCode = value;
201        }
202    
203        /**
204         * Gets the value of the description property.
205         * 
206         * <p>
207         * This accessor method returns a reference to the live list,
208         * not a snapshot. Therefore any modification you make to the
209         * returned list will be present inside the JAXB object.
210         * This is why there is not a <CODE>set</CODE> method for the description property.
211         * 
212         * <p>
213         * For example, to add a new item, do as follows:
214         * <pre>
215         *    getDescription().add(newItem);
216         * </pre>
217         * 
218         * 
219         * <p>
220         * Objects of the following type(s) are allowed in the list
221         * {@link BaseFaultType.Description }
222         * 
223         * 
224         */
225        public List<BaseFaultType.Description> getDescription() {
226            if (description == null) {
227                description = new ArrayList<BaseFaultType.Description>();
228            }
229            return this.description;
230        }
231    
232        /**
233         * Gets the value of the faultCause property.
234         * 
235         * @return
236         *     possible object is
237         *     {@link BaseFaultType.FaultCause }
238         *     
239         */
240        public BaseFaultType.FaultCause getFaultCause() {
241            return faultCause;
242        }
243    
244        /**
245         * Sets the value of the faultCause property.
246         * 
247         * @param value
248         *     allowed object is
249         *     {@link BaseFaultType.FaultCause }
250         *     
251         */
252        public void setFaultCause(BaseFaultType.FaultCause value) {
253            this.faultCause = value;
254        }
255    
256        /**
257         * Gets a map that contains attributes that aren't bound to any typed property on this class.
258         * 
259         * <p>
260         * the map is keyed by the name of the attribute and 
261         * the value is the string value of the attribute.
262         * 
263         * the map returned by this method is live, and you can add new attribute
264         * by updating the map directly. Because of this design, there's no setter.
265         * 
266         * 
267         * @return
268         *     always non-null
269         */
270        public Map<QName, String> getOtherAttributes() {
271            return otherAttributes;
272        }
273    
274    
275        /**
276         * <p>Java class for anonymous complex type.
277         * 
278         * <p>The following schema fragment specifies the expected content contained within this class.
279         * 
280         * <pre>
281         * &lt;complexType>
282         *   &lt;simpleContent>
283         *     &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>string">
284         *       &lt;attribute ref="{http://www.w3.org/XML/1998/namespace}lang"/>
285         *     &lt;/extension>
286         *   &lt;/simpleContent>
287         * &lt;/complexType>
288         * </pre>
289         * 
290         * 
291         */
292        @XmlAccessorType(XmlAccessType.FIELD)
293        @XmlType(name = "", propOrder = {
294            "value"
295        })
296        public static class Description {
297    
298            @XmlValue
299            protected String value;
300            @XmlAttribute(namespace = "http://www.w3.org/XML/1998/namespace")
301            @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
302            protected String lang;
303    
304            /**
305             * Gets the value of the value property.
306             * 
307             * @return
308             *     possible object is
309             *     {@link String }
310             *     
311             */
312            public String getValue() {
313                return value;
314            }
315    
316            /**
317             * Sets the value of the value property.
318             * 
319             * @param value
320             *     allowed object is
321             *     {@link String }
322             *     
323             */
324            public void setValue(String value) {
325                this.value = value;
326            }
327    
328            /**
329             * Gets the value of the lang property.
330             * 
331             * @return
332             *     possible object is
333             *     {@link String }
334             *     
335             */
336            public String getLang() {
337                return lang;
338            }
339    
340            /**
341             * Sets the value of the lang property.
342             * 
343             * @param value
344             *     allowed object is
345             *     {@link String }
346             *     
347             */
348            public void setLang(String value) {
349                this.lang = value;
350            }
351    
352        }
353    
354    
355        /**
356         * <p>Java class for anonymous complex type.
357         * 
358         * <p>The following schema fragment specifies the expected content contained within this class.
359         * 
360         * <pre>
361         * &lt;complexType>
362         *   &lt;complexContent>
363         *     &lt;extension base="{http://www.w3.org/2001/XMLSchema}anyType">
364         *       &lt;attribute name="dialect" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
365         *     &lt;/extension>
366         *   &lt;/complexContent>
367         * &lt;/complexType>
368         * </pre>
369         * 
370         * 
371         */
372        @XmlAccessorType(XmlAccessType.FIELD)
373        @XmlType(name = "", propOrder = {
374            "content"
375        })
376        public static class ErrorCode {
377    
378            @XmlMixed
379            @XmlAnyElement
380            protected List<Object> content;
381            @XmlAttribute(required = true)
382            protected String dialect;
383            @XmlAnyAttribute
384            private Map<QName, String> otherAttributes = new HashMap<QName, String>();
385    
386            /**
387             * Gets the value of the content property.
388             * 
389             * <p>
390             * This accessor method returns a reference to the live list,
391             * not a snapshot. Therefore any modification you make to the
392             * returned list will be present inside the JAXB object.
393             * This is why there is not a <CODE>set</CODE> method for the content property.
394             * 
395             * <p>
396             * For example, to add a new item, do as follows:
397             * <pre>
398             *    getContent().add(newItem);
399             * </pre>
400             * 
401             * 
402             * <p>
403             * Objects of the following type(s) are allowed in the list
404             * {@link String }
405             * {@link Element }
406             * 
407             * 
408             */
409            public List<Object> getContent() {
410                if (content == null) {
411                    content = new ArrayList<Object>();
412                }
413                return this.content;
414            }
415    
416            /**
417             * Gets the value of the dialect property.
418             * 
419             * @return
420             *     possible object is
421             *     {@link String }
422             *     
423             */
424            public String getDialect() {
425                return dialect;
426            }
427    
428            /**
429             * Sets the value of the dialect property.
430             * 
431             * @param value
432             *     allowed object is
433             *     {@link String }
434             *     
435             */
436            public void setDialect(String value) {
437                this.dialect = value;
438            }
439    
440            /**
441             * Gets a map that contains attributes that aren't bound to any typed property on this class.
442             * 
443             * <p>
444             * the map is keyed by the name of the attribute and 
445             * the value is the string value of the attribute.
446             * 
447             * the map returned by this method is live, and you can add new attribute
448             * by updating the map directly. Because of this design, there's no setter.
449             * 
450             * 
451             * @return
452             *     always non-null
453             */
454            public Map<QName, String> getOtherAttributes() {
455                return otherAttributes;
456            }
457    
458        }
459    
460    
461        /**
462         * <p>Java class for anonymous complex type.
463         * 
464         * <p>The following schema fragment specifies the expected content contained within this class.
465         * 
466         * <pre>
467         * &lt;complexType>
468         *   &lt;complexContent>
469         *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
470         *       &lt;sequence>
471         *         &lt;any/>
472         *       &lt;/sequence>
473         *     &lt;/restriction>
474         *   &lt;/complexContent>
475         * &lt;/complexType>
476         * </pre>
477         * 
478         * 
479         */
480        @XmlAccessorType(XmlAccessType.FIELD)
481        @XmlType(name = "", propOrder = {
482            "any"
483        })
484        public static class FaultCause {
485    
486            @XmlAnyElement(lax = true)
487            protected Object any;
488    
489            /**
490             * Gets the value of the any property.
491             * 
492             * @return
493             *     possible object is
494             *     {@link Object }
495             *     {@link Element }
496             *     
497             */
498            public Object getAny() {
499                return any;
500            }
501    
502            /**
503             * Sets the value of the any property.
504             * 
505             * @param value
506             *     allowed object is
507             *     {@link Object }
508             *     {@link Element }
509             *     
510             */
511            public void setAny(Object value) {
512                this.any = value;
513            }
514    
515        }
516    
517    }