Author: ghuber
Date: Mon Apr  8 16:10:34 2013
New Revision: 1465673

URL: http://svn.apache.org/r1465673
Log:
Upgrade lucene to 4.2.1.

Modified:
    roller/trunk/pom.xml
    roller/trunk/weblogger-business/pom.xml
    
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/FieldConstants.java
    
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/IndexManagerImpl.java
    
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/IndexUtil.java
    
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/operations/IndexOperation.java
    
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/operations/RebuildWebsiteIndexOperation.java
    
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/operations/SearchOperation.java

Modified: roller/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/roller/trunk/pom.xml?rev=1465673&r1=1465672&r2=1465673&view=diff
==============================================================================
--- roller/trunk/pom.xml (original)
+++ roller/trunk/pom.xml Mon Apr  8 16:10:34 2013
@@ -193,7 +193,19 @@
             <dependency>
                 <groupId>org.apache.lucene</groupId>
                 <artifactId>lucene-core</artifactId>
-                <version>3.6.0</version>
+                <version>4.2.1</version>
+            </dependency>
+            
+            <dependency>
+                <groupId>org.apache.lucene</groupId>
+                <artifactId>lucene-queryparser</artifactId>
+                <version>4.2.1</version>
+            </dependency>
+            
+            <dependency>
+                <groupId>org.apache.lucene</groupId>
+                <artifactId>lucene-analyzers-common</artifactId>
+                <version>4.2.1</version>
             </dependency>
 
             <dependency>

Modified: roller/trunk/weblogger-business/pom.xml
URL: 
http://svn.apache.org/viewvc/roller/trunk/weblogger-business/pom.xml?rev=1465673&r1=1465672&r2=1465673&view=diff
==============================================================================
--- roller/trunk/weblogger-business/pom.xml (original)
+++ roller/trunk/weblogger-business/pom.xml Mon Apr  8 16:10:34 2013
@@ -135,6 +135,16 @@
         </dependency>
 
         <dependency>
+            <groupId>org.apache.lucene</groupId>
+            <artifactId>lucene-queryparser</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.lucene</groupId>
+            <artifactId>lucene-analyzers-common</artifactId>
+        </dependency>
+
+        <dependency>
             <groupId>org.apache.velocity</groupId>
             <artifactId>velocity</artifactId>
         </dependency>

Modified: 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/FieldConstants.java
URL: 
http://svn.apache.org/viewvc/roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/FieldConstants.java?rev=1465673&r1=1465672&r2=1465673&view=diff
==============================================================================
--- 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/FieldConstants.java
 (original)
+++ 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/FieldConstants.java
 Mon Apr  8 16:10:34 2013
@@ -28,7 +28,7 @@ import org.apache.lucene.util.Version;
 public final class FieldConstants {
 
     // Set what version we are on
-    public static final Version LUCENE_VERSION = Version.LUCENE_36;
+    public static final Version LUCENE_VERSION = Version.LUCENE_42;
 
     public static final String ANCHOR = "anchor";
     public static final String UPDATED = "updated";

Modified: 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/IndexManagerImpl.java
URL: 
http://svn.apache.org/viewvc/roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/IndexManagerImpl.java?rev=1465673&r1=1465672&r2=1465673&view=diff
==============================================================================
--- 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/IndexManagerImpl.java
 (original)
+++ 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/IndexManagerImpl.java
 Mon Apr  8 16:10:34 2013
@@ -20,22 +20,25 @@ package org.apache.roller.weblogger.busi
 
 import java.io.File;
 import java.io.IOException;
-
 import java.util.concurrent.locks.ReadWriteLock;
 import java.util.concurrent.locks.ReentrantReadWriteLock;
+
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.lucene.analysis.Analyzer;
-import org.apache.lucene.analysis.LimitTokenCountAnalyzer;
+import org.apache.lucene.analysis.miscellaneous.LimitTokenCountAnalyzer;
 import org.apache.lucene.analysis.standard.StandardAnalyzer;
+import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
 import org.apache.lucene.index.IndexWriterConfig;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.store.FSDirectory;
+import org.apache.lucene.store.IOContext;
 import org.apache.lucene.store.RAMDirectory;
 import org.apache.roller.weblogger.WebloggerException;
-import org.apache.roller.weblogger.business.*;
+import org.apache.roller.weblogger.business.InitializationException;
+import org.apache.roller.weblogger.business.Weblogger;
 import 
org.apache.roller.weblogger.business.search.operations.AddEntryOperation;
 import org.apache.roller.weblogger.business.search.operations.IndexOperation;
 import 
org.apache.roller.weblogger.business.search.operations.ReIndexEntryOperation;
@@ -43,9 +46,9 @@ import org.apache.roller.weblogger.busin
 import 
org.apache.roller.weblogger.business.search.operations.RemoveEntryOperation;
 import 
org.apache.roller.weblogger.business.search.operations.RemoveWebsiteIndexOperation;
 import 
org.apache.roller.weblogger.business.search.operations.WriteToIndexOperation;
-import org.apache.roller.weblogger.pojos.WeblogEntry;
-import org.apache.roller.weblogger.pojos.Weblog;
 import org.apache.roller.weblogger.config.WebloggerConfig;
+import org.apache.roller.weblogger.pojos.Weblog;
+import org.apache.roller.weblogger.pojos.WeblogEntry;
 
 /**
  * Lucene implementation of IndexManager. This is the central entry point into
@@ -151,7 +154,8 @@ public class IndexManagerImpl implements
                 if (useRAMIndex) {
                     Directory filesystem = getFSDirectory(false);
                     try {
-                        fRAMindex = new RAMDirectory(filesystem);
+                        fRAMindex = new RAMDirectory(filesystem,
+                                new IOContext());
                     } catch (IOException e) {
                         mLogger.error("Error creating in-memory index", e);
                     }
@@ -272,7 +276,8 @@ public class IndexManagerImpl implements
     public synchronized IndexReader getSharedIndexReader() {
         if (reader == null) {
             try {
-                reader = IndexReader.open(getIndexDirectory());
+                //reader = IndexReader.open(getIndexDirectory());
+                reader = DirectoryReader.open(getIndexDirectory());
             } catch (IOException e) {
             }
         }
@@ -296,8 +301,9 @@ public class IndexManagerImpl implements
 
     private boolean indexExists() {
         try {
-            return IndexReader.indexExists(getIndexDirectory());
-        } catch (IOException e) {
+            //return IndexReader.indexExists(getIndexDirectory());
+            return DirectoryReader.indexExists(getIndexDirectory());
+        } catch (Exception e) {
             mLogger.error("Problem accessing index directory", e);
         }
         return false;

Modified: 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/IndexUtil.java
URL: 
http://svn.apache.org/viewvc/roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/IndexUtil.java?rev=1465673&r1=1465672&r2=1465673&view=diff
==============================================================================
--- 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/IndexUtil.java
 (original)
+++ 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/IndexUtil.java
 Mon Apr  8 16:10:34 2013
@@ -21,6 +21,8 @@ package org.apache.roller.weblogger.busi
 import java.io.IOException;
 import java.io.StringReader;
 
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
@@ -33,6 +35,8 @@ import org.apache.lucene.index.Term;
  */
 public class IndexUtil {
 
+    private static Log log = LogFactory.getLog(IndexUtil.class);
+
     /**
      * Create a lucene term from the first token of the input string.
      * 
@@ -48,18 +52,17 @@ public class IndexUtil {
         if (input == null || field == null)
             return null;
 
-        Analyzer analyer = IndexManagerImpl.getAnalyzer();
-
-        TokenStream tokens = analyer
-                .tokenStream(field, new StringReader(input));
-
-        CharTermAttribute termAtt = (CharTermAttribute) tokens
-                .addAttribute(CharTermAttribute.class);
-
+        Analyzer analyser = IndexManagerImpl.getAnalyzer();
         Term term = null;
 
         try {
 
+            TokenStream tokens = analyser.tokenStream(field, new StringReader(
+                    input));
+
+            CharTermAttribute termAtt = (CharTermAttribute) tokens
+                    .addAttribute(CharTermAttribute.class);
+
             tokens.reset();
 
             if (tokens.incrementToken()) {
@@ -68,7 +71,7 @@ public class IndexUtil {
             }
 
         } catch (IOException e) {
-            // ignored
+            log.error("ERROR creating term", e);
         }
 
         return term;

Modified: 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/operations/IndexOperation.java
URL: 
http://svn.apache.org/viewvc/roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/operations/IndexOperation.java?rev=1465673&r1=1465672&r2=1465673&view=diff
==============================================================================
--- 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/operations/IndexOperation.java
 (original)
+++ 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/operations/IndexOperation.java
 Mon Apr  8 16:10:34 2013
@@ -24,9 +24,12 @@ import java.util.List;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.apache.lucene.analysis.LimitTokenCountAnalyzer;
+import org.apache.lucene.analysis.miscellaneous.LimitTokenCountAnalyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.StoredField;
+import org.apache.lucene.document.StringField;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.IndexWriter;
 import org.apache.lucene.index.IndexWriterConfig;
 import org.apache.roller.weblogger.business.search.FieldConstants;
@@ -105,69 +108,108 @@ public abstract class IndexOperation imp
 
         Document doc = new Document();
 
+        // TODO Originals 3.x kept for reference.
+
         // keyword
-        doc.add(new Field(FieldConstants.ID, data.getId(), Field.Store.YES,
-                Field.Index.NOT_ANALYZED));
+        // doc.add(new Field(FieldConstants.ID, data.getId(), Field.Store.YES,
+        // Field.Index.NOT_ANALYZED));
+        doc.add(new StringField(FieldConstants.ID, data.getId(),
+                Field.Store.YES));
 
         // keyword
-        doc.add(new Field(FieldConstants.WEBSITE_HANDLE, data.getWebsite()
-                .getHandle(), Field.Store.YES, Field.Index.NOT_ANALYZED));
+        // doc.add(new Field(FieldConstants.WEBSITE_HANDLE, data.getWebsite()
+        // .getHandle(), Field.Store.YES, Field.Index.NOT_ANALYZED));
+        doc.add(new StringField(FieldConstants.WEBSITE_HANDLE, data
+                .getWebsite().getHandle(), Field.Store.YES));
 
         // unindexed
-        doc.add(new Field(FieldConstants.ANCHOR, data.getAnchor(),
-                Field.Store.YES, Field.Index.NO));
+        // doc.add(new Field(FieldConstants.ANCHOR, data.getAnchor(),
+        // Field.Store.YES, Field.Index.NO));
+        doc.add(new StoredField(FieldConstants.ANCHOR, data.getAnchor()));
 
         // text
-        doc.add(new Field(FieldConstants.USERNAME, data.getCreator()
-                .getUserName(), Field.Store.YES, Field.Index.ANALYZED));
+        // doc.add(new Field(FieldConstants.USERNAME, data.getCreator()
+        // .getUserName(), Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new TextField(FieldConstants.USERNAME, data.getCreator()
+                .getUserName(), Field.Store.YES));
 
         // text
-        doc.add(new Field(FieldConstants.TITLE, data.getTitle(),
-                Field.Store.YES, Field.Index.ANALYZED));
+        // doc.add(new Field(FieldConstants.TITLE, data.getTitle(),
+        // Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new TextField(FieldConstants.TITLE, data.getTitle(),
+                Field.Store.YES));
 
         // index the entry text, but don't store it - moved to end of block
         // unstored
-        doc.add(new Field(FieldConstants.CONTENT, data.getText(),
-                Field.Store.NO, Field.Index.ANALYZED));
+        // doc.add(new Field(FieldConstants.CONTENT, data.getText(),
+        // Field.Store.NO, Field.Index.ANALYZED));
+        doc.add(new TextField(FieldConstants.CONTENT, data.getText(),
+                Field.Store.NO));
 
         // store an abbreviated version of the entry text, but don't index
         // unindexed
-        doc.add(new Field(FieldConstants.CONTENT_STORED, Utilities
+        // doc.add(new Field(FieldConstants.CONTENT_STORED, Utilities
+        // .truncateNicely(Utilities.removeHTML(data.getText()), 240, 260,
+        // "..."), Field.Store.YES, Field.Index.NO));
+        doc.add(new StoredField(FieldConstants.CONTENT_STORED, Utilities
                 .truncateNicely(Utilities.removeHTML(data.getText()), 240, 260,
-                        "..."), Field.Store.YES, Field.Index.NO));
+                        "...")));
 
         // keyword
-        doc.add(new Field(FieldConstants.UPDATED, data.getUpdateTime()
-                .toString(), Field.Store.YES, Field.Index.NOT_ANALYZED));
+        // doc.add(new Field(FieldConstants.UPDATED, data.getUpdateTime()
+        // .toString(), Field.Store.YES, Field.Index.NOT_ANALYZED));
+        doc.add(new StringField(FieldConstants.UPDATED, data.getUpdateTime()
+                .toString(), Field.Store.YES));
 
         // keyword
-        doc.add(new Field(FieldConstants.PUBLISHED, data.getPubTime()
-                .toString(), Field.Store.YES, Field.Index.NOT_ANALYZED));
+        // doc.add(new Field(FieldConstants.PUBLISHED, data.getPubTime()
+        // .toString(), Field.Store.YES, Field.Index.NOT_ANALYZED));
+        doc.add(new StringField(FieldConstants.PUBLISHED, data.getPubTime()
+                .toString(), Field.Store.YES));
 
         // index Comments
         // unstored
-        doc.add(new Field(FieldConstants.C_CONTENT, commentContent,
-                Field.Store.NO, Field.Index.ANALYZED));
+        // doc.add(new Field(FieldConstants.C_CONTENT, commentContent,
+        // Field.Store.NO, Field.Index.ANALYZED));
+        doc.add(new StringField(FieldConstants.C_CONTENT, commentContent,
+                Field.Store.NO));
+
         // unstored
-        doc.add(new Field(FieldConstants.C_EMAIL, commentEmail, Field.Store.NO,
-                Field.Index.ANALYZED));
+        // doc.add(new Field(FieldConstants.C_EMAIL, commentEmail,
+        // Field.Store.NO,
+        // Field.Index.ANALYZED));
+        doc.add(new StringField(FieldConstants.C_EMAIL, commentEmail,
+                Field.Store.NO));
+
         // unstored
-        doc.add(new Field(FieldConstants.C_NAME, commentName, Field.Store.NO,
-                Field.Index.ANALYZED));
+        // doc.add(new Field(FieldConstants.C_NAME, commentName, 
Field.Store.NO,
+        // Field.Index.ANALYZED));
+        doc.add(new StringField(FieldConstants.C_NAME, commentName,
+                Field.Store.NO));
 
         // unstored
-        doc.add(new Field(FieldConstants.CONSTANT, FieldConstants.CONSTANT_V,
-                Field.Store.NO, Field.Index.ANALYZED));
+        // doc.add(new Field(FieldConstants.CONSTANT, 
FieldConstants.CONSTANT_V,
+        // Field.Store.NO, Field.Index.ANALYZED));
+        doc.add(new StringField(FieldConstants.CONSTANT,
+                FieldConstants.CONSTANT_V, Field.Store.NO));
 
         // index Category
         WeblogCategory categorydata = data.getCategory();
-        Field category = (categorydata == null)
+        // Field category = (categorydata == null)
         // unstored
-        ? new Field(FieldConstants.CATEGORY, "", Field.Store.NO,
-                Field.Index.ANALYZED)
+        // ? new Field(FieldConstants.CATEGORY, "", Field.Store.NO,
+        // Field.Index.ANALYZED)
         // text
-                : new Field(FieldConstants.CATEGORY, categorydata.getName(),
-                        Field.Store.YES, Field.Index.ANALYZED);
+        // : new Field(FieldConstants.CATEGORY, categorydata.getName(),
+        // Field.Store.YES, Field.Index.ANALYZED);
+
+        Field category = (categorydata == null)
+        // unstored
+        ? new StringField(FieldConstants.CATEGORY, "", Field.Store.NO)
+                // text
+                : new TextField(FieldConstants.CATEGORY,
+                        categorydata.getName(), Field.Store.YES);
+
         doc.add(category);
 
         return doc;

Modified: 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/operations/RebuildWebsiteIndexOperation.java
URL: 
http://svn.apache.org/viewvc/roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/operations/RebuildWebsiteIndexOperation.java?rev=1465673&r1=1465672&r2=1465673&view=diff
==============================================================================
--- 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/operations/RebuildWebsiteIndexOperation.java
 (original)
+++ 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/operations/RebuildWebsiteIndexOperation.java
 Mon Apr  8 16:10:34 2013
@@ -82,7 +82,7 @@ public class RebuildWebsiteIndexOperatio
         // the weblog object passed in as a detached object which is proned to
         // lazy initialization problems, so requery for the object now
         if (this.website != null) {
-            mLogger.debug("Reindexining weblog " + website.getHandle());
+            mLogger.debug("Reindexing weblog " + website.getHandle());
             try {
                 this.website = roller.getWeblogManager().getWeblog(
                         this.website.getId());

Modified: 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/operations/SearchOperation.java
URL: 
http://svn.apache.org/viewvc/roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/operations/SearchOperation.java?rev=1465673&r1=1465672&r2=1465673&view=diff
==============================================================================
--- 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/operations/SearchOperation.java
 (original)
+++ 
roller/trunk/weblogger-business/src/main/java/org/apache/roller/weblogger/business/search/operations/SearchOperation.java
 Mon Apr  8 16:10:34 2013
@@ -24,8 +24,7 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.Term;
-import org.apache.lucene.queryParser.MultiFieldQueryParser;
-import org.apache.lucene.queryParser.ParseException;
+import org.apache.lucene.queryparser.classic.MultiFieldQueryParser;
 import org.apache.lucene.search.BooleanClause;
 import org.apache.lucene.search.BooleanQuery;
 import org.apache.lucene.search.IndexSearcher;
@@ -62,7 +61,7 @@ public class SearchOperation extends Rea
     // BooleanClause.Occur.SHOULD, BooleanClause.Occur.SHOULD };
 
     private static Sort SORTER = new Sort(new SortField(
-            FieldConstants.PUBLISHED, SortField.STRING, true));
+            FieldConstants.PUBLISHED, SortField.Type.STRING, true));
 
     // ~ Instance fields
     // ========================================================
@@ -151,7 +150,7 @@ public class SearchOperation extends Rea
             mLogger.error("Error searching index", e);
             parseError = e.getMessage();
 
-        } catch (ParseException e) {
+        } catch (Exception e) {
             // who cares?
             parseError = e.getMessage();
         }


Reply via email to