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.04 at 12:50:46 AM 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.XmlSchemaType;
016    import javax.xml.bind.annotation.XmlSeeAlso;
017    import javax.xml.bind.annotation.XmlType;
018    import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
019    import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
020    import javax.xml.datatype.XMLGregorianCalendar;
021    
022    
023    /**
024     * Base model object.
025     * 
026     * 
027     * 
028     */
029    @XmlAccessorType(XmlAccessType.FIELD)
030    @XmlType(name = "ModelObject", propOrder = {
031        "documentation",
032        "authors"
033    })
034    @XmlSeeAlso({
035        Arguments.class,
036        Argument.class,
037        Dependencies.class,
038        Message.class,
039        Property.class,
040        Authors.class,
041        Modules.class,
042        Implementation.class,
043        Properties.class,
044        Specification.class,
045        Instance.class,
046        Instances.class,
047        Implementations.class,
048        Persons.class,
049        Specifications.class,
050        Person.class,
051        Module.class,
052        Messages.class,
053        ImplementationReference.class,
054        MessageReference.class,
055        PropertyReference.class,
056        SpecificationReference.class
057    })
058    @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-04T12:50:46+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
059    public class ModelObject
060        implements Cloneable
061    {
062    
063        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-04T12:50:46+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
064        protected Texts documentation;
065        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-04T12:50:46+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
066        protected Authors authors;
067        @XmlAttribute
068        @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
069        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-04T12:50:46+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
070        protected String modelVersion;
071        @XmlAttribute
072        @XmlSchemaType(name = "dateTime")
073        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-04T12:50:46+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
074        protected XMLGregorianCalendar createDate;
075        @XmlAttribute
076        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-04T12:50:46+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
077        protected Boolean deprecated;
078    
079        /**
080         * Creates a new {@code ModelObject} instance.
081         * 
082         */
083        public ModelObject() {
084             // CC-XJC Version 1.0 Build 2009-09-18T15:48:40+0000
085            super();
086        }
087    
088        /**
089         * Creates a new {@code ModelObject} instance by deeply copying a given instance.
090         * 
091         * @param o
092         *     The instance to copy or {@code null}.
093         */
094        public ModelObject(final ModelObject o) {
095             // CC-XJC Version 1.0 Build 2009-09-18T15:48:40+0000
096            super();
097            if (o!= null) {
098                {
099                    // CClassInfo: org.jomc.model.Texts
100                    this.documentation = ((((Texts) o.getDocumentation()) == null)?null:((Texts) o.getDocumentation()).clone());
101                    // CClassInfo: org.jomc.model.Authors
102                    this.authors = ((((Authors) o.getAuthors()) == null)?null:((Authors) o.getAuthors()).clone());
103                    // CBuiltinLeafInfo: java.lang.String
104                    this.modelVersion = ((String) o.getModelVersion());
105                    // CBuiltinLeafInfo: javax.xml.datatype.XMLGregorianCalendar
106                    this.createDate = ((((XMLGregorianCalendar) o.getCreateDate()) == null)?null:((XMLGregorianCalendar)((XMLGregorianCalendar) o.getCreateDate()).clone()));
107                    // CBuiltinLeafInfo: java.lang.Boolean
108                    this.deprecated = ((Boolean) o.isDeprecated());
109                }
110            }
111        }
112    
113        /**
114         * Documentation of this object or {@code null}.
115         * 
116         * @return
117         *     possible object is
118         *     {@link Texts }
119         *     
120         */
121        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-04T12:50:46+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
122        public Texts getDocumentation() {
123            return documentation;
124        }
125    
126        /**
127         * Sets the value of the documentation property.
128         * 
129         * @param value
130         *     allowed object is
131         *     {@link Texts }
132         *     
133         */
134        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-04T12:50:46+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
135        public void setDocumentation(Texts value) {
136            this.documentation = value;
137        }
138    
139        /**
140         * Authors of this object or {@code null}.
141         * 
142         * @return
143         *     possible object is
144         *     {@link Authors }
145         *     
146         */
147        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-04T12:50:46+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
148        public Authors getAuthors() {
149            return authors;
150        }
151    
152        /**
153         * Sets the value of the authors property.
154         * 
155         * @param value
156         *     allowed object is
157         *     {@link Authors }
158         *     
159         */
160        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-04T12:50:46+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
161        public void setAuthors(Authors value) {
162            this.authors = value;
163        }
164    
165        /**
166         * Version of the model of this object.
167         * 
168         * @return
169         *     possible object is
170         *     {@link String }
171         *     
172         */
173        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-04T12:50:46+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
174        public String getModelVersion() {
175            if (modelVersion == null) {
176                return "1.0";
177            } else {
178                return modelVersion;
179            }
180        }
181    
182        /**
183         * Sets the value of the modelVersion property.
184         * 
185         * @param value
186         *     allowed object is
187         *     {@link String }
188         *     
189         */
190        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-04T12:50:46+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
191        public void setModelVersion(String value) {
192            this.modelVersion = value;
193        }
194    
195        /**
196         * The date this object got created or {@code null}.
197         * 
198         * @return
199         *     possible object is
200         *     {@link XMLGregorianCalendar }
201         *     
202         */
203        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-04T12:50:46+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
204        public XMLGregorianCalendar getCreateDate() {
205            return createDate;
206        }
207    
208        /**
209         * Sets the value of the createDate property.
210         * 
211         * @param value
212         *     allowed object is
213         *     {@link XMLGregorianCalendar }
214         *     
215         */
216        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-04T12:50:46+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
217        public void setCreateDate(XMLGregorianCalendar value) {
218            this.createDate = value;
219        }
220    
221        /**
222         * Flags this object deprecated.
223         * 
224         * @return
225         *     possible object is
226         *     {@link Boolean }
227         *     
228         */
229        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-04T12:50:46+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
230        public boolean isDeprecated() {
231            if (deprecated == null) {
232                return false;
233            } else {
234                return deprecated;
235            }
236        }
237    
238        /**
239         * Sets the value of the deprecated property.
240         * 
241         * @param value
242         *     allowed object is
243         *     {@link Boolean }
244         *     
245         */
246        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-04T12:50:46+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
247        public void setDeprecated(Boolean value) {
248            this.deprecated = value;
249        }
250    
251        /**
252         * Creates and returns a deep copy of this object.
253         * 
254         * 
255         * @return
256         *     A deep copy of this object.
257         */
258        @Override
259        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-10-04T12:50:46+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
260        public ModelObject clone() {
261             // CC-XJC Version 1.0 Build 2009-09-18T15:48:40+0000
262            return new ModelObject(this);
263        }
264    
265    }