001    //
002    // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-2 
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: 2012.03.14 at 10:22:27 AM CET 
006    //
007    
008    
009    package org.jomc.model;
010    
011    import javax.annotation.Generated;
012    import javax.xml.bind.annotation.XmlAccessType;
013    import javax.xml.bind.annotation.XmlAccessorType;
014    import javax.xml.bind.annotation.XmlAttribute;
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    
020    
021    /**
022     * 
023     * Model of text.
024     * 
025     * The 'Text' type defines attributes 'language', 'type' and 'value'. Attribute 'language' holds the language key
026     * identifying the text in a set of texts. Attribute 'type' specifies a Multipurpose Internet Mail Extension (MIME) type,
027     * as defined in RFC 2045 and 2046. Attribute 'value' holds the text of the type corresponding to the language.
028     *       
029     * 
030     * <p>Java class for Text complex type.
031     * 
032     * <p>The following schema fragment specifies the expected content contained within this class.
033     * 
034     * <pre>
035     * &lt;complexType name="Text">
036     *   &lt;simpleContent>
037     *     &lt;extension base="&lt;http://jomc.org/model>String">
038     *       &lt;attribute name="language" use="required" type="{http://jomc.org/model}Language" />
039     *       &lt;attribute name="type" type="{http://jomc.org/model}MimeType" default="text/plain" />
040     *     &lt;/extension>
041     *   &lt;/simpleContent>
042     * &lt;/complexType>
043     * </pre>
044     * 
045     * 
046     */
047    @XmlAccessorType(XmlAccessType.FIELD)
048    @XmlType(name = "Text", namespace = "http://jomc.org/model", propOrder = {
049        "value"
050    })
051    @Generated(value = "com.sun.tools.xjc.Driver", date = "2012-03-14T10:22:27+01:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-2")
052    public class Text implements Cloneable
053    {
054    
055        @XmlValue
056        @Generated(value = "com.sun.tools.xjc.Driver", date = "2012-03-14T10:22:27+01:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-2")
057        protected String value;
058        @XmlAttribute(name = "language", required = true)
059        @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
060        @Generated(value = "com.sun.tools.xjc.Driver", date = "2012-03-14T10:22:27+01:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-2")
061        protected String language;
062        @XmlAttribute(name = "type")
063        @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
064        @Generated(value = "com.sun.tools.xjc.Driver", date = "2012-03-14T10:22:27+01:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-2")
065        protected String type;
066    
067        /**
068         * Creates a new {@code Text} instance.
069         * 
070         */
071        public Text() {
072            // CC-XJC Version 2.0 Build 2011-09-16T18:27:24+0000
073            super();
074        }
075    
076        /**
077         * Creates a new {@code Text} instance by deeply copying a given {@code Text} instance.
078         * 
079         * 
080         * @param o
081         *     The instance to copy.
082         * @throws NullPointerException
083         *     if {@code o} is {@code null}.
084         */
085        public Text(final Text o) {
086            // CC-XJC Version 2.0 Build 2011-09-16T18:27:24+0000
087            super();
088            if (o == null) {
089                throw new NullPointerException("Cannot create a copy of 'Text' from 'null'.");
090            }
091            // CBuiltinLeafInfo: java.lang.String
092            this.value = ((o.value == null)?null:o.getValue());
093            // CBuiltinLeafInfo: java.lang.String
094            this.language = ((o.language == null)?null:o.getLanguage());
095            // CBuiltinLeafInfo: java.lang.String
096            this.type = ((o.type == null)?null:o.getType());
097        }
098    
099        /**
100         * Gets the value of the value property.
101         * 
102         * @return
103         *     possible object is
104         *     {@link String }
105         *     
106         */
107        @Generated(value = "com.sun.tools.xjc.Driver", date = "2012-03-14T10:22:27+01:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-2")
108        public String getValue() {
109            return value;
110        }
111    
112        /**
113         * Sets the value of the value property.
114         * 
115         * @param value
116         *     allowed object is
117         *     {@link String }
118         *     
119         */
120        @Generated(value = "com.sun.tools.xjc.Driver", date = "2012-03-14T10:22:27+01:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-2")
121        public void setValue(String value) {
122            this.value = value;
123        }
124    
125        /**
126         * The language key of this text.
127         * 
128         * @return
129         *     possible object is
130         *     {@link String }
131         *     
132         */
133        @Generated(value = "com.sun.tools.xjc.Driver", date = "2012-03-14T10:22:27+01:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-2")
134        public String getLanguage() {
135            return language;
136        }
137    
138        /**
139         * Sets the value of the language property.
140         * 
141         * @param value
142         *     allowed object is
143         *     {@link String }
144         *     
145         */
146        @Generated(value = "com.sun.tools.xjc.Driver", date = "2012-03-14T10:22:27+01:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-2")
147        public void setLanguage(String value) {
148            this.language = value;
149        }
150    
151        /**
152         * The Multipurpose Internet Mail Extension (MIME) type, as defined in RFC 2045 and 2046.
153         * 
154         * @return
155         *     possible object is
156         *     {@link String }
157         *     
158         */
159        @Generated(value = "com.sun.tools.xjc.Driver", date = "2012-03-14T10:22:27+01:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-2")
160        public String getType() {
161            if (type == null) {
162                return "text/plain";
163            } else {
164                return type;
165            }
166        }
167    
168        /**
169         * Sets the value of the type property.
170         * 
171         * @param value
172         *     allowed object is
173         *     {@link String }
174         *     
175         */
176        @Generated(value = "com.sun.tools.xjc.Driver", date = "2012-03-14T10:22:27+01:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-2")
177        public void setType(String value) {
178            this.type = value;
179        }
180    
181        /**
182         * Creates and returns a deep copy of this object.
183         * 
184         * 
185         * @return
186         *     A deep copy of this object.
187         */
188        @Override
189        @Generated(value = "com.sun.tools.xjc.Driver", date = "2012-03-14T10:22:27+01:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-2")
190        public Text clone() {
191            try {
192                {
193                    // CC-XJC Version 2.0 Build 2011-09-16T18:27:24+0000
194                    final Text clone = ((Text) super.clone());
195                    // CBuiltinLeafInfo: java.lang.String
196                    clone.value = ((this.value == null)?null:this.getValue());
197                    // CBuiltinLeafInfo: java.lang.String
198                    clone.language = ((this.language == null)?null:this.getLanguage());
199                    // CBuiltinLeafInfo: java.lang.String
200                    clone.type = ((this.type == null)?null:this.getType());
201                    return clone;
202                }
203            } catch (CloneNotSupportedException e) {
204                // Please report this at https://apps.sourceforge.net/mantisbt/ccxjc/
205                throw new AssertionError(e);
206            }
207        }
208    
209    }