some changes to the update script
[cdmlib.git] / cdmlib-model / src / main / java / eu / etaxonomy / cdm / model / agent / InstitutionalMembership.java
index c72a049c2469804a91f7a63dad6cbc6e7b8c0bc3..6fccb6c9d5a8ca08159cb4b002ac0e7438f45de0 100644 (file)
@@ -51,7 +51,7 @@ import eu.etaxonomy.cdm.model.common.VersionableEntity;
 @XmlRootElement(name = "InstitutionalMembership")
 @Entity
 @Audited
-public class InstitutionalMembership extends VersionableEntity {
+public class InstitutionalMembership extends VersionableEntity implements Cloneable{
        private static final long serialVersionUID = -800814712134999042L;
        public static final Logger logger = Logger.getLogger(InstitutionalMembership.class);
        
@@ -205,4 +205,26 @@ public class InstitutionalMembership extends VersionableEntity {
        public void setRole(String role){
                this.role = role;
        }
+       
+//*********************** CLONE ********************************************************/
+       
+       /** 
+        * Clones <i>this</i> InstitutionalMembership. This is a shortcut that enables to create
+        * a new instance that differs only slightly from <i>this</i> InstitutionalMembership.
+        *  
+        * @see eu.etaxonomy.cdm.model.common.VersionableEntity
+        * @see java.lang.Object#clone()
+        */
+       @Override
+       public Object clone() {
+               try{
+                       InstitutionalMembership result = (InstitutionalMembership) super.clone();
+                       //no changes to department, institute, period, person, role
+                       return result;
+               }catch (CloneNotSupportedException e){
+                       logger.warn("Object does not implement cloneable");
+                       e.printStackTrace();
+                       return null;
+               }
+       }
 }
\ No newline at end of file