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.XmlSchemaType;
018import javax.xml.bind.annotation.XmlType;
019
020
021/**
022 * 
023 * 
024 *         @Target({METHOD, FIELD}) @Retention(RUNTIME)
025 *         public @interface OneToMany {
026 *           Class targetEntity() default void.class;
027 *           CascadeType[] cascade() default {};
028 *           FetchType fetch() default LAZY;
029 *           String mappedBy() default "";
030 *         }
031 * 
032 *       
033 * 
034 * <p>Java class for one-to-many complex type.
035 * 
036 * <p>The following schema fragment specifies the expected content contained within this class.
037 * 
038 * <pre>
039 * &lt;complexType name="one-to-many"&gt;
040 *   &lt;complexContent&gt;
041 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
042 *       &lt;sequence&gt;
043 *         &lt;choice&gt;
044 *           &lt;element name="order-by" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}order-by" minOccurs="0"/&gt;
045 *           &lt;element name="order-column" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}order-column" minOccurs="0"/&gt;
046 *         &lt;/choice&gt;
047 *         &lt;choice&gt;
048 *           &lt;element name="map-key" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}map-key" minOccurs="0"/&gt;
049 *           &lt;sequence&gt;
050 *             &lt;element name="map-key-class" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}map-key-class" minOccurs="0"/&gt;
051 *             &lt;choice&gt;
052 *               &lt;element name="map-key-temporal" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}temporal" minOccurs="0"/&gt;
053 *               &lt;element name="map-key-enumerated" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}enumerated" minOccurs="0"/&gt;
054 *               &lt;sequence&gt;
055 *                 &lt;element name="map-key-attribute-override" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}attribute-override" maxOccurs="unbounded" minOccurs="0"/&gt;
056 *                 &lt;element name="map-key-convert" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}convert" maxOccurs="unbounded" minOccurs="0"/&gt;
057 *               &lt;/sequence&gt;
058 *             &lt;/choice&gt;
059 *             &lt;choice&gt;
060 *               &lt;element name="map-key-column" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}map-key-column" minOccurs="0"/&gt;
061 *               &lt;sequence&gt;
062 *                 &lt;element name="map-key-join-column" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}map-key-join-column" maxOccurs="unbounded" minOccurs="0"/&gt;
063 *                 &lt;element name="map-key-foreign-key" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}foreign-key" minOccurs="0"/&gt;
064 *               &lt;/sequence&gt;
065 *             &lt;/choice&gt;
066 *           &lt;/sequence&gt;
067 *         &lt;/choice&gt;
068 *         &lt;choice&gt;
069 *           &lt;element name="join-table" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}join-table" minOccurs="0"/&gt;
070 *           &lt;sequence&gt;
071 *             &lt;element name="join-column" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}join-column" maxOccurs="unbounded" minOccurs="0"/&gt;
072 *             &lt;element name="foreign-key" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}foreign-key" minOccurs="0"/&gt;
073 *           &lt;/sequence&gt;
074 *         &lt;/choice&gt;
075 *         &lt;element name="cascade" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}cascade-type" minOccurs="0"/&gt;
076 *       &lt;/sequence&gt;
077 *       &lt;attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" /&gt;
078 *       &lt;attribute name="target-entity" type="{http://www.w3.org/2001/XMLSchema}string" /&gt;
079 *       &lt;attribute name="fetch" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}fetch-type" /&gt;
080 *       &lt;attribute name="access" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}access-type" /&gt;
081 *       &lt;attribute name="mapped-by" type="{http://www.w3.org/2001/XMLSchema}string" /&gt;
082 *       &lt;attribute name="orphan-removal" type="{http://www.w3.org/2001/XMLSchema}boolean" /&gt;
083 *     &lt;/restriction&gt;
084 *   &lt;/complexContent&gt;
085 * &lt;/complexType&gt;
086 * </pre>
087 * 
088 * 
089 */
090@XmlAccessorType(XmlAccessType.FIELD)
091@XmlType(name = "one-to-many", propOrder = {
092    "orderBy",
093    "orderColumn",
094    "mapKey",
095    "mapKeyClass",
096    "mapKeyTemporal",
097    "mapKeyEnumerated",
098    "mapKeyAttributeOverride",
099    "mapKeyConvert",
100    "mapKeyColumn",
101    "mapKeyJoinColumn",
102    "mapKeyForeignKey",
103    "joinTable",
104    "joinColumn",
105    "foreignKey",
106    "cascade"
107})
108public class OneToMany {
109
110    @XmlElement(name = "order-by")
111    protected String orderBy;
112    @XmlElement(name = "order-column")
113    protected OrderColumn orderColumn;
114    @XmlElement(name = "map-key")
115    protected MapKey mapKey;
116    @XmlElement(name = "map-key-class")
117    protected MapKeyClass mapKeyClass;
118    @XmlElement(name = "map-key-temporal")
119    @XmlSchemaType(name = "token")
120    protected TemporalType mapKeyTemporal;
121    @XmlElement(name = "map-key-enumerated")
122    @XmlSchemaType(name = "token")
123    protected EnumType mapKeyEnumerated;
124    @XmlElement(name = "map-key-attribute-override")
125    protected List<AttributeOverride> mapKeyAttributeOverride;
126    @XmlElement(name = "map-key-convert")
127    protected List<Convert> mapKeyConvert;
128    @XmlElement(name = "map-key-column")
129    protected MapKeyColumn mapKeyColumn;
130    @XmlElement(name = "map-key-join-column")
131    protected List<MapKeyJoinColumn> mapKeyJoinColumn;
132    @XmlElement(name = "map-key-foreign-key")
133    protected ForeignKey mapKeyForeignKey;
134    @XmlElement(name = "join-table")
135    protected JoinTable joinTable;
136    @XmlElement(name = "join-column")
137    protected List<JoinColumn> joinColumn;
138    @XmlElement(name = "foreign-key")
139    protected ForeignKey foreignKey;
140    protected CascadeType cascade;
141    @XmlAttribute(name = "name", required = true)
142    protected String name;
143    @XmlAttribute(name = "target-entity")
144    protected String targetEntity;
145    @XmlAttribute(name = "fetch")
146    protected FetchType fetch;
147    @XmlAttribute(name = "access")
148    protected AccessType access;
149    @XmlAttribute(name = "mapped-by")
150    protected String mappedBy;
151    @XmlAttribute(name = "orphan-removal")
152    protected Boolean orphanRemoval;
153
154    /**
155     * Gets the value of the orderBy property.
156     * 
157     * @return
158     *     possible object is
159     *     {@link String }
160     *     
161     */
162    public String getOrderBy() {
163        return orderBy;
164    }
165
166    /**
167     * Sets the value of the orderBy property.
168     * 
169     * @param value
170     *     allowed object is
171     *     {@link String }
172     *     
173     */
174    public void setOrderBy(String value) {
175        this.orderBy = value;
176    }
177
178    /**
179     * Gets the value of the orderColumn property.
180     * 
181     * @return
182     *     possible object is
183     *     {@link OrderColumn }
184     *     
185     */
186    public OrderColumn getOrderColumn() {
187        return orderColumn;
188    }
189
190    /**
191     * Sets the value of the orderColumn property.
192     * 
193     * @param value
194     *     allowed object is
195     *     {@link OrderColumn }
196     *     
197     */
198    public void setOrderColumn(OrderColumn value) {
199        this.orderColumn = value;
200    }
201
202    /**
203     * Gets the value of the mapKey property.
204     * 
205     * @return
206     *     possible object is
207     *     {@link MapKey }
208     *     
209     */
210    public MapKey getMapKey() {
211        return mapKey;
212    }
213
214    /**
215     * Sets the value of the mapKey property.
216     * 
217     * @param value
218     *     allowed object is
219     *     {@link MapKey }
220     *     
221     */
222    public void setMapKey(MapKey value) {
223        this.mapKey = value;
224    }
225
226    /**
227     * Gets the value of the mapKeyClass property.
228     * 
229     * @return
230     *     possible object is
231     *     {@link MapKeyClass }
232     *     
233     */
234    public MapKeyClass getMapKeyClass() {
235        return mapKeyClass;
236    }
237
238    /**
239     * Sets the value of the mapKeyClass property.
240     * 
241     * @param value
242     *     allowed object is
243     *     {@link MapKeyClass }
244     *     
245     */
246    public void setMapKeyClass(MapKeyClass value) {
247        this.mapKeyClass = value;
248    }
249
250    /**
251     * Gets the value of the mapKeyTemporal property.
252     * 
253     * @return
254     *     possible object is
255     *     {@link TemporalType }
256     *     
257     */
258    public TemporalType getMapKeyTemporal() {
259        return mapKeyTemporal;
260    }
261
262    /**
263     * Sets the value of the mapKeyTemporal property.
264     * 
265     * @param value
266     *     allowed object is
267     *     {@link TemporalType }
268     *     
269     */
270    public void setMapKeyTemporal(TemporalType value) {
271        this.mapKeyTemporal = value;
272    }
273
274    /**
275     * Gets the value of the mapKeyEnumerated property.
276     * 
277     * @return
278     *     possible object is
279     *     {@link EnumType }
280     *     
281     */
282    public EnumType getMapKeyEnumerated() {
283        return mapKeyEnumerated;
284    }
285
286    /**
287     * Sets the value of the mapKeyEnumerated property.
288     * 
289     * @param value
290     *     allowed object is
291     *     {@link EnumType }
292     *     
293     */
294    public void setMapKeyEnumerated(EnumType value) {
295        this.mapKeyEnumerated = value;
296    }
297
298    /**
299     * Gets the value of the mapKeyAttributeOverride property.
300     * 
301     * <p>
302     * This accessor method returns a reference to the live list,
303     * not a snapshot. Therefore any modification you make to the
304     * returned list will be present inside the JAXB object.
305     * This is why there is not a <CODE>set</CODE> method for the mapKeyAttributeOverride property.
306     * 
307     * <p>
308     * For example, to add a new item, do as follows:
309     * <pre>
310     *    getMapKeyAttributeOverride().add(newItem);
311     * </pre>
312     * 
313     * 
314     * <p>
315     * Objects of the following type(s) are allowed in the list
316     * {@link AttributeOverride }
317     * 
318     * 
319     */
320    public List<AttributeOverride> getMapKeyAttributeOverride() {
321        if (mapKeyAttributeOverride == null) {
322            mapKeyAttributeOverride = new ArrayList<AttributeOverride>();
323        }
324        return this.mapKeyAttributeOverride;
325    }
326
327    /**
328     * Gets the value of the mapKeyConvert property.
329     * 
330     * <p>
331     * This accessor method returns a reference to the live list,
332     * not a snapshot. Therefore any modification you make to the
333     * returned list will be present inside the JAXB object.
334     * This is why there is not a <CODE>set</CODE> method for the mapKeyConvert property.
335     * 
336     * <p>
337     * For example, to add a new item, do as follows:
338     * <pre>
339     *    getMapKeyConvert().add(newItem);
340     * </pre>
341     * 
342     * 
343     * <p>
344     * Objects of the following type(s) are allowed in the list
345     * {@link Convert }
346     * 
347     * 
348     */
349    public List<Convert> getMapKeyConvert() {
350        if (mapKeyConvert == null) {
351            mapKeyConvert = new ArrayList<Convert>();
352        }
353        return this.mapKeyConvert;
354    }
355
356    /**
357     * Gets the value of the mapKeyColumn property.
358     * 
359     * @return
360     *     possible object is
361     *     {@link MapKeyColumn }
362     *     
363     */
364    public MapKeyColumn getMapKeyColumn() {
365        return mapKeyColumn;
366    }
367
368    /**
369     * Sets the value of the mapKeyColumn property.
370     * 
371     * @param value
372     *     allowed object is
373     *     {@link MapKeyColumn }
374     *     
375     */
376    public void setMapKeyColumn(MapKeyColumn value) {
377        this.mapKeyColumn = value;
378    }
379
380    /**
381     * Gets the value of the mapKeyJoinColumn property.
382     * 
383     * <p>
384     * This accessor method returns a reference to the live list,
385     * not a snapshot. Therefore any modification you make to the
386     * returned list will be present inside the JAXB object.
387     * This is why there is not a <CODE>set</CODE> method for the mapKeyJoinColumn property.
388     * 
389     * <p>
390     * For example, to add a new item, do as follows:
391     * <pre>
392     *    getMapKeyJoinColumn().add(newItem);
393     * </pre>
394     * 
395     * 
396     * <p>
397     * Objects of the following type(s) are allowed in the list
398     * {@link MapKeyJoinColumn }
399     * 
400     * 
401     */
402    public List<MapKeyJoinColumn> getMapKeyJoinColumn() {
403        if (mapKeyJoinColumn == null) {
404            mapKeyJoinColumn = new ArrayList<MapKeyJoinColumn>();
405        }
406        return this.mapKeyJoinColumn;
407    }
408
409    /**
410     * Gets the value of the mapKeyForeignKey property.
411     * 
412     * @return
413     *     possible object is
414     *     {@link ForeignKey }
415     *     
416     */
417    public ForeignKey getMapKeyForeignKey() {
418        return mapKeyForeignKey;
419    }
420
421    /**
422     * Sets the value of the mapKeyForeignKey property.
423     * 
424     * @param value
425     *     allowed object is
426     *     {@link ForeignKey }
427     *     
428     */
429    public void setMapKeyForeignKey(ForeignKey value) {
430        this.mapKeyForeignKey = value;
431    }
432
433    /**
434     * Gets the value of the joinTable property.
435     * 
436     * @return
437     *     possible object is
438     *     {@link JoinTable }
439     *     
440     */
441    public JoinTable getJoinTable() {
442        return joinTable;
443    }
444
445    /**
446     * Sets the value of the joinTable property.
447     * 
448     * @param value
449     *     allowed object is
450     *     {@link JoinTable }
451     *     
452     */
453    public void setJoinTable(JoinTable value) {
454        this.joinTable = value;
455    }
456
457    /**
458     * Gets the value of the joinColumn property.
459     * 
460     * <p>
461     * This accessor method returns a reference to the live list,
462     * not a snapshot. Therefore any modification you make to the
463     * returned list will be present inside the JAXB object.
464     * This is why there is not a <CODE>set</CODE> method for the joinColumn property.
465     * 
466     * <p>
467     * For example, to add a new item, do as follows:
468     * <pre>
469     *    getJoinColumn().add(newItem);
470     * </pre>
471     * 
472     * 
473     * <p>
474     * Objects of the following type(s) are allowed in the list
475     * {@link JoinColumn }
476     * 
477     * 
478     */
479    public List<JoinColumn> getJoinColumn() {
480        if (joinColumn == null) {
481            joinColumn = new ArrayList<JoinColumn>();
482        }
483        return this.joinColumn;
484    }
485
486    /**
487     * Gets the value of the foreignKey property.
488     * 
489     * @return
490     *     possible object is
491     *     {@link ForeignKey }
492     *     
493     */
494    public ForeignKey getForeignKey() {
495        return foreignKey;
496    }
497
498    /**
499     * Sets the value of the foreignKey property.
500     * 
501     * @param value
502     *     allowed object is
503     *     {@link ForeignKey }
504     *     
505     */
506    public void setForeignKey(ForeignKey value) {
507        this.foreignKey = value;
508    }
509
510    /**
511     * Gets the value of the cascade property.
512     * 
513     * @return
514     *     possible object is
515     *     {@link CascadeType }
516     *     
517     */
518    public CascadeType getCascade() {
519        return cascade;
520    }
521
522    /**
523     * Sets the value of the cascade property.
524     * 
525     * @param value
526     *     allowed object is
527     *     {@link CascadeType }
528     *     
529     */
530    public void setCascade(CascadeType value) {
531        this.cascade = value;
532    }
533
534    /**
535     * Gets the value of the name property.
536     * 
537     * @return
538     *     possible object is
539     *     {@link String }
540     *     
541     */
542    public String getName() {
543        return name;
544    }
545
546    /**
547     * Sets the value of the name property.
548     * 
549     * @param value
550     *     allowed object is
551     *     {@link String }
552     *     
553     */
554    public void setName(String value) {
555        this.name = value;
556    }
557
558    /**
559     * Gets the value of the targetEntity property.
560     * 
561     * @return
562     *     possible object is
563     *     {@link String }
564     *     
565     */
566    public String getTargetEntity() {
567        return targetEntity;
568    }
569
570    /**
571     * Sets the value of the targetEntity property.
572     * 
573     * @param value
574     *     allowed object is
575     *     {@link String }
576     *     
577     */
578    public void setTargetEntity(String value) {
579        this.targetEntity = value;
580    }
581
582    /**
583     * Gets the value of the fetch property.
584     * 
585     * @return
586     *     possible object is
587     *     {@link FetchType }
588     *     
589     */
590    public FetchType getFetch() {
591        return fetch;
592    }
593
594    /**
595     * Sets the value of the fetch property.
596     * 
597     * @param value
598     *     allowed object is
599     *     {@link FetchType }
600     *     
601     */
602    public void setFetch(FetchType value) {
603        this.fetch = value;
604    }
605
606    /**
607     * Gets the value of the access property.
608     * 
609     * @return
610     *     possible object is
611     *     {@link AccessType }
612     *     
613     */
614    public AccessType getAccess() {
615        return access;
616    }
617
618    /**
619     * Sets the value of the access property.
620     * 
621     * @param value
622     *     allowed object is
623     *     {@link AccessType }
624     *     
625     */
626    public void setAccess(AccessType value) {
627        this.access = value;
628    }
629
630    /**
631     * Gets the value of the mappedBy property.
632     * 
633     * @return
634     *     possible object is
635     *     {@link String }
636     *     
637     */
638    public String getMappedBy() {
639        return mappedBy;
640    }
641
642    /**
643     * Sets the value of the mappedBy property.
644     * 
645     * @param value
646     *     allowed object is
647     *     {@link String }
648     *     
649     */
650    public void setMappedBy(String value) {
651        this.mappedBy = value;
652    }
653
654    /**
655     * Gets the value of the orphanRemoval property.
656     * 
657     * @return
658     *     possible object is
659     *     {@link Boolean }
660     *     
661     */
662    public Boolean isOrphanRemoval() {
663        return orphanRemoval;
664    }
665
666    /**
667     * Sets the value of the orphanRemoval property.
668     * 
669     * @param value
670     *     allowed object is
671     *     {@link Boolean }
672     *     
673     */
674    public void setOrphanRemoval(Boolean value) {
675        this.orphanRemoval = value;
676    }
677
678}