CdmTransientEntityCacher : overriding cache field only in the case of initialised...
[taxeditor.git] / eu.etaxonomy.taxeditor.cdmlib / src / main / java / eu / etaxonomy / taxeditor / session / CdmEntitySession.java
index 2cb27c83c881db7512c887bae47b47079ce1bccb..a8b968e845090daede6909fb9cea3526c64eb731 100644 (file)
@@ -78,16 +78,27 @@ public class CdmEntitySession implements ICdmEntitySession  {
     }
 
     @Override
-    public void update(CdmBase cdmBase, Set<CdmBase> affectedObjects) {
+    public <T extends ICdmBase> void update(T cdmBase, Set<CdmBase> affectedObjects) {
         load(cdmBase);
         addEvent(cdmBase, affectedObjects, EventType.UPDATE);
     }
 
     @Override
-    public void delete(ICdmBase cdmBase, Set<CdmBase> affectedObjects) {
+    public <T extends ICdmBase> void delete(T cdmBase, Set<CdmBase> affectedObjects) {
+        for(CdmBase cb : affectedObjects) {
+            load(cb);
+        }
         addEvent(cdmBase, affectedObjects, EventType.DELETE);
     }
 
+    @Override
+    public <T extends ICdmBase> void delete(Set<T> cdmBases, Set<CdmBase> affectedObjects) {
+        for(CdmBase cb : affectedObjects) {
+            load(cb);
+        }
+        addEvent(cdmBases, affectedObjects, EventType.DELETE);
+    }
+
 
 
     /* (non-Javadoc)