001//
002// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.3.0 
003// See <a href="https://javaee.github.io/jaxb-v2/">https://javaee.github.io/jaxb-v2/</a> 
004// Any modifications to this file will be lost upon recompilation of the source schema. 
005// Generated on: 2018.12.10 at 03:02:30 PM PST 
006//
007
008
009package org.microbean.jpa.jaxb;
010
011import java.util.ArrayList;
012import java.util.List;
013import javax.xml.bind.annotation.XmlAccessType;
014import javax.xml.bind.annotation.XmlAccessorType;
015import javax.xml.bind.annotation.XmlAttribute;
016import javax.xml.bind.annotation.XmlElement;
017import javax.xml.bind.annotation.XmlType;
018
019
020/**
021 * 
022 * 
023 *         @Target({METHOD, FIELD}) @Retention(RUNTIME)
024 *         public @interface OneToOne {
025 *           Class targetEntity() default void.class;
026 *           CascadeType[] cascade() default {};
027 *           FetchType fetch() default EAGER;
028 *           boolean optional() default true;
029 *           String mappedBy() default "";
030 *           boolean orphanRemoval() default false;
031 *         }
032 * 
033 *       
034 * 
035 * <p>Java class for one-to-one complex type.
036 * 
037 * <p>The following schema fragment specifies the expected content contained within this class.
038 * 
039 * <pre>
040 * &lt;complexType name="one-to-one"&gt;
041 *   &lt;complexContent&gt;
042 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
043 *       &lt;sequence&gt;
044 *         &lt;choice&gt;
045 *           &lt;sequence&gt;
046 *             &lt;element name="primary-key-join-column" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}primary-key-join-column" maxOccurs="unbounded" minOccurs="0"/&gt;
047 *             &lt;element name="primary-key-foreign-key" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}foreign-key" minOccurs="0"/&gt;
048 *           &lt;/sequence&gt;
049 *           &lt;sequence&gt;
050 *             &lt;element name="join-column" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}join-column" maxOccurs="unbounded" minOccurs="0"/&gt;
051 *             &lt;element name="foreign-key" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}foreign-key" minOccurs="0"/&gt;
052 *           &lt;/sequence&gt;
053 *           &lt;element name="join-table" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}join-table" minOccurs="0"/&gt;
054 *         &lt;/choice&gt;
055 *         &lt;element name="cascade" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}cascade-type" minOccurs="0"/&gt;
056 *       &lt;/sequence&gt;
057 *       &lt;attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" /&gt;
058 *       &lt;attribute name="target-entity" type="{http://www.w3.org/2001/XMLSchema}string" /&gt;
059 *       &lt;attribute name="fetch" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}fetch-type" /&gt;
060 *       &lt;attribute name="optional" type="{http://www.w3.org/2001/XMLSchema}boolean" /&gt;
061 *       &lt;attribute name="access" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}access-type" /&gt;
062 *       &lt;attribute name="mapped-by" type="{http://www.w3.org/2001/XMLSchema}string" /&gt;
063 *       &lt;attribute name="orphan-removal" type="{http://www.w3.org/2001/XMLSchema}boolean" /&gt;
064 *       &lt;attribute name="maps-id" type="{http://www.w3.org/2001/XMLSchema}string" /&gt;
065 *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}boolean" /&gt;
066 *     &lt;/restriction&gt;
067 *   &lt;/complexContent&gt;
068 * &lt;/complexType&gt;
069 * </pre>
070 * 
071 * 
072 */
073@XmlAccessorType(XmlAccessType.FIELD)
074@XmlType(name = "one-to-one", propOrder = {
075    "primaryKeyJoinColumn",
076    "primaryKeyForeignKey",
077    "joinColumn",
078    "foreignKey",
079    "joinTable",
080    "cascade"
081})
082public class OneToOne {
083
084    @XmlElement(name = "primary-key-join-column")
085    protected List<PrimaryKeyJoinColumn> primaryKeyJoinColumn;
086    @XmlElement(name = "primary-key-foreign-key")
087    protected ForeignKey primaryKeyForeignKey;
088    @XmlElement(name = "join-column")
089    protected List<JoinColumn> joinColumn;
090    @XmlElement(name = "foreign-key")
091    protected ForeignKey foreignKey;
092    @XmlElement(name = "join-table")
093    protected JoinTable joinTable;
094    protected CascadeType cascade;
095    @XmlAttribute(name = "name", required = true)
096    protected String name;
097    @XmlAttribute(name = "target-entity")
098    protected String targetEntity;
099    @XmlAttribute(name = "fetch")
100    protected FetchType fetch;
101    @XmlAttribute(name = "optional")
102    protected Boolean optional;
103    @XmlAttribute(name = "access")
104    protected AccessType access;
105    @XmlAttribute(name = "mapped-by")
106    protected String mappedBy;
107    @XmlAttribute(name = "orphan-removal")
108    protected Boolean orphanRemoval;
109    @XmlAttribute(name = "maps-id")
110    protected String mapsId;
111    @XmlAttribute(name = "id")
112    protected Boolean id;
113
114    /**
115     * Gets the value of the primaryKeyJoinColumn property.
116     * 
117     * <p>
118     * This accessor method returns a reference to the live list,
119     * not a snapshot. Therefore any modification you make to the
120     * returned list will be present inside the JAXB object.
121     * This is why there is not a <CODE>set</CODE> method for the primaryKeyJoinColumn property.
122     * 
123     * <p>
124     * For example, to add a new item, do as follows:
125     * <pre>
126     *    getPrimaryKeyJoinColumn().add(newItem);
127     * </pre>
128     * 
129     * 
130     * <p>
131     * Objects of the following type(s) are allowed in the list
132     * {@link PrimaryKeyJoinColumn }
133     * 
134     * 
135     */
136    public List<PrimaryKeyJoinColumn> getPrimaryKeyJoinColumn() {
137        if (primaryKeyJoinColumn == null) {
138            primaryKeyJoinColumn = new ArrayList<PrimaryKeyJoinColumn>();
139        }
140        return this.primaryKeyJoinColumn;
141    }
142
143    /**
144     * Gets the value of the primaryKeyForeignKey property.
145     * 
146     * @return
147     *     possible object is
148     *     {@link ForeignKey }
149     *     
150     */
151    public ForeignKey getPrimaryKeyForeignKey() {
152        return primaryKeyForeignKey;
153    }
154
155    /**
156     * Sets the value of the primaryKeyForeignKey property.
157     * 
158     * @param value
159     *     allowed object is
160     *     {@link ForeignKey }
161     *     
162     */
163    public void setPrimaryKeyForeignKey(ForeignKey value) {
164        this.primaryKeyForeignKey = value;
165    }
166
167    /**
168     * Gets the value of the joinColumn property.
169     * 
170     * <p>
171     * This accessor method returns a reference to the live list,
172     * not a snapshot. Therefore any modification you make to the
173     * returned list will be present inside the JAXB object.
174     * This is why there is not a <CODE>set</CODE> method for the joinColumn property.
175     * 
176     * <p>
177     * For example, to add a new item, do as follows:
178     * <pre>
179     *    getJoinColumn().add(newItem);
180     * </pre>
181     * 
182     * 
183     * <p>
184     * Objects of the following type(s) are allowed in the list
185     * {@link JoinColumn }
186     * 
187     * 
188     */
189    public List<JoinColumn> getJoinColumn() {
190        if (joinColumn == null) {
191            joinColumn = new ArrayList<JoinColumn>();
192        }
193        return this.joinColumn;
194    }
195
196    /**
197     * Gets the value of the foreignKey property.
198     * 
199     * @return
200     *     possible object is
201     *     {@link ForeignKey }
202     *     
203     */
204    public ForeignKey getForeignKey() {
205        return foreignKey;
206    }
207
208    /**
209     * Sets the value of the foreignKey property.
210     * 
211     * @param value
212     *     allowed object is
213     *     {@link ForeignKey }
214     *     
215     */
216    public void setForeignKey(ForeignKey value) {
217        this.foreignKey = value;
218    }
219
220    /**
221     * Gets the value of the joinTable property.
222     * 
223     * @return
224     *     possible object is
225     *     {@link JoinTable }
226     *     
227     */
228    public JoinTable getJoinTable() {
229        return joinTable;
230    }
231
232    /**
233     * Sets the value of the joinTable property.
234     * 
235     * @param value
236     *     allowed object is
237     *     {@link JoinTable }
238     *     
239     */
240    public void setJoinTable(JoinTable value) {
241        this.joinTable = value;
242    }
243
244    /**
245     * Gets the value of the cascade property.
246     * 
247     * @return
248     *     possible object is
249     *     {@link CascadeType }
250     *     
251     */
252    public CascadeType getCascade() {
253        return cascade;
254    }
255
256    /**
257     * Sets the value of the cascade property.
258     * 
259     * @param value
260     *     allowed object is
261     *     {@link CascadeType }
262     *     
263     */
264    public void setCascade(CascadeType value) {
265        this.cascade = value;
266    }
267
268    /**
269     * Gets the value of the name property.
270     * 
271     * @return
272     *     possible object is
273     *     {@link String }
274     *     
275     */
276    public String getName() {
277        return name;
278    }
279
280    /**
281     * Sets the value of the name property.
282     * 
283     * @param value
284     *     allowed object is
285     *     {@link String }
286     *     
287     */
288    public void setName(String value) {
289        this.name = value;
290    }
291
292    /**
293     * Gets the value of the targetEntity property.
294     * 
295     * @return
296     *     possible object is
297     *     {@link String }
298     *     
299     */
300    public String getTargetEntity() {
301        return targetEntity;
302    }
303
304    /**
305     * Sets the value of the targetEntity property.
306     * 
307     * @param value
308     *     allowed object is
309     *     {@link String }
310     *     
311     */
312    public void setTargetEntity(String value) {
313        this.targetEntity = value;
314    }
315
316    /**
317     * Gets the value of the fetch property.
318     * 
319     * @return
320     *     possible object is
321     *     {@link FetchType }
322     *     
323     */
324    public FetchType getFetch() {
325        return fetch;
326    }
327
328    /**
329     * Sets the value of the fetch property.
330     * 
331     * @param value
332     *     allowed object is
333     *     {@link FetchType }
334     *     
335     */
336    public void setFetch(FetchType value) {
337        this.fetch = value;
338    }
339
340    /**
341     * Gets the value of the optional property.
342     * 
343     * @return
344     *     possible object is
345     *     {@link Boolean }
346     *     
347     */
348    public Boolean isOptional() {
349        return optional;
350    }
351
352    /**
353     * Sets the value of the optional property.
354     * 
355     * @param value
356     *     allowed object is
357     *     {@link Boolean }
358     *     
359     */
360    public void setOptional(Boolean value) {
361        this.optional = value;
362    }
363
364    /**
365     * Gets the value of the access property.
366     * 
367     * @return
368     *     possible object is
369     *     {@link AccessType }
370     *     
371     */
372    public AccessType getAccess() {
373        return access;
374    }
375
376    /**
377     * Sets the value of the access property.
378     * 
379     * @param value
380     *     allowed object is
381     *     {@link AccessType }
382     *     
383     */
384    public void setAccess(AccessType value) {
385        this.access = value;
386    }
387
388    /**
389     * Gets the value of the mappedBy property.
390     * 
391     * @return
392     *     possible object is
393     *     {@link String }
394     *     
395     */
396    public String getMappedBy() {
397        return mappedBy;
398    }
399
400    /**
401     * Sets the value of the mappedBy property.
402     * 
403     * @param value
404     *     allowed object is
405     *     {@link String }
406     *     
407     */
408    public void setMappedBy(String value) {
409        this.mappedBy = value;
410    }
411
412    /**
413     * Gets the value of the orphanRemoval property.
414     * 
415     * @return
416     *     possible object is
417     *     {@link Boolean }
418     *     
419     */
420    public Boolean isOrphanRemoval() {
421        return orphanRemoval;
422    }
423
424    /**
425     * Sets the value of the orphanRemoval property.
426     * 
427     * @param value
428     *     allowed object is
429     *     {@link Boolean }
430     *     
431     */
432    public void setOrphanRemoval(Boolean value) {
433        this.orphanRemoval = value;
434    }
435
436    /**
437     * Gets the value of the mapsId property.
438     * 
439     * @return
440     *     possible object is
441     *     {@link String }
442     *     
443     */
444    public String getMapsId() {
445        return mapsId;
446    }
447
448    /**
449     * Sets the value of the mapsId property.
450     * 
451     * @param value
452     *     allowed object is
453     *     {@link String }
454     *     
455     */
456    public void setMapsId(String value) {
457        this.mapsId = value;
458    }
459
460    /**
461     * Gets the value of the id property.
462     * 
463     * @return
464     *     possible object is
465     *     {@link Boolean }
466     *     
467     */
468    public Boolean isId() {
469        return id;
470    }
471
472    /**
473     * Sets the value of the id property.
474     * 
475     * @param value
476     *     allowed object is
477     *     {@link Boolean }
478     *     
479     */
480    public void setId(Boolean value) {
481        this.id = value;
482    }
483
484}