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.09.21 at 10:35:38 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.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        MessageReference.class,
054        PropertyReference.class,
055        SpecificationReference.class
056    })
057    @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
058    public class ModelObject
059        implements Cloneable
060    {
061    
062        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
063        protected Texts documentation;
064        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
065        protected Authors authors;
066        @XmlAttribute
067        @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
068        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
069        protected String modelVersion;
070        @XmlAttribute
071        @XmlSchemaType(name = "dateTime")
072        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
073        protected XMLGregorianCalendar createDate;
074    
075        /**
076         * Creates a new {@code ModelObject} instance.
077         * 
078         */
079        public ModelObject() {
080             // CC-XJC Version 1.0 Build 2009-09-18T15:48:40+0000
081            super();
082        }
083    
084        /**
085         * Creates a new {@code ModelObject} instance by deeply copying a given instance.
086         * 
087         * @param o
088         *     The instance to copy or {@code null}.
089         */
090        public ModelObject(final ModelObject o) {
091             // CC-XJC Version 1.0 Build 2009-09-18T15:48:40+0000
092            super();
093            if (o!= null) {
094                {
095                    // CClassInfo: org.jomc.model.Texts
096                    this.documentation = ((((Texts) o.getDocumentation()) == null)?null:((Texts) o.getDocumentation()).clone());
097                    // CClassInfo: org.jomc.model.Authors
098                    this.authors = ((((Authors) o.getAuthors()) == null)?null:((Authors) o.getAuthors()).clone());
099                    // CBuiltinLeafInfo: java.lang.String
100                    this.modelVersion = ((String) o.getModelVersion());
101                    // CBuiltinLeafInfo: javax.xml.datatype.XMLGregorianCalendar
102                    this.createDate = ((((XMLGregorianCalendar) o.getCreateDate()) == null)?null:((XMLGregorianCalendar)((XMLGregorianCalendar) o.getCreateDate()).clone()));
103                }
104            }
105        }
106    
107        /**
108         * Documentation of this object.
109         * 
110         * @return
111         *     possible object is
112         *     {@link Texts }
113         *     
114         */
115        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
116        public Texts getDocumentation() {
117            return documentation;
118        }
119    
120        /**
121         * Sets the value of the documentation property.
122         * 
123         * @param value
124         *     allowed object is
125         *     {@link Texts }
126         *     
127         */
128        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
129        public void setDocumentation(Texts value) {
130            this.documentation = value;
131        }
132    
133        /**
134         * Authors of this object.
135         * 
136         * @return
137         *     possible object is
138         *     {@link Authors }
139         *     
140         */
141        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
142        public Authors getAuthors() {
143            return authors;
144        }
145    
146        /**
147         * Sets the value of the authors property.
148         * 
149         * @param value
150         *     allowed object is
151         *     {@link Authors }
152         *     
153         */
154        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
155        public void setAuthors(Authors value) {
156            this.authors = value;
157        }
158    
159        /**
160         * Version of the model of this object.
161         * 
162         * @return
163         *     possible object is
164         *     {@link String }
165         *     
166         */
167        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
168        public String getModelVersion() {
169            if (modelVersion == null) {
170                return "1.0";
171            } else {
172                return modelVersion;
173            }
174        }
175    
176        /**
177         * Sets the value of the modelVersion property.
178         * 
179         * @param value
180         *     allowed object is
181         *     {@link String }
182         *     
183         */
184        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
185        public void setModelVersion(String value) {
186            this.modelVersion = value;
187        }
188    
189        /**
190         * The date this object got created or {@code null}.
191         * 
192         * @return
193         *     possible object is
194         *     {@link XMLGregorianCalendar }
195         *     
196         */
197        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
198        public XMLGregorianCalendar getCreateDate() {
199            return createDate;
200        }
201    
202        /**
203         * Sets the value of the createDate property.
204         * 
205         * @param value
206         *     allowed object is
207         *     {@link XMLGregorianCalendar }
208         *     
209         */
210        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
211        public void setCreateDate(XMLGregorianCalendar value) {
212            this.createDate = value;
213        }
214    
215        /**
216         * Creates and returns a deep copy of this object.
217         * 
218         * 
219         * @return
220         *     A deep copy of this object.
221         */
222        @Override
223        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
224        public ModelObject clone() {
225             // CC-XJC Version 1.0 Build 2009-09-18T15:48:40+0000
226            return new ModelObject(this);
227        }
228    
229    }