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: 2010.08.18 at 10:46:56 PM CEST 
006    //
007    
008    
009    package net.sourceforge.jpaxjc.ns.persistence.orm;
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.XmlElement;
016    import javax.xml.bind.annotation.XmlType;
017    
018    
019    /**
020     * 
021     * 
022     *         Defines an entity listener to be invoked at lifecycle events
023     *         for the entities that list this listener.
024     * 
025     *       
026     * 
027     * <p>Java class for entity-listener complex type.
028     * 
029     * <p>The following schema fragment specifies the expected content contained within this class.
030     * 
031     * <pre>
032     * &lt;complexType name="entity-listener">
033     *   &lt;complexContent>
034     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
035     *       &lt;sequence>
036     *         &lt;element name="pre-persist" type="{http://java.sun.com/xml/ns/persistence/orm}pre-persist" minOccurs="0"/>
037     *         &lt;element name="post-persist" type="{http://java.sun.com/xml/ns/persistence/orm}post-persist" minOccurs="0"/>
038     *         &lt;element name="pre-remove" type="{http://java.sun.com/xml/ns/persistence/orm}pre-remove" minOccurs="0"/>
039     *         &lt;element name="post-remove" type="{http://java.sun.com/xml/ns/persistence/orm}post-remove" minOccurs="0"/>
040     *         &lt;element name="pre-update" type="{http://java.sun.com/xml/ns/persistence/orm}pre-update" minOccurs="0"/>
041     *         &lt;element name="post-update" type="{http://java.sun.com/xml/ns/persistence/orm}post-update" minOccurs="0"/>
042     *         &lt;element name="post-load" type="{http://java.sun.com/xml/ns/persistence/orm}post-load" minOccurs="0"/>
043     *       &lt;/sequence>
044     *       &lt;attribute name="class" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
045     *     &lt;/restriction>
046     *   &lt;/complexContent>
047     * &lt;/complexType>
048     * </pre>
049     * 
050     * 
051     */
052    @XmlAccessorType(XmlAccessType.FIELD)
053    @XmlType(name = "entity-listener", propOrder = {
054        "prePersist",
055        "postPersist",
056        "preRemove",
057        "postRemove",
058        "preUpdate",
059        "postUpdate",
060        "postLoad"
061    })
062    @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
063    public class EntityListener implements Cloneable
064    {
065    
066        @XmlElement(name = "pre-persist")
067        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
068        protected PrePersist prePersist;
069        @XmlElement(name = "post-persist")
070        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
071        protected PostPersist postPersist;
072        @XmlElement(name = "pre-remove")
073        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
074        protected PreRemove preRemove;
075        @XmlElement(name = "post-remove")
076        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
077        protected PostRemove postRemove;
078        @XmlElement(name = "pre-update")
079        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
080        protected PreUpdate preUpdate;
081        @XmlElement(name = "post-update")
082        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
083        protected PostUpdate postUpdate;
084        @XmlElement(name = "post-load")
085        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
086        protected PostLoad postLoad;
087        @XmlAttribute(name = "class", required = true)
088        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
089        protected String clazz;
090    
091        /**
092         * Creates a new {@code EntityListener} instance.
093         * 
094         */
095        public EntityListener() {
096            // CC-XJC Version 1.3 Build 2010-02-27T15:04:03+0000
097            super();
098        }
099    
100        /**
101         * Creates a new {@code EntityListener} instance by deeply copying a given {@code EntityListener} instance.
102         * 
103         * 
104         * @param o
105         *     The instance to copy.
106         * @throws NullPointerException
107         *     if {@code o} is {@code null}.
108         */
109        public EntityListener(final EntityListener o) {
110            // CC-XJC Version 1.3 Build 2010-02-27T15:04:03+0000
111            super();
112            if (o == null) {
113                throw new NullPointerException("Cannot create a copy of 'EntityListener' from 'null'.");
114            }
115            // CClassInfo: net.sourceforge.jpaxjc.ns.persistence.orm.PrePersist
116            this.prePersist = ((o.getPrePersist() == null)?null:o.getPrePersist().clone());
117            // CClassInfo: net.sourceforge.jpaxjc.ns.persistence.orm.PostPersist
118            this.postPersist = ((o.getPostPersist() == null)?null:o.getPostPersist().clone());
119            // CClassInfo: net.sourceforge.jpaxjc.ns.persistence.orm.PreRemove
120            this.preRemove = ((o.getPreRemove() == null)?null:o.getPreRemove().clone());
121            // CClassInfo: net.sourceforge.jpaxjc.ns.persistence.orm.PostRemove
122            this.postRemove = ((o.getPostRemove() == null)?null:o.getPostRemove().clone());
123            // CClassInfo: net.sourceforge.jpaxjc.ns.persistence.orm.PreUpdate
124            this.preUpdate = ((o.getPreUpdate() == null)?null:o.getPreUpdate().clone());
125            // CClassInfo: net.sourceforge.jpaxjc.ns.persistence.orm.PostUpdate
126            this.postUpdate = ((o.getPostUpdate() == null)?null:o.getPostUpdate().clone());
127            // CClassInfo: net.sourceforge.jpaxjc.ns.persistence.orm.PostLoad
128            this.postLoad = ((o.getPostLoad() == null)?null:o.getPostLoad().clone());
129            // CBuiltinLeafInfo: java.lang.String
130            this.clazz = o.getClazz();
131        }
132    
133        /**
134         * Gets the value of the prePersist property.
135         * 
136         * @return
137         *     possible object is
138         *     {@link PrePersist }
139         *     
140         */
141        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
142        public PrePersist getPrePersist() {
143            return prePersist;
144        }
145    
146        /**
147         * Sets the value of the prePersist property.
148         * 
149         * @param value
150         *     allowed object is
151         *     {@link PrePersist }
152         *     
153         */
154        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
155        public void setPrePersist(PrePersist value) {
156            this.prePersist = value;
157        }
158    
159        /**
160         * Gets the value of the postPersist property.
161         * 
162         * @return
163         *     possible object is
164         *     {@link PostPersist }
165         *     
166         */
167        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
168        public PostPersist getPostPersist() {
169            return postPersist;
170        }
171    
172        /**
173         * Sets the value of the postPersist property.
174         * 
175         * @param value
176         *     allowed object is
177         *     {@link PostPersist }
178         *     
179         */
180        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
181        public void setPostPersist(PostPersist value) {
182            this.postPersist = value;
183        }
184    
185        /**
186         * Gets the value of the preRemove property.
187         * 
188         * @return
189         *     possible object is
190         *     {@link PreRemove }
191         *     
192         */
193        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
194        public PreRemove getPreRemove() {
195            return preRemove;
196        }
197    
198        /**
199         * Sets the value of the preRemove property.
200         * 
201         * @param value
202         *     allowed object is
203         *     {@link PreRemove }
204         *     
205         */
206        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
207        public void setPreRemove(PreRemove value) {
208            this.preRemove = value;
209        }
210    
211        /**
212         * Gets the value of the postRemove property.
213         * 
214         * @return
215         *     possible object is
216         *     {@link PostRemove }
217         *     
218         */
219        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
220        public PostRemove getPostRemove() {
221            return postRemove;
222        }
223    
224        /**
225         * Sets the value of the postRemove property.
226         * 
227         * @param value
228         *     allowed object is
229         *     {@link PostRemove }
230         *     
231         */
232        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
233        public void setPostRemove(PostRemove value) {
234            this.postRemove = value;
235        }
236    
237        /**
238         * Gets the value of the preUpdate property.
239         * 
240         * @return
241         *     possible object is
242         *     {@link PreUpdate }
243         *     
244         */
245        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
246        public PreUpdate getPreUpdate() {
247            return preUpdate;
248        }
249    
250        /**
251         * Sets the value of the preUpdate property.
252         * 
253         * @param value
254         *     allowed object is
255         *     {@link PreUpdate }
256         *     
257         */
258        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
259        public void setPreUpdate(PreUpdate value) {
260            this.preUpdate = value;
261        }
262    
263        /**
264         * Gets the value of the postUpdate property.
265         * 
266         * @return
267         *     possible object is
268         *     {@link PostUpdate }
269         *     
270         */
271        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
272        public PostUpdate getPostUpdate() {
273            return postUpdate;
274        }
275    
276        /**
277         * Sets the value of the postUpdate property.
278         * 
279         * @param value
280         *     allowed object is
281         *     {@link PostUpdate }
282         *     
283         */
284        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
285        public void setPostUpdate(PostUpdate value) {
286            this.postUpdate = value;
287        }
288    
289        /**
290         * Gets the value of the postLoad property.
291         * 
292         * @return
293         *     possible object is
294         *     {@link PostLoad }
295         *     
296         */
297        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
298        public PostLoad getPostLoad() {
299            return postLoad;
300        }
301    
302        /**
303         * Sets the value of the postLoad property.
304         * 
305         * @param value
306         *     allowed object is
307         *     {@link PostLoad }
308         *     
309         */
310        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
311        public void setPostLoad(PostLoad value) {
312            this.postLoad = value;
313        }
314    
315        /**
316         * Gets the value of the clazz property.
317         * 
318         * @return
319         *     possible object is
320         *     {@link String }
321         *     
322         */
323        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
324        public String getClazz() {
325            return clazz;
326        }
327    
328        /**
329         * Sets the value of the clazz property.
330         * 
331         * @param value
332         *     allowed object is
333         *     {@link String }
334         *     
335         */
336        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
337        public void setClazz(String value) {
338            this.clazz = value;
339        }
340    
341        /**
342         * Creates and returns a deep copy of this object.
343         * 
344         * 
345         * @return
346         *     A deep copy of this object.
347         */
348        @Override
349        @Generated(value = "com.sun.tools.xjc.Driver", date = "2010-08-18T10:46:56+02:00", comments = "JAXB RI vhudson-jaxb-ri-2.1-833")
350        public EntityListener clone() {
351            // CC-XJC Version 1.3 Build 2010-02-27T15:04:03+0000
352            return new EntityListener(this);
353        }
354    
355    }