Author: snoopdave
Date: Tue Aug  7 20:34:30 2007
New Revision: 563733

URL: http://svn.apache.org/viewvc?view=rev&rev=563733
Log:
Fixes http://opensource.atlassian.com/projects/roller/browse/ROL-1499

Ensure that entry is removed from search index when entry is removed

Modified:
    
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/ui/struts2/editor/EntryRemove.java

Modified: 
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/ui/struts2/editor/EntryRemove.java
URL: 
http://svn.apache.org/viewvc/roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/ui/struts2/editor/EntryRemove.java?view=diff&rev=563733&r1=563732&r2=563733
==============================================================================
--- 
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/ui/struts2/editor/EntryRemove.java
 (original)
+++ 
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/ui/struts2/editor/EntryRemove.java
 Tue Aug  7 20:34:30 2007
@@ -83,14 +83,17 @@
                 log.warn("Trouble triggering entry indexing", ex);
             }
             
+            // remove from search index
+            removeEntryIndex(entry);
+            
+            // flush caches
+            CacheManager.invalidate(entry);
+            
             // remove entry itself
             WeblogManager wmgr = 
WebloggerFactory.getWeblogger().getWeblogManager();
             wmgr.removeWeblogEntry(entry);
             WebloggerFactory.getWeblogger().flush();
             
-            // flush caches
-            CacheManager.invalidate(entry);
-            
             // note to user
             addMessage("weblogEdit.entryRemoved");
             
@@ -107,7 +110,24 @@
         
         return INPUT;
     }
-
+    
+    
+    /**
+     * Trigger reindexing of modified entry.
+     */
+    protected void removeEntryIndex(WeblogEntry entry) {
+        IndexManager manager = 
WebloggerFactory.getWeblogger().getIndexManager();
+        
+        // if published, index the entry
+        if (entry.isPublished()) {
+            try {
+                manager.removeEntryIndexOperation(entry);
+            } catch (WebloggerException ex) {
+                log.warn("Trouble triggering entry indexing", ex);
+            }
+        }
+    }
+    
     
     public String getRemoveId() {
         return removeId;


Reply via email to