Revision: 3312
Author: [email protected]
Date: Thu Feb 18 13:18:27 2010
Log: Corrected the removeChildImpl methods of the profiling classes to pass new persistence tests in the library.
http://code.google.com/p/power-architect/source/detail?r=3312

Modified:
 /trunk/src/ca/sqlpower/architect/profile/ColumnProfileResult.java
 /trunk/src/ca/sqlpower/architect/profile/ProfileManagerImpl.java
 /trunk/src/ca/sqlpower/architect/profile/TableProfileResult.java

=======================================
--- /trunk/src/ca/sqlpower/architect/profile/ColumnProfileResult.java Wed Feb 17 14:19:51 2010 +++ /trunk/src/ca/sqlpower/architect/profile/ColumnProfileResult.java Thu Feb 18 13:18:27 2010
@@ -229,6 +229,13 @@

     @Override
     protected boolean removeChildImpl(SPObject child) {
+        if (child instanceof ColumnValueCount) {
+            int index = topTen.indexOf(child);
+            if (topTen.remove(child)) {
+                fireChildRemoved(ColumnValueCount.class, child, index);
+                return true;
+            }
+        }
         return false;
     }

=======================================
--- /trunk/src/ca/sqlpower/architect/profile/ProfileManagerImpl.java Wed Feb 17 15:05:17 2010 +++ /trunk/src/ca/sqlpower/architect/profile/ProfileManagerImpl.java Thu Feb 18 13:18:27 2010
@@ -312,8 +312,10 @@

     /* docs inherited from interface */
     public boolean removeProfile(TableProfileResult victim) {
+        int index = results.indexOf(victim);
         boolean removed = results.remove(victim);
         if (removed) {
+            fireChildRemoved(TableProfileResult.class, victim, index);
             fireProfilesRemoved(Collections.singletonList(victim));
         }
         SQLTable table = victim.getProfiledObject();
=======================================
--- /trunk/src/ca/sqlpower/architect/profile/TableProfileResult.java Thu Feb 18 07:51:21 2010 +++ /trunk/src/ca/sqlpower/architect/profile/TableProfileResult.java Thu Feb 18 13:18:27 2010
@@ -251,6 +251,12 @@

     @Override
     protected boolean removeChildImpl(SPObject child) {
+        if (child instanceof ColumnProfileResult) {
+            int index = columnProfileResults.indexOf(child);
+            if (columnProfileResults.remove(child)) {
+                fireChildRemoved(ColumnProfileResult.class, child, index);
+            }
+        }
         return false;
     }

Reply via email to