diff --git a/src/main/java/com/xpn/xwiki/plugin/lucene/IndexRebuilder.java b/src/main/java/com/xpn/xwiki/plugin/lucene/IndexRebuilder.java index abc19ff..5bb91a9 100644 --- a/src/main/java/com/xpn/xwiki/plugin/lucene/IndexRebuilder.java +++ b/src/main/java/com/xpn/xwiki/plugin/lucene/IndexRebuilder.java @@ -26,6 +26,7 @@ import java.util.List; import org.apache.commons.lang3.StringUtils; +import org.apache.lucene.index.IndexWriter; import org.apache.lucene.index.Term; import org.apache.lucene.search.BooleanClause; import org.apache.lucene.search.BooleanQuery; @@ -145,7 +146,14 @@ public synchronized int startIndex(Collection wikis, String hqlFilter, b if (wikis == null) { this.indexUpdater.cleanIndex(); } else { - // TODO: clean wikis listed in wikis + try { + IndexWriter writer = this.indexUpdater.openWriter(false); + for (String wiki : wikis) { + writer.deleteDocuments(new Term(IndexFields.DOCUMENT_WIKI, wiki)); + } + } catch (IOException ex) { + LOGGER.warn("Failed to clean wiki index: {}", ex.getMessage()); + } } }