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({TYPE}) @Retention(RUNTIME)
024 *         public @interface Table {
025 *           String name() default "";
026 *           String catalog() default "";
027 *           String schema() default "";
028 *           UniqueConstraint[] uniqueConstraints() default {};
029 *           Index[] indexes() default {};
030 *         }
031 * 
032 *       
033 * 
034 * <p>Java class for table complex type.
035 * 
036 * <p>The following schema fragment specifies the expected content contained within this class.
037 * 
038 * <pre>
039 * &lt;complexType name="table"&gt;
040 *   &lt;complexContent&gt;
041 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
042 *       &lt;sequence&gt;
043 *         &lt;element name="unique-constraint" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}unique-constraint" maxOccurs="unbounded" minOccurs="0"/&gt;
044 *         &lt;element name="index" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}index" maxOccurs="unbounded" minOccurs="0"/&gt;
045 *       &lt;/sequence&gt;
046 *       &lt;attribute name="name" type="{http://www.w3.org/2001/XMLSchema}string" /&gt;
047 *       &lt;attribute name="catalog" type="{http://www.w3.org/2001/XMLSchema}string" /&gt;
048 *       &lt;attribute name="schema" type="{http://www.w3.org/2001/XMLSchema}string" /&gt;
049 *     &lt;/restriction&gt;
050 *   &lt;/complexContent&gt;
051 * &lt;/complexType&gt;
052 * </pre>
053 * 
054 * 
055 */
056@XmlAccessorType(XmlAccessType.FIELD)
057@XmlType(name = "table", propOrder = {
058    "uniqueConstraint",
059    "index"
060})
061public class Table {
062
063    @XmlElement(name = "unique-constraint")
064    protected List<UniqueConstraint> uniqueConstraint;
065    protected List<Index> index;
066    @XmlAttribute(name = "name")
067    protected String name;
068    @XmlAttribute(name = "catalog")
069    protected String catalog;
070    @XmlAttribute(name = "schema")
071    protected String schema;
072
073    /**
074     * Gets the value of the uniqueConstraint property.
075     * 
076     * <p>
077     * This accessor method returns a reference to the live list,
078     * not a snapshot. Therefore any modification you make to the
079     * returned list will be present inside the JAXB object.
080     * This is why there is not a <CODE>set</CODE> method for the uniqueConstraint property.
081     * 
082     * <p>
083     * For example, to add a new item, do as follows:
084     * <pre>
085     *    getUniqueConstraint().add(newItem);
086     * </pre>
087     * 
088     * 
089     * <p>
090     * Objects of the following type(s) are allowed in the list
091     * {@link UniqueConstraint }
092     * 
093     * 
094     */
095    public List<UniqueConstraint> getUniqueConstraint() {
096        if (uniqueConstraint == null) {
097            uniqueConstraint = new ArrayList<UniqueConstraint>();
098        }
099        return this.uniqueConstraint;
100    }
101
102    /**
103     * Gets the value of the index property.
104     * 
105     * <p>
106     * This accessor method returns a reference to the live list,
107     * not a snapshot. Therefore any modification you make to the
108     * returned list will be present inside the JAXB object.
109     * This is why there is not a <CODE>set</CODE> method for the index property.
110     * 
111     * <p>
112     * For example, to add a new item, do as follows:
113     * <pre>
114     *    getIndex().add(newItem);
115     * </pre>
116     * 
117     * 
118     * <p>
119     * Objects of the following type(s) are allowed in the list
120     * {@link Index }
121     * 
122     * 
123     */
124    public List<Index> getIndex() {
125        if (index == null) {
126            index = new ArrayList<Index>();
127        }
128        return this.index;
129    }
130
131    /**
132     * Gets the value of the name property.
133     * 
134     * @return
135     *     possible object is
136     *     {@link String }
137     *     
138     */
139    public String getName() {
140        return name;
141    }
142
143    /**
144     * Sets the value of the name property.
145     * 
146     * @param value
147     *     allowed object is
148     *     {@link String }
149     *     
150     */
151    public void setName(String value) {
152        this.name = value;
153    }
154
155    /**
156     * Gets the value of the catalog property.
157     * 
158     * @return
159     *     possible object is
160     *     {@link String }
161     *     
162     */
163    public String getCatalog() {
164        return catalog;
165    }
166
167    /**
168     * Sets the value of the catalog property.
169     * 
170     * @param value
171     *     allowed object is
172     *     {@link String }
173     *     
174     */
175    public void setCatalog(String value) {
176        this.catalog = value;
177    }
178
179    /**
180     * Gets the value of the schema property.
181     * 
182     * @return
183     *     possible object is
184     *     {@link String }
185     *     
186     */
187    public String getSchema() {
188        return schema;
189    }
190
191    /**
192     * Sets the value of the schema property.
193     * 
194     * @param value
195     *     allowed object is
196     *     {@link String }
197     *     
198     */
199    public void setSchema(String value) {
200        this.schema = value;
201    }
202
203}