001    //
002    // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-833 
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: 2010.08.18 at 10:46:56 PM CEST 
006    //
007    
008    
009    package net.sourceforge.jpaxjc.ns.persistence.orm;
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    
017    
018    /**
019     * 
020     * 
021     *         @Target({METHOD, FIELD}) @Retention(RUNTIME)
022     *         public @interface Basic {
023     *           FetchType fetch() default EAGER;
024     *           boolean optional() default true;
025     *         }
026     * 
027     *       
028     * 
029     * <p>Java class for basic complex type.
030     * 
031     * <p>The following schema fragment specifies the expected content contained within this class.
032     * 
033     * <pre>
034     * &lt;complexType name="basic">
035     *   &lt;complexContent>
036     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
037     *       &lt;sequence>
038     *         &lt;element name="column" type="{http://java.sun.com/xml/ns/persistence/orm}column" minOccurs="0"/>
039     *         &lt;choice>
040     *           &lt;element name="lob" type="{http://java.sun.com/xml/ns/persistence/orm}lob" minOccurs="0"/>
041     *           &lt;element name="temporal" type="{http://java.sun.com/xml/ns/persistence/orm}temporal" minOccurs="0"/>
042     *           &lt;element name="enumerated" type="{http://java.sun.com/xml/ns/persistence/orm}enumerated" minOccurs="0"/>
043     *         &lt;/choice>
044     *       &lt;/sequence>
045     *       &lt;attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
046     *       &lt;attribute name="fetch" type="{http://java.sun.com/xml/ns/persistence/orm}fetch-type" />
047     *       &lt;attribute name="optional" type="{http://www.w3.org/2001/XMLSchema}boolean" />
048     *     &lt;/restriction>
049     *   &lt;/complexContent>
050     * &lt;/complexType>
051     * </pre>
052     * 
053     * 
054     */
055    @XmlAccessorType(XmlAccessType.FIELD)
056    @XmlType(name = "basic", propOrder = {
057        "column",
058        "lob",
059        "temporal",
060        "enumerated"
061    })
062    @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
063    public class Basic implements Cloneable
064    {
065    
066        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
067        protected Column column;
068        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
069        protected Lob lob;
070        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
071        protected TemporalType temporal;
072        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
073        protected EnumType enumerated;
074        @XmlAttribute(required = true)
075        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
076        protected String name;
077        @XmlAttribute
078        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
079        protected FetchType fetch;
080        @XmlAttribute
081        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
082        protected Boolean optional;
083    
084        /**
085         * Creates a new {@code Basic} instance.
086         * 
087         */
088        public Basic() {
089            // CC-XJC Version 1.3 Build 2010-02-27T15:04:03+0000
090            super();
091        }
092    
093        /**
094         * Creates a new {@code Basic} instance by deeply copying a given {@code Basic} instance.
095         * 
096         * 
097         * @param o
098         *     The instance to copy.
099         * @throws NullPointerException
100         *     if {@code o} is {@code null}.
101         */
102        public Basic(final Basic o) {
103            // CC-XJC Version 1.3 Build 2010-02-27T15:04:03+0000
104            super();
105            if (o == null) {
106                throw new NullPointerException("Cannot create a copy of 'Basic' from 'null'.");
107            }
108            // CClassInfo: net.sourceforge.jpaxjc.ns.persistence.orm.Column
109            this.column = ((o.getColumn() == null)?null:o.getColumn().clone());
110            // CClassInfo: net.sourceforge.jpaxjc.ns.persistence.orm.Lob
111            this.lob = ((o.getLob() == null)?null:o.getLob().clone());
112            // CEnumLeafInfo: net.sourceforge.jpaxjc.ns.persistence.orm.TemporalType
113            this.temporal = o.getTemporal();
114            // CEnumLeafInfo: net.sourceforge.jpaxjc.ns.persistence.orm.EnumType
115            this.enumerated = o.getEnumerated();
116            // CBuiltinLeafInfo: java.lang.String
117            this.name = o.getName();
118            // CEnumLeafInfo: net.sourceforge.jpaxjc.ns.persistence.orm.FetchType
119            this.fetch = o.getFetch();
120            // CBuiltinLeafInfo: java.lang.Boolean
121            this.optional = o.isOptional();
122        }
123    
124        /**
125         * Gets the value of the column property.
126         * 
127         * @return
128         *     possible object is
129         *     {@link Column }
130         *     
131         */
132        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
133        public Column getColumn() {
134            return column;
135        }
136    
137        /**
138         * Sets the value of the column property.
139         * 
140         * @param value
141         *     allowed object is
142         *     {@link Column }
143         *     
144         */
145        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
146        public void setColumn(Column value) {
147            this.column = value;
148        }
149    
150        /**
151         * Gets the value of the lob property.
152         * 
153         * @return
154         *     possible object is
155         *     {@link Lob }
156         *     
157         */
158        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
159        public Lob getLob() {
160            return lob;
161        }
162    
163        /**
164         * Sets the value of the lob property.
165         * 
166         * @param value
167         *     allowed object is
168         *     {@link Lob }
169         *     
170         */
171        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
172        public void setLob(Lob value) {
173            this.lob = value;
174        }
175    
176        /**
177         * Gets the value of the temporal property.
178         * 
179         * @return
180         *     possible object is
181         *     {@link TemporalType }
182         *     
183         */
184        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
185        public TemporalType getTemporal() {
186            return temporal;
187        }
188    
189        /**
190         * Sets the value of the temporal property.
191         * 
192         * @param value
193         *     allowed object is
194         *     {@link TemporalType }
195         *     
196         */
197        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
198        public void setTemporal(TemporalType value) {
199            this.temporal = value;
200        }
201    
202        /**
203         * Gets the value of the enumerated property.
204         * 
205         * @return
206         *     possible object is
207         *     {@link EnumType }
208         *     
209         */
210        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
211        public EnumType getEnumerated() {
212            return enumerated;
213        }
214    
215        /**
216         * Sets the value of the enumerated property.
217         * 
218         * @param value
219         *     allowed object is
220         *     {@link EnumType }
221         *     
222         */
223        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
224        public void setEnumerated(EnumType value) {
225            this.enumerated = value;
226        }
227    
228        /**
229         * Gets the value of the name property.
230         * 
231         * @return
232         *     possible object is
233         *     {@link String }
234         *     
235         */
236        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
237        public String getName() {
238            return name;
239        }
240    
241        /**
242         * Sets the value of the name property.
243         * 
244         * @param value
245         *     allowed object is
246         *     {@link String }
247         *     
248         */
249        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
250        public void setName(String value) {
251            this.name = value;
252        }
253    
254        /**
255         * Gets the value of the fetch property.
256         * 
257         * @return
258         *     possible object is
259         *     {@link FetchType }
260         *     
261         */
262        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
263        public FetchType getFetch() {
264            return fetch;
265        }
266    
267        /**
268         * Sets the value of the fetch property.
269         * 
270         * @param value
271         *     allowed object is
272         *     {@link FetchType }
273         *     
274         */
275        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
276        public void setFetch(FetchType value) {
277            this.fetch = value;
278        }
279    
280        /**
281         * Gets the value of the optional property.
282         * 
283         * @return
284         *     possible object is
285         *     {@link Boolean }
286         *     
287         */
288        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
289        public Boolean isOptional() {
290            return optional;
291        }
292    
293        /**
294         * Sets the value of the optional property.
295         * 
296         * @param value
297         *     allowed object is
298         *     {@link Boolean }
299         *     
300         */
301        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
302        public void setOptional(Boolean value) {
303            this.optional = value;
304        }
305    
306        /**
307         * Creates and returns a deep copy of this object.
308         * 
309         * 
310         * @return
311         *     A deep copy of this object.
312         */
313        @Override
314        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
315        public Basic clone() {
316            // CC-XJC Version 1.3 Build 2010-02-27T15:04:03+0000
317            return new Basic(this);
318        }
319    
320    }