You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by ag...@apache.org on 2006/04/12 02:20:06 UTC

svn commit: r393339 - /incubator/roller/branches/roller-newbackend/src/org/roller/business/hibernate/HibernateUserManagerImpl.java

Author: agilliland
Date: Tue Apr 11 17:20:02 2006
New Revision: 393339

URL: http://svn.apache.org/viewcvs?rev=393339&view=rev
Log:
make sure pings are deleted when a website is removed.


Modified:
    incubator/roller/branches/roller-newbackend/src/org/roller/business/hibernate/HibernateUserManagerImpl.java

Modified: incubator/roller/branches/roller-newbackend/src/org/roller/business/hibernate/HibernateUserManagerImpl.java
URL: http://svn.apache.org/viewcvs/incubator/roller/branches/roller-newbackend/src/org/roller/business/hibernate/HibernateUserManagerImpl.java?rev=393339&r1=393338&r2=393339&view=diff
==============================================================================
--- incubator/roller/branches/roller-newbackend/src/org/roller/business/hibernate/HibernateUserManagerImpl.java (original)
+++ incubator/roller/branches/roller-newbackend/src/org/roller/business/hibernate/HibernateUserManagerImpl.java Tue Apr 11 17:20:02 2006
@@ -21,24 +21,21 @@
 import org.roller.config.RollerConfig;
 import org.roller.model.AutoPingManager;
 import org.roller.model.BookmarkManager;
-import org.roller.model.PingQueueManager;
 import org.roller.model.PingTargetManager;
-import org.roller.model.Roller;
 import org.roller.model.RollerFactory;
 import org.roller.model.UserManager;
 import org.roller.model.WeblogManager;
+import org.roller.pojos.AutoPingData;
 import org.roller.pojos.BookmarkData;
 import org.roller.pojos.FolderData;
 import org.roller.pojos.WeblogTemplate;
 import org.roller.pojos.PermissionsData;
-import org.roller.pojos.RefererData;
+import org.roller.pojos.PingQueueEntryData;
+import org.roller.pojos.PingTargetData;
 import org.roller.pojos.RoleData;
 import org.roller.pojos.UserData;
 import org.roller.pojos.WeblogCategoryData;
-import org.roller.pojos.WeblogEntryData;
 import org.roller.pojos.WebsiteData;
-import org.roller.util.Utilities;
-
 
 /**
  * Hibernate implementation of the UserManager.
@@ -140,19 +137,28 @@
         BookmarkManager bmgr = RollerFactory.getRoller().getBookmarkManager();
         WeblogManager wmgr = RollerFactory.getRoller().getWeblogManager();
         
-//        // TODO BACKEND: backend refactoring, tidy up ping removals
-//        // Remove the website's ping queue entries
-//        PingQueueManager pingQueueMgr = RollerFactory.getRoller().getPingQueueManager();
-//        pingQueueMgr.removeQueueEntriesByWebsite(website);
-//        
-//        // Remove the website's custom ping targets
-//        PingTargetManager pingTargetMgr = RollerFactory.getRoller().getPingTargetManager();
-//        pingTargetMgr.removeCustomPingTargets(website);
-//        
-//        // Remove the website's auto ping configurations
-//        AutoPingManager autoPingMgr = RollerFactory.getRoller().getAutopingManager();
-//        List autopings = autoPingMgr.getAutoPingsByWebsite(website);
-//        autoPingMgr.removeAutoPings(autopings);
+        // Remove the website's ping queue entries
+        Criteria criteria = session.createCriteria(PingQueueEntryData.class);
+        criteria.add(Expression.eq("website", website));
+        List queueEntries = criteria.list();
+        
+        // Remove the website's auto ping configurations
+        AutoPingManager autoPingMgr = RollerFactory.getRoller().getAutopingManager();
+        List autopings = autoPingMgr.getAutoPingsByWebsite(website);
+        Iterator it = autopings.iterator();
+        while(it.hasNext()) {
+            this.strategy.remove((AutoPingData) it.next());
+        }
+        
+        // Remove the website's custom ping targets
+        PingTargetManager pingTargetMgr = RollerFactory.getRoller().getPingTargetManager();
+        List pingtargets = pingTargetMgr.getCustomPingTargets(website);
+        it = pingtargets.iterator();
+        while(it.hasNext()) {
+            this.strategy.remove((PingTargetData) it.next());
+        }
+        
+        // TODO BACKEND: backend refactoring, tidy up weblog removal
         
 //        // remove entries
 //        Criteria entryQuery = session.createCriteria(WeblogEntryData.class);