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({}) @Retention(RUNTIME)
024 *         public @interface NamedSubgraph {
025 *           String name();
026 *           Class type() default void.class;
027 *           NamedAttributeNode[] attributeNodes();
028 *         }
029 * 
030 *       
031 * 
032 * <p>Java class for named-subgraph complex type.
033 * 
034 * <p>The following schema fragment specifies the expected content contained within this class.
035 * 
036 * <pre>
037 * &lt;complexType name="named-subgraph"&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="named-attribute-node" type="{http://xmlns.jcp.org/xml/ns/persistence/orm}named-attribute-node" maxOccurs="unbounded" minOccurs="0"/&gt;
042 *       &lt;/sequence&gt;
043 *       &lt;attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" /&gt;
044 *       &lt;attribute name="class" type="{http://www.w3.org/2001/XMLSchema}string" /&gt;
045 *     &lt;/restriction&gt;
046 *   &lt;/complexContent&gt;
047 * &lt;/complexType&gt;
048 * </pre>
049 * 
050 * 
051 */
052@XmlAccessorType(XmlAccessType.FIELD)
053@XmlType(name = "named-subgraph", propOrder = {
054    "namedAttributeNode"
055})
056public class NamedSubgraph {
057
058    @XmlElement(name = "named-attribute-node")
059    protected List<NamedAttributeNode> namedAttributeNode;
060    @XmlAttribute(name = "name", required = true)
061    protected String name;
062    @XmlAttribute(name = "class")
063    protected String clazz;
064
065    /**
066     * Gets the value of the namedAttributeNode property.
067     * 
068     * <p>
069     * This accessor method returns a reference to the live list,
070     * not a snapshot. Therefore any modification you make to the
071     * returned list will be present inside the JAXB object.
072     * This is why there is not a <CODE>set</CODE> method for the namedAttributeNode property.
073     * 
074     * <p>
075     * For example, to add a new item, do as follows:
076     * <pre>
077     *    getNamedAttributeNode().add(newItem);
078     * </pre>
079     * 
080     * 
081     * <p>
082     * Objects of the following type(s) are allowed in the list
083     * {@link NamedAttributeNode }
084     * 
085     * 
086     */
087    public List<NamedAttributeNode> getNamedAttributeNode() {
088        if (namedAttributeNode == null) {
089            namedAttributeNode = new ArrayList<NamedAttributeNode>();
090        }
091        return this.namedAttributeNode;
092    }
093
094    /**
095     * Gets the value of the name property.
096     * 
097     * @return
098     *     possible object is
099     *     {@link String }
100     *     
101     */
102    public String getName() {
103        return name;
104    }
105
106    /**
107     * Sets the value of the name property.
108     * 
109     * @param value
110     *     allowed object is
111     *     {@link String }
112     *     
113     */
114    public void setName(String value) {
115        this.name = 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}