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 JoinColumn {
023     *           String name() default "";
024     *           String referencedColumnName() default "";
025     *           boolean unique() default false;
026     *           boolean nullable() default true;
027     *           boolean insertable() default true;
028     *           boolean updatable() default true;
029     *           String columnDefinition() default "";
030     *           String table() default "";
031     *         }
032     * 
033     *       
034     * 
035     * <p>Java class for join-column complex type.
036     * 
037     * <p>The following schema fragment specifies the expected content contained within this class.
038     * 
039     * <pre>
040     * &lt;complexType name="join-column">
041     *   &lt;complexContent>
042     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
043     *       &lt;attribute name="name" type="{http://www.w3.org/2001/XMLSchema}string" />
044     *       &lt;attribute name="referenced-column-name" type="{http://www.w3.org/2001/XMLSchema}string" />
045     *       &lt;attribute name="unique" type="{http://www.w3.org/2001/XMLSchema}boolean" />
046     *       &lt;attribute name="nullable" type="{http://www.w3.org/2001/XMLSchema}boolean" />
047     *       &lt;attribute name="insertable" type="{http://www.w3.org/2001/XMLSchema}boolean" />
048     *       &lt;attribute name="updatable" type="{http://www.w3.org/2001/XMLSchema}boolean" />
049     *       &lt;attribute name="column-definition" type="{http://www.w3.org/2001/XMLSchema}string" />
050     *       &lt;attribute name="table" type="{http://www.w3.org/2001/XMLSchema}string" />
051     *     &lt;/restriction>
052     *   &lt;/complexContent>
053     * &lt;/complexType>
054     * </pre>
055     * 
056     * 
057     */
058    @XmlAccessorType(XmlAccessType.FIELD)
059    @XmlType(name = "join-column")
060    @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
061    public class JoinColumn implements Cloneable
062    {
063    
064        @XmlAttribute
065        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
066        protected String name;
067        @XmlAttribute(name = "referenced-column-name")
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 String referencedColumnName;
070        @XmlAttribute
071        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
072        protected Boolean unique;
073        @XmlAttribute
074        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
075        protected Boolean nullable;
076        @XmlAttribute
077        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
078        protected Boolean insertable;
079        @XmlAttribute
080        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
081        protected Boolean updatable;
082        @XmlAttribute(name = "column-definition")
083        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
084        protected String columnDefinition;
085        @XmlAttribute
086        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
087        protected String table;
088    
089        /**
090         * Creates a new {@code JoinColumn} instance.
091         * 
092         */
093        public JoinColumn() {
094            // CC-XJC Version 1.3 Build 2010-02-27T15:04:03+0000
095            super();
096        }
097    
098        /**
099         * Creates a new {@code JoinColumn} instance by deeply copying a given {@code JoinColumn} instance.
100         * 
101         * 
102         * @param o
103         *     The instance to copy.
104         * @throws NullPointerException
105         *     if {@code o} is {@code null}.
106         */
107        public JoinColumn(final JoinColumn o) {
108            // CC-XJC Version 1.3 Build 2010-02-27T15:04:03+0000
109            super();
110            if (o == null) {
111                throw new NullPointerException("Cannot create a copy of 'JoinColumn' from 'null'.");
112            }
113            // CBuiltinLeafInfo: java.lang.String
114            this.name = o.getName();
115            // CBuiltinLeafInfo: java.lang.String
116            this.referencedColumnName = o.getReferencedColumnName();
117            // CBuiltinLeafInfo: java.lang.Boolean
118            this.unique = o.isUnique();
119            // CBuiltinLeafInfo: java.lang.Boolean
120            this.nullable = o.isNullable();
121            // CBuiltinLeafInfo: java.lang.Boolean
122            this.insertable = o.isInsertable();
123            // CBuiltinLeafInfo: java.lang.Boolean
124            this.updatable = o.isUpdatable();
125            // CBuiltinLeafInfo: java.lang.String
126            this.columnDefinition = o.getColumnDefinition();
127            // CBuiltinLeafInfo: java.lang.String
128            this.table = o.getTable();
129        }
130    
131        /**
132         * Gets the value of the name property.
133         * 
134         * @return
135         *     possible object is
136         *     {@link String }
137         *     
138         */
139        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
140        public String getName() {
141            return name;
142        }
143    
144        /**
145         * Sets the value of the name property.
146         * 
147         * @param value
148         *     allowed object is
149         *     {@link String }
150         *     
151         */
152        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
153        public void setName(String value) {
154            this.name = value;
155        }
156    
157        /**
158         * Gets the value of the referencedColumnName property.
159         * 
160         * @return
161         *     possible object is
162         *     {@link String }
163         *     
164         */
165        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
166        public String getReferencedColumnName() {
167            return referencedColumnName;
168        }
169    
170        /**
171         * Sets the value of the referencedColumnName property.
172         * 
173         * @param value
174         *     allowed object is
175         *     {@link String }
176         *     
177         */
178        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
179        public void setReferencedColumnName(String value) {
180            this.referencedColumnName = value;
181        }
182    
183        /**
184         * Gets the value of the unique property.
185         * 
186         * @return
187         *     possible object is
188         *     {@link Boolean }
189         *     
190         */
191        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
192        public Boolean isUnique() {
193            return unique;
194        }
195    
196        /**
197         * Sets the value of the unique property.
198         * 
199         * @param value
200         *     allowed object is
201         *     {@link Boolean }
202         *     
203         */
204        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
205        public void setUnique(Boolean value) {
206            this.unique = value;
207        }
208    
209        /**
210         * Gets the value of the nullable property.
211         * 
212         * @return
213         *     possible object is
214         *     {@link Boolean }
215         *     
216         */
217        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
218        public Boolean isNullable() {
219            return nullable;
220        }
221    
222        /**
223         * Sets the value of the nullable property.
224         * 
225         * @param value
226         *     allowed object is
227         *     {@link Boolean }
228         *     
229         */
230        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
231        public void setNullable(Boolean value) {
232            this.nullable = value;
233        }
234    
235        /**
236         * Gets the value of the insertable property.
237         * 
238         * @return
239         *     possible object is
240         *     {@link Boolean }
241         *     
242         */
243        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
244        public Boolean isInsertable() {
245            return insertable;
246        }
247    
248        /**
249         * Sets the value of the insertable property.
250         * 
251         * @param value
252         *     allowed object is
253         *     {@link Boolean }
254         *     
255         */
256        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
257        public void setInsertable(Boolean value) {
258            this.insertable = value;
259        }
260    
261        /**
262         * Gets the value of the updatable property.
263         * 
264         * @return
265         *     possible object is
266         *     {@link Boolean }
267         *     
268         */
269        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
270        public Boolean isUpdatable() {
271            return updatable;
272        }
273    
274        /**
275         * Sets the value of the updatable property.
276         * 
277         * @param value
278         *     allowed object is
279         *     {@link Boolean }
280         *     
281         */
282        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
283        public void setUpdatable(Boolean value) {
284            this.updatable = value;
285        }
286    
287        /**
288         * Gets the value of the columnDefinition property.
289         * 
290         * @return
291         *     possible object is
292         *     {@link String }
293         *     
294         */
295        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
296        public String getColumnDefinition() {
297            return columnDefinition;
298        }
299    
300        /**
301         * Sets the value of the columnDefinition property.
302         * 
303         * @param value
304         *     allowed object is
305         *     {@link String }
306         *     
307         */
308        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
309        public void setColumnDefinition(String value) {
310            this.columnDefinition = value;
311        }
312    
313        /**
314         * Gets the value of the table property.
315         * 
316         * @return
317         *     possible object is
318         *     {@link String }
319         *     
320         */
321        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
322        public String getTable() {
323            return table;
324        }
325    
326        /**
327         * Sets the value of the table property.
328         * 
329         * @param value
330         *     allowed object is
331         *     {@link String }
332         *     
333         */
334        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
335        public void setTable(String value) {
336            this.table = value;
337        }
338    
339        /**
340         * Creates and returns a deep copy of this object.
341         * 
342         * 
343         * @return
344         *     A deep copy of this object.
345         */
346        @Override
347        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
348        public JoinColumn clone() {
349            // CC-XJC Version 1.3 Build 2010-02-27T15:04:03+0000
350            return new JoinColumn(this);
351        }
352    
353    }