You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jspwiki.apache.org by ju...@apache.org on 2019/08/08 22:30:51 UTC
[jspwiki] 02/07: refactor to use try with resources;
close( IndexWriter ) method needed no more, so deleted it
This is an automated email from the ASF dual-hosted git repository.
juanpablo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jspwiki.git
commit c2ea343165a47c0aa22fef5f1c8a4056a5349c76
Author: juanpablo <ju...@apache.org>
AuthorDate: Tue Aug 6 00:18:10 2019 +0200
refactor to use try with resources; close( IndexWriter ) method needed no more, so deleted it
---
.../apache/wiki/search/LuceneSearchProvider.java | 93 ++++++----------------
1 file changed, 26 insertions(+), 67 deletions(-)
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/search/LuceneSearchProvider.java b/jspwiki-main/src/main/java/org/apache/wiki/search/LuceneSearchProvider.java
index cf21322..d8ed170 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/search/LuceneSearchProvider.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/search/LuceneSearchProvider.java
@@ -18,21 +18,6 @@
*/
package org.apache.wiki.search;
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.StringReader;
-import java.io.StringWriter;
-import java.lang.reflect.Constructor;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Date;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Properties;
-
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
import org.apache.lucene.analysis.Analyzer;
@@ -82,6 +67,21 @@ import org.apache.wiki.util.ClassUtil;
import org.apache.wiki.util.FileUtil;
import org.apache.wiki.util.TextUtil;
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.StringReader;
+import java.io.StringWriter;
+import java.lang.reflect.Constructor;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Date;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Properties;
+
/**
* Interface for the search providers that handle searching the Wiki
@@ -331,35 +331,20 @@ public class LuceneSearchProvider implements SearchProvider {
*/
protected synchronized void updateLuceneIndex( WikiPage page, String text )
{
- IndexWriter writer = null;
-
log.debug("Updating Lucene index for page '" + page.getName() + "'...");
+ pageRemoved( page );
- Directory luceneDir = null;
- try
- {
- pageRemoved( page );
-
- // Now add back the new version.
- luceneDir = new SimpleFSDirectory( new File( m_luceneDirectory ).toPath() );
- writer = getIndexWriter( luceneDir );
-
+ // Now add back the new version.
+ try( Directory luceneDir = new SimpleFSDirectory( new File( m_luceneDirectory ).toPath() );
+ IndexWriter writer = getIndexWriter( luceneDir ); ) {
luceneIndexPage( page, text, writer );
- }
- catch ( IOException e )
- {
+ } catch ( IOException e ) {
log.error("Unable to update page '" + page.getName() + "' from Lucene index", e);
// reindexPage( page );
- }
- catch( Exception e )
- {
+ } catch( Exception e ) {
log.error("Unexpected Lucene exception - please check configuration!",e);
// reindexPage( page );
}
- finally
- {
- close( writer );
- }
log.debug("Done updating Lucene index for page '" + page.getName() + "'.");
}
@@ -456,53 +441,27 @@ public class LuceneSearchProvider implements SearchProvider {
* {@inheritDoc}
*/
@Override
- public void pageRemoved( WikiPage page )
- {
- IndexWriter writer = null;
- try
- {
- Directory luceneDir = new SimpleFSDirectory( new File( m_luceneDirectory ).toPath() );
- writer = getIndexWriter( luceneDir );
+ public void pageRemoved( WikiPage page ) {
+ try( Directory luceneDir = new SimpleFSDirectory( new File( m_luceneDirectory ).toPath() );
+ IndexWriter writer = getIndexWriter( luceneDir ); ) {
Query query = new TermQuery( new Term( LUCENE_ID, page.getName() ) );
writer.deleteDocuments( query );
- }
- catch ( Exception e )
- {
+ } catch ( Exception e ) {
log.error("Unable to remove page '" + page.getName() + "' from Lucene index", e);
}
- finally
- {
- close( writer );
- }
}
IndexWriter getIndexWriter( Directory luceneDir ) throws CorruptIndexException,
LockObtainFailedException, IOException, ProviderException
{
- IndexWriter writer = null;
IndexWriterConfig writerConfig = new IndexWriterConfig( getLuceneAnalyzer() );
writerConfig.setOpenMode( OpenMode.CREATE_OR_APPEND );
- writer = new IndexWriter( luceneDir, writerConfig );
+ IndexWriter writer = new IndexWriter( luceneDir, writerConfig );
// writer.setInfoStream( System.out );
return writer;
}
- void close( IndexWriter writer )
- {
- try
- {
- if( writer != null )
- {
- writer.close();
- }
- }
- catch( IOException e )
- {
- log.error( e );
- }
- }
-
/**
* Adds a page-text pair to the lucene update queue. Safe to call always
*