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.XmlSeeAlso;
016    import javax.xml.bind.annotation.XmlType;
017    import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
018    import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
019    
020    
021    /**
022     * Reference to an implementation.
023     * @see Implementation
024     * 
025     * 
026     * 
027     */
028    @XmlAccessorType(XmlAccessType.FIELD)
029    @XmlType(name = "ImplementationReference")
030    @XmlSeeAlso({
031        Dependency.class
032    })
033    @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
034    public class ImplementationReference
035        extends SpecificationReference
036        implements Cloneable
037    {
038    
039        @XmlAttribute
040        @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
041        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
042        protected String implementationName;
043    
044        /**
045         * Creates a new {@code ImplementationReference} instance.
046         * 
047         */
048        public ImplementationReference() {
049             // CC-XJC Version 1.0 Build 2009-09-18T15:48:40+0000
050            super();
051        }
052    
053        /**
054         * Creates a new {@code ImplementationReference} instance by deeply copying a given instance.
055         * 
056         * @param o
057         *     The instance to copy or {@code null}.
058         */
059        public ImplementationReference(final ImplementationReference o) {
060             // CC-XJC Version 1.0 Build 2009-09-18T15:48:40+0000
061            super(o);
062            if (o!= null) {
063                {
064                    // CBuiltinLeafInfo: java.lang.String
065                    this.implementationName = ((String) o.getImplementationName());
066                }
067            }
068        }
069    
070        /**
071         * 
072         * Name of the referenced implementation of the specification or {@code null}.
073         * If not set, the specification's multiplicity determines the implementation(s) of
074         * the reference.
075         * 
076         * @return
077         *     possible object is
078         *     {@link String }
079         *     
080         */
081        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
082        public String getImplementationName() {
083            return implementationName;
084        }
085    
086        /**
087         * Sets the value of the implementationName property.
088         * 
089         * @param value
090         *     allowed object is
091         *     {@link String }
092         *     
093         */
094        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
095        public void setImplementationName(String value) {
096            this.implementationName = value;
097        }
098    
099        /**
100         * Creates and returns a deep copy of this object.
101         * 
102         * 
103         * @return
104         *     A deep copy of this object.
105         */
106        @Override
107        @Generated(value = "com.sun.tools.xjc.Driver", date = "2009-09-21T10:35:38+00:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
108        public ImplementationReference clone() {
109             // CC-XJC Version 1.0 Build 2009-09-18T15:48:40+0000
110            return new ImplementationReference(this);
111        }
112    
113    }