You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ni...@apache.org on 2010/04/28 05:36:11 UTC
svn commit: r938766 - in /camel/trunk/components/camel-lucene/src:
main/java/org/apache/camel/component/lucene/
main/java/org/apache/camel/processor/lucene/
test/java/org/apache/camel/component/lucene/
test/java/org/apache/camel/processor/lucene/
Author: ningjiang
Date: Wed Apr 28 03:36:11 2010
New Revision: 938766
URL: http://svn.apache.org/viewvc?rev=938766&view=rev
Log:
CAMEL-2680 Supported to set the lucene version
Modified:
camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneConfiguration.java
camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneQueryProducer.java
camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneSearcher.java
camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/processor/lucene/LuceneQueryProcessor.java
camel/trunk/components/camel-lucene/src/test/java/org/apache/camel/component/lucene/LuceneIndexAndQueryProducerTest.java
camel/trunk/components/camel-lucene/src/test/java/org/apache/camel/processor/lucene/LuceneQueryProcessorTest.java
Modified: camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneConfiguration.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneConfiguration.java?rev=938766&r1=938765&r2=938766&view=diff
==============================================================================
--- camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneConfiguration.java (original)
+++ camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneConfiguration.java Wed Apr 28 03:36:11 2010
@@ -21,13 +21,11 @@ import java.net.URI;
import java.net.URISyntaxException;
import java.util.Map;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
+import org.apache.lucene.util.Version;
public class LuceneConfiguration {
- private static final transient Log LOG = LogFactory.getLog(LuceneConfiguration.class);
private URI uri;
private String protocolType;
private String authority;
@@ -37,6 +35,7 @@ public class LuceneConfiguration {
private File indexDirectory;
private Analyzer analyzer;
private int maxHits;
+ private Version luceneVersion = Version.LUCENE_30;
public LuceneConfiguration() {
}
@@ -67,7 +66,7 @@ public class LuceneConfiguration {
indexDirectory = component.resolveAndRemoveReferenceParameter(
parameters, "indexDir", File.class, new File("file:///./indexDirectory"));
analyzer = component.resolveAndRemoveReferenceParameter(
- parameters, "analyzer", Analyzer.class, new StandardAnalyzer(org.apache.lucene.util.Version.LUCENE_CURRENT));
+ parameters, "analyzer", Analyzer.class, new StandardAnalyzer(luceneVersion));
setMaxHits(component.getAndRemoveParameter(parameters, "maxHits", Integer.class, 10));
}
@@ -163,6 +162,14 @@ public class LuceneConfiguration {
public void setMaxHits(int maxHits) {
this.maxHits = maxHits;
- }
+ }
+
+ public void setLuceneVersion(Version luceneVersion) {
+ this.luceneVersion = luceneVersion;
+ }
+
+ public Version getLuceneVersion() {
+ return luceneVersion;
+ }
}
Modified: camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneQueryProducer.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneQueryProducer.java?rev=938766&r1=938765&r2=938766&view=diff
==============================================================================
--- camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneQueryProducer.java (original)
+++ camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneQueryProducer.java Wed Apr 28 03:36:11 2010
@@ -55,7 +55,7 @@ public class LuceneQueryProducer extends
String phrase = exchange.getIn().getHeader("QUERY", String.class);
if (phrase != null) {
searcher.open(indexDirectory, analyzer);
- hits = searcher.search(phrase, maxNumberOfHits);
+ hits = searcher.search(phrase, maxNumberOfHits, config.getLuceneVersion());
} else {
throw new IllegalArgumentException("SearchPhrase for LucenePhraseQuerySearcher not set. Set the Header value: QUERY");
}
Modified: camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneSearcher.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneSearcher.java?rev=938766&r1=938765&r2=938766&view=diff
==============================================================================
--- camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneSearcher.java (original)
+++ camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneSearcher.java Wed Apr 28 03:36:11 2010
@@ -52,11 +52,15 @@ public class LuceneSearcher {
public void close() throws IOException {
indexSearcher.close();
}
-
+
public Hits search(String searchPhrase, int maxNumberOfHits) throws Exception {
+ return search(searchPhrase, maxNumberOfHits, Version.LUCENE_30);
+ }
+
+ public Hits search(String searchPhrase, int maxNumberOfHits, Version luenceVersion) throws Exception {
Hits searchHits = new Hits();
- int numberOfHits = doSearch(searchPhrase, maxNumberOfHits);
+ int numberOfHits = doSearch(searchPhrase, maxNumberOfHits, luenceVersion);
searchHits.setNumberOfHits(numberOfHits);
for (ScoreDoc hit : hits) {
@@ -71,12 +75,12 @@ public class LuceneSearcher {
return searchHits;
}
- private int doSearch(String searchPhrase, int maxNumberOfHits) throws NullPointerException, ParseException, IOException {
+ private int doSearch(String searchPhrase, int maxNumberOfHits, Version luenceVersion) throws NullPointerException, ParseException, IOException {
if (LOG.isTraceEnabled()) {
LOG.trace("*** Search Phrase: " + searchPhrase + " ***");
}
- QueryParser parser = new QueryParser(Version.LUCENE_CURRENT, "contents", analyzer);
+ QueryParser parser = new QueryParser(luenceVersion, "contents", analyzer);
Query query = parser.parse(searchPhrase);
TopScoreDocCollector collector = TopScoreDocCollector.create(maxNumberOfHits, true);
indexSearcher.search(query, collector);
Modified: camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/processor/lucene/LuceneQueryProcessor.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/processor/lucene/LuceneQueryProcessor.java?rev=938766&r1=938765&r2=938766&view=diff
==============================================================================
--- camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/processor/lucene/LuceneQueryProcessor.java (original)
+++ camel/trunk/components/camel-lucene/src/main/java/org/apache/camel/processor/lucene/LuceneQueryProcessor.java Wed Apr 28 03:36:11 2010
@@ -24,6 +24,7 @@ import org.apache.camel.component.lucene
import org.apache.camel.processor.lucene.support.Hits;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.search.IndexSearcher;
+import org.apache.lucene.util.Version;
public class LuceneQueryProcessor implements Processor {
private File indexDirectory;
@@ -32,6 +33,7 @@ public class LuceneQueryProcessor implem
private LuceneSearcher searcher;
private String searchPhrase;
private int maxNumberOfHits;
+ private Version luceneVersion;
public LuceneQueryProcessor(String indexDirectoryPath, Analyzer analyzer, String defaultSearchPhrase, int maxNumberOfHits) {
this.setAnalyzer(analyzer);
@@ -47,7 +49,7 @@ public class LuceneQueryProcessor implem
if (phrase != null) {
searcher = new LuceneSearcher();
searcher.open(indexDirectory, analyzer);
- hits = searcher.search(phrase, maxNumberOfHits);
+ hits = searcher.search(phrase, maxNumberOfHits, luceneVersion);
} else {
throw new IllegalArgumentException("SearchPhrase for LuceneQueryProcessor not set. Set the Header value: QUERY");
}
@@ -94,5 +96,13 @@ public class LuceneQueryProcessor implem
public void setMaxNumberOfHits(int maxNumberOfHits) {
this.maxNumberOfHits = maxNumberOfHits;
}
+
+ public void setLuceneVersion(Version luceneVersion) {
+ this.luceneVersion = luceneVersion;
+ }
+
+ public Version getLuceneVersion() {
+ return luceneVersion;
+ }
}
Modified: camel/trunk/components/camel-lucene/src/test/java/org/apache/camel/component/lucene/LuceneIndexAndQueryProducerTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-lucene/src/test/java/org/apache/camel/component/lucene/LuceneIndexAndQueryProducerTest.java?rev=938766&r1=938765&r2=938766&view=diff
==============================================================================
--- camel/trunk/components/camel-lucene/src/test/java/org/apache/camel/component/lucene/LuceneIndexAndQueryProducerTest.java (original)
+++ camel/trunk/components/camel-lucene/src/test/java/org/apache/camel/component/lucene/LuceneIndexAndQueryProducerTest.java Wed Apr 28 03:36:11 2010
@@ -52,7 +52,7 @@ public class LuceneIndexAndQueryProducer
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_CURRENT));
+ registry.bind("stdAnalyzer", new StandardAnalyzer(Version.LUCENE_30));
registry.bind("simple", new File("target/simpleindexDir"));
registry.bind("simpleAnalyzer", new SimpleAnalyzer());
registry.bind("whitespace", new File("target/whitespaceindexDir"));
Modified: camel/trunk/components/camel-lucene/src/test/java/org/apache/camel/processor/lucene/LuceneQueryProcessorTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-lucene/src/test/java/org/apache/camel/processor/lucene/LuceneQueryProcessorTest.java?rev=938766&r1=938765&r2=938766&view=diff
==============================================================================
--- camel/trunk/components/camel-lucene/src/test/java/org/apache/camel/processor/lucene/LuceneQueryProcessorTest.java (original)
+++ camel/trunk/components/camel-lucene/src/test/java/org/apache/camel/processor/lucene/LuceneQueryProcessorTest.java Wed Apr 28 03:36:11 2010
@@ -53,7 +53,7 @@ public class LuceneQueryProcessorTest ex
@Test
public void testPhraseSearcher() throws Exception {
- final StandardAnalyzer analyzer = new StandardAnalyzer(Version.LUCENE_CURRENT);
+ final StandardAnalyzer analyzer = new StandardAnalyzer(Version.LUCENE_30);
MockEndpoint mockSearchEndpoint = new MockEndpoint("mock:searchResult");
context.stop();