You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by bv...@apache.org on 2013/10/01 01:31:01 UTC

git commit: CAMEL-5922: Upgraded to Lucene 4.4.

Updated Branches:
  refs/heads/master 507045961 -> 321ef6683


CAMEL-5922: Upgraded to Lucene 4.4.

Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/321ef668
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/321ef668
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/321ef668

Branch: refs/heads/master
Commit: 321ef66832bcefd9754aee5c3487e86ea34fc649
Parents: 5070459
Author: Babak Vahdat <bv...@apache.org>
Authored: Tue Oct 1 01:30:52 2013 +0200
Committer: Babak Vahdat <bv...@apache.org>
Committed: Tue Oct 1 01:30:52 2013 +0200

----------------------------------------------------------------------
 .../component/lucene/LuceneConfiguration.java   |  2 +-
 .../camel/component/lucene/LuceneIndexer.java   | 25 ++++++++++++++------
 .../camel/component/lucene/LuceneSearcher.java  |  8 ++++---
 .../lucene/LuceneIndexAndQueryProducerTest.java |  6 ++---
 .../lucene/LuceneQueryProcessorTest.java        |  4 ++--
 5 files changed, 29 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/321ef668/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneConfiguration.java b/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneConfiguration.java
index e7c5443..5a1a660 100644
--- a/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneConfiguration.java
+++ b/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneConfiguration.java
@@ -35,7 +35,7 @@ public class LuceneConfiguration {
     private File indexDirectory;
     private Analyzer analyzer;
     private int maxHits;
-    private Version luceneVersion = Version.LUCENE_36; 
+    private Version luceneVersion = Version.LUCENE_44; 
 
     public LuceneConfiguration() {
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/321ef668/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneIndexer.java
----------------------------------------------------------------------
diff --git a/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneIndexer.java b/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneIndexer.java
index 3e01108..7e0fade 100644
--- a/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneIndexer.java
+++ b/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneIndexer.java
@@ -26,6 +26,7 @@ import org.apache.camel.converter.IOConverter;
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.FieldType;
 import org.apache.lucene.index.IndexWriter;
 import org.apache.lucene.index.IndexWriterConfig;
 import org.apache.lucene.index.IndexWriterConfig.OpenMode;
@@ -37,6 +38,8 @@ import org.slf4j.LoggerFactory;
 public class LuceneIndexer {
     private static final Logger LOG = LoggerFactory.getLogger(LuceneIndexer.class);
     private File sourceDirectory;
+    private FieldType fieldTypeAnalyzed;
+    private FieldType fieldTypeUnanalyzed;
     private Analyzer analyzer;
     private NIOFSDirectory niofsDirectory;
     private IndexWriter indexWriter;
@@ -52,6 +55,18 @@ public class LuceneIndexer {
             this.setNiofsDirectory(new NIOFSDirectory(new File("./indexDirectory")));
         }
         
+        fieldTypeAnalyzed = new FieldType();
+        fieldTypeAnalyzed.setIndexed(true);
+        fieldTypeAnalyzed.setStored(true);
+        fieldTypeAnalyzed.setTokenized(true);
+        fieldTypeAnalyzed.freeze();
+
+        fieldTypeUnanalyzed = new FieldType();
+        fieldTypeUnanalyzed.setIndexed(true);
+        fieldTypeUnanalyzed.setStored(true);
+        fieldTypeUnanalyzed.setTokenized(false);
+        fieldTypeUnanalyzed.freeze();
+
         this.setAnalyzer(analyzer);
         
         if ((sourceDirectory != null) && (!sourceDirectoryIndexed)) {
@@ -68,7 +83,7 @@ public class LuceneIndexer {
         add("exchangeId", exchange.getExchangeId(), true);
         for (Entry<String, Object> entry : headers.entrySet()) {
             String field = entry.getKey();
-            String value = exchange.getContext().getTypeConverter().convertTo(String.class, entry.getValue());
+            String value = exchange.getContext().getTypeConverter().mandatoryConvertTo(String.class, entry.getValue());
             add(field, value, true);
         }
 
@@ -107,11 +122,7 @@ public class LuceneIndexer {
         }
 
         Document doc = new Document();
-        if (!analyzed) {
-            doc.add(new Field(field, value, Field.Store.YES, Field.Index.NOT_ANALYZED));
-        } else {
-            doc.add(new Field(field, value, Field.Store.YES, Field.Index.ANALYZED));
-        }
+        doc.add(new Field(field, value, analyzed ? fieldTypeAnalyzed : fieldTypeUnanalyzed));
         indexWriter.addDocument(doc);
     }
 
@@ -144,7 +155,7 @@ public class LuceneIndexer {
     private void openIndexWriter() throws IOException {
         IndexWriterConfig indexWriterConfig;
         // use create or append so we can reuse existing index if already exists
-        indexWriterConfig = new IndexWriterConfig(Version.LUCENE_36, getAnalyzer()).setOpenMode(OpenMode.CREATE_OR_APPEND);
+        indexWriterConfig = new IndexWriterConfig(Version.LUCENE_44, getAnalyzer()).setOpenMode(OpenMode.CREATE_OR_APPEND);
         indexWriter = new IndexWriter(niofsDirectory, indexWriterConfig);
     }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/321ef668/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneSearcher.java
----------------------------------------------------------------------
diff --git a/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneSearcher.java b/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneSearcher.java
index bd3026f..b4f2884 100644
--- a/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneSearcher.java
+++ b/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneSearcher.java
@@ -23,6 +23,7 @@ import org.apache.camel.processor.lucene.support.Hit;
 import org.apache.camel.processor.lucene.support.Hits;
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Document;
+import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.queryparser.classic.ParseException;
 import org.apache.lucene.queryparser.classic.QueryParser;
@@ -44,9 +45,9 @@ public class LuceneSearcher {
 
     public void open(File indexDirectory, Analyzer analyzer) throws IOException {
         if (indexDirectory != null) {
-            indexReader = IndexReader.open(new NIOFSDirectory(indexDirectory));
+            indexReader = DirectoryReader.open(new NIOFSDirectory(indexDirectory));
         } else {
-            indexReader = IndexReader.open(new NIOFSDirectory(new File("./indexDirectory")));
+            indexReader = DirectoryReader.open(new NIOFSDirectory(new File("./indexDirectory")));
         }
         indexSearcher = new IndexSearcher(indexReader);
         this.analyzer = analyzer;
@@ -54,10 +55,11 @@ public class LuceneSearcher {
 
     public void close() throws IOException {
         indexReader.close();        
+        analyzer.close();
     }
     
     public Hits search(String searchPhrase, int maxNumberOfHits) throws Exception {
-        return search(searchPhrase, maxNumberOfHits, Version.LUCENE_36);
+        return search(searchPhrase, maxNumberOfHits, Version.LUCENE_44);
     }
 
     public Hits search(String searchPhrase, int maxNumberOfHits, Version luenceVersion) throws Exception {

http://git-wip-us.apache.org/repos/asf/camel/blob/321ef668/components/camel-lucene/src/test/java/org/apache/camel/component/lucene/LuceneIndexAndQueryProducerTest.java
----------------------------------------------------------------------
diff --git a/components/camel-lucene/src/test/java/org/apache/camel/component/lucene/LuceneIndexAndQueryProducerTest.java b/components/camel-lucene/src/test/java/org/apache/camel/component/lucene/LuceneIndexAndQueryProducerTest.java
index 929f324..7e64e33 100644
--- a/components/camel-lucene/src/test/java/org/apache/camel/component/lucene/LuceneIndexAndQueryProducerTest.java
+++ b/components/camel-lucene/src/test/java/org/apache/camel/component/lucene/LuceneIndexAndQueryProducerTest.java
@@ -53,11 +53,11 @@ public class LuceneIndexAndQueryProducerTest extends CamelTestSupport {
         JndiRegistry registry = new JndiRegistry(createJndiContext());
         registry.bind("std", new File("target/stdindexDir"));
         registry.bind("load_dir", new File("src/test/resources/sources"));
-        registry.bind("stdAnalyzer", new StandardAnalyzer(Version.LUCENE_36));
+        registry.bind("stdAnalyzer", new StandardAnalyzer(Version.LUCENE_44));
         registry.bind("simple", new File("target/simpleindexDir"));
-        registry.bind("simpleAnalyzer", new SimpleAnalyzer(Version.LUCENE_36));
+        registry.bind("simpleAnalyzer", new SimpleAnalyzer(Version.LUCENE_44));
         registry.bind("whitespace", new File("target/whitespaceindexDir"));
-        registry.bind("whitespaceAnalyzer", new WhitespaceAnalyzer(Version.LUCENE_36));
+        registry.bind("whitespaceAnalyzer", new WhitespaceAnalyzer(Version.LUCENE_44));
         return registry;
     }
     

http://git-wip-us.apache.org/repos/asf/camel/blob/321ef668/components/camel-lucene/src/test/java/org/apache/camel/processor/lucene/LuceneQueryProcessorTest.java
----------------------------------------------------------------------
diff --git a/components/camel-lucene/src/test/java/org/apache/camel/processor/lucene/LuceneQueryProcessorTest.java b/components/camel-lucene/src/test/java/org/apache/camel/processor/lucene/LuceneQueryProcessorTest.java
index 78b8fe6..d6433e2 100644
--- a/components/camel-lucene/src/test/java/org/apache/camel/processor/lucene/LuceneQueryProcessorTest.java
+++ b/components/camel-lucene/src/test/java/org/apache/camel/processor/lucene/LuceneQueryProcessorTest.java
@@ -53,7 +53,7 @@ public class LuceneQueryProcessorTest extends CamelTestSupport {
     
     @Test
     public void testPhraseSearcher() throws Exception {
-        final StandardAnalyzer analyzer = new StandardAnalyzer(Version.LUCENE_36);
+        final StandardAnalyzer analyzer = new StandardAnalyzer(Version.LUCENE_44);
         MockEndpoint mockSearchEndpoint = getMockEndpoint("mock:searchResult");
         
         context.stop();
@@ -97,7 +97,7 @@ public class LuceneQueryProcessorTest extends CamelTestSupport {
     
     @Test
     public void testWildcardSearcher() throws Exception {
-        final WhitespaceAnalyzer analyzer = new WhitespaceAnalyzer(Version.LUCENE_36);
+        final WhitespaceAnalyzer analyzer = new WhitespaceAnalyzer(Version.LUCENE_44);
         MockEndpoint mockSearchEndpoint = getMockEndpoint("mock:searchResult");
         
         context.stop();