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 javax.xml.bind.annotation.XmlAccessType;
012import javax.xml.bind.annotation.XmlAccessorType;
013import javax.xml.bind.annotation.XmlAttribute;
014import javax.xml.bind.annotation.XmlType;
015
016
017/**
018 * 
019 * 
020 *         Defines the settings and mappings for embeddable objects. Is 
021 *         allowed to be sparsely populated and used in conjunction with 
022 *         the annotations. Alternatively, the metadata-complete attribute 
023 *         can be used to indicate that no annotations are to be processed 
024 *         in the class. If this is the case then the defaulting rules will 
025 *         be recursively applied.
026 * 
027 *         @Target({TYPE}) @Retention(RUNTIME)
028 *         public @interface Embeddable {}
029 * 
030 *       
031 * 
032 * <p>Java class for embeddable complex type.
033 * 
034 * <p>The following schema fragment specifies the expected content contained within this class.
035 * 
036 * <pre>
037 * &lt;complexType name="embeddable"&gt;
038 *   &lt;complexContent&gt;
039 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
040 *       &lt;sequence&gt;
041 *         &lt;element name="description" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/&gt;
042 *         &lt;element name="attributes" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}embeddable-attributes" minOccurs="0"/&gt;
043 *       &lt;/sequence&gt;
044 *       &lt;attribute name="class" use="required" type="{http://www.w3.org/2001/XMLSchema}string" /&gt;
045 *       &lt;attribute name="access" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}access-type" /&gt;
046 *       &lt;attribute name="metadata-complete" type="{http://www.w3.org/2001/XMLSchema}boolean" /&gt;
047 *     &lt;/restriction&gt;
048 *   &lt;/complexContent&gt;
049 * &lt;/complexType&gt;
050 * </pre>
051 * 
052 * 
053 */
054@XmlAccessorType(XmlAccessType.FIELD)
055@XmlType(name = "embeddable", propOrder = {
056    "description",
057    "attributes"
058})
059public class Embeddable {
060
061    protected String description;
062    protected EmbeddableAttributes attributes;
063    @XmlAttribute(name = "class", required = true)
064    protected String clazz;
065    @XmlAttribute(name = "access")
066    protected AccessType access;
067    @XmlAttribute(name = "metadata-complete")
068    protected Boolean metadataComplete;
069
070    /**
071     * Gets the value of the description property.
072     * 
073     * @return
074     *     possible object is
075     *     {@link String }
076     *     
077     */
078    public String getDescription() {
079        return description;
080    }
081
082    /**
083     * Sets the value of the description property.
084     * 
085     * @param value
086     *     allowed object is
087     *     {@link String }
088     *     
089     */
090    public void setDescription(String value) {
091        this.description = value;
092    }
093
094    /**
095     * Gets the value of the attributes property.
096     * 
097     * @return
098     *     possible object is
099     *     {@link EmbeddableAttributes }
100     *     
101     */
102    public EmbeddableAttributes getAttributes() {
103        return attributes;
104    }
105
106    /**
107     * Sets the value of the attributes property.
108     * 
109     * @param value
110     *     allowed object is
111     *     {@link EmbeddableAttributes }
112     *     
113     */
114    public void setAttributes(EmbeddableAttributes value) {
115        this.attributes = value;
116    }
117
118    /**
119     * Gets the value of the clazz property.
120     * 
121     * @return
122     *     possible object is
123     *     {@link String }
124     *     
125     */
126    public String getClazz() {
127        return clazz;
128    }
129
130    /**
131     * Sets the value of the clazz property.
132     * 
133     * @param value
134     *     allowed object is
135     *     {@link String }
136     *     
137     */
138    public void setClazz(String value) {
139        this.clazz = value;
140    }
141
142    /**
143     * Gets the value of the access property.
144     * 
145     * @return
146     *     possible object is
147     *     {@link AccessType }
148     *     
149     */
150    public AccessType getAccess() {
151        return access;
152    }
153
154    /**
155     * Sets the value of the access property.
156     * 
157     * @param value
158     *     allowed object is
159     *     {@link AccessType }
160     *     
161     */
162    public void setAccess(AccessType value) {
163        this.access = value;
164    }
165
166    /**
167     * Gets the value of the metadataComplete property.
168     * 
169     * @return
170     *     possible object is
171     *     {@link Boolean }
172     *     
173     */
174    public Boolean isMetadataComplete() {
175        return metadataComplete;
176    }
177
178    /**
179     * Sets the value of the metadataComplete property.
180     * 
181     * @param value
182     *     allowed object is
183     *     {@link Boolean }
184     *     
185     */
186    public void setMetadataComplete(Boolean value) {
187        this.metadataComplete = value;
188    }
189
190}