Author: bobtarling
Date: 2011-08-06 04:20:23-0700
New Revision: 19631

Modified:
   
trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/ModelEventPumpEUMLImpl.java

Log:
Don't send a second attribute change event on delete

Modified: 
trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/ModelEventPumpEUMLImpl.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/ModelEventPumpEUMLImpl.java?view=diff&pathrev=19631&r1=19630&r2=19631
==============================================================================
--- 
trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/ModelEventPumpEUMLImpl.java
    (original)
+++ 
trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/ModelEventPumpEUMLImpl.java
    2011-08-06 04:20:23-0700
@@ -450,7 +450,7 @@
                             getListeners(
                                     newValue,
                                     propName)));
-                } else {
+                } else { // i.e. eventType == Notification.REMOVE
                     events.add(new EventAndListeners(
                             new AddAssociationEvent(
                                     oldValue,
@@ -460,14 +460,20 @@
                             getListeners(
                                     oldValue,
                                     propName)));
-                    events.add(new EventAndListeners(
-                            new AttributeChangeEvent(
-                                    oldValue,
-                                    propName,
-                                    notifier, null, null),
-                            getListeners(
-                                    oldValue,
-                                    propName)));
+// Bob says - I don't understand the purpose of sending an attribute change
+// event when a delete event has already happened. With this code in place
+// it causes the feedback loop mentioned in
+// http://argouml.tigris.org/issues/show_bug.cgi?id=6270
+// If this code must be re-introduced to solve some other issue then please 
give
+// a full explanation here of what this solves for us.
+//                    events.add(new EventAndListeners(
+//                            new AttributeChangeEvent(
+//                                    oldValue,
+//                                    propName,
+//                                    notifier, null, null),
+//                            getListeners(
+//                                    oldValue,
+//                                    propName)));
                 }
             }
         }

------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2811417

To unsubscribe from this discussion, e-mail: 
[[email protected]].

Reply via email to