001    //
002    // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-833 
003    // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
004    // Any modifications to this file will be lost upon recompilation of the source schema. 
005    // Generated on: 2009.10.02 at 06:07:50 PM UTC 
006    //
007    
008    
009    package org.jomc.model;
010    
011    import javax.annotation.Generated;
012    import javax.xml.bind.annotation.XmlAccessType;
013    import javax.xml.bind.annotation.XmlAccessorType;
014    import javax.xml.bind.annotation.XmlAttribute;
015    import javax.xml.bind.annotation.XmlType;
016    import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
017    import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
018    
019    
020    /**
021     * Reference to a property.
022     * @see Property
023     * 
024     * 
025     * 
026     */
027    @XmlAccessorType(XmlAccessType.FIELD)
028    @XmlType(name = "PropertyReference")
029    @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-02T06:07:50+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
030    public class PropertyReference
031        extends ModelObject
032        implements Cloneable
033    {
034    
035        @XmlAttribute(required = true)
036        @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
037        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-02T06:07:50+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
038        protected String name;
039        @XmlAttribute(name = "final")
040        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-02T06:07:50+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
041        protected Boolean _final;
042        @XmlAttribute
043        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-02T06:07:50+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
044        protected Boolean override;
045    
046        /**
047         * Creates a new {@code PropertyReference} instance.
048         * 
049         */
050        public PropertyReference() {
051             // CC-XJC Version 1.0 Build 2009-09-18T15:48:40+0000
052            super();
053        }
054    
055        /**
056         * Creates a new {@code PropertyReference} instance by deeply copying a given instance.
057         * 
058         * @param o
059         *     The instance to copy or {@code null}.
060         */
061        public PropertyReference(final PropertyReference o) {
062             // CC-XJC Version 1.0 Build 2009-09-18T15:48:40+0000
063            super(o);
064            if (o!= null) {
065                {
066                    // CBuiltinLeafInfo: java.lang.String
067                    this.name = ((String) o.getName());
068                    // CBuiltinLeafInfo: java.lang.Boolean
069                    this._final = ((Boolean) o.isFinal());
070                    // CBuiltinLeafInfo: java.lang.Boolean
071                    this.override = ((Boolean) o.isOverride());
072                }
073            }
074        }
075    
076        /**
077         * The name of the referenced property.
078         * 
079         * @return
080         *     possible object is
081         *     {@link String }
082         *     
083         */
084        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-02T06:07:50+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
085        public String getName() {
086            return name;
087        }
088    
089        /**
090         * Sets the value of the name property.
091         * 
092         * @param value
093         *     allowed object is
094         *     {@link String }
095         *     
096         */
097        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-02T06:07:50+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
098        public void setName(String value) {
099            this.name = value;
100        }
101    
102        /**
103         * Flags this property reference final.
104         * 
105         * @return
106         *     possible object is
107         *     {@link Boolean }
108         *     
109         */
110        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-02T06:07:50+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
111        public boolean isFinal() {
112            if (_final == null) {
113                return false;
114            } else {
115                return _final;
116            }
117        }
118    
119        /**
120         * Sets the value of the final property.
121         * 
122         * @param value
123         *     allowed object is
124         *     {@link Boolean }
125         *     
126         */
127        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-02T06:07:50+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
128        public void setFinal(Boolean value) {
129            this._final = value;
130        }
131    
132        /**
133         * True, if this property reference is intended to override a super property reference.
134         * 
135         * @return
136         *     possible object is
137         *     {@link Boolean }
138         *     
139         */
140        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-02T06:07:50+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
141        public boolean isOverride() {
142            if (override == null) {
143                return false;
144            } else {
145                return override;
146            }
147        }
148    
149        /**
150         * Sets the value of the override property.
151         * 
152         * @param value
153         *     allowed object is
154         *     {@link Boolean }
155         *     
156         */
157        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-02T06:07:50+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
158        public void setOverride(Boolean value) {
159            this.override = value;
160        }
161    
162        /**
163         * Creates and returns a deep copy of this object.
164         * 
165         * 
166         * @return
167         *     A deep copy of this object.
168         */
169        @Override
170        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-02T06:07:50+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
171        public PropertyReference clone() {
172             // CC-XJC Version 1.0 Build 2009-09-18T15:48:40+0000
173            return new PropertyReference(this);
174        }
175    
176    }