Author: hossman
Date: Tue Apr 15 15:19:18 2008
New Revision: 648433
URL: http://svn.apache.org/viewvc?rev=648433&view=rev
Log:
SOLR-521: StopFilterFactory support for enablePositionIncrements
Modified:
lucene/solr/trunk/CHANGES.txt
lucene/solr/trunk/example/solr/conf/schema.xml
lucene/solr/trunk/src/java/org/apache/solr/analysis/StopFilterFactory.java
Modified: lucene/solr/trunk/CHANGES.txt
URL:
http://svn.apache.org/viewvc/lucene/solr/trunk/CHANGES.txt?rev=648433&r1=648432&r2=648433&view=diff
==============================================================================
--- lucene/solr/trunk/CHANGES.txt (original)
+++ lucene/solr/trunk/CHANGES.txt Tue Apr 15 15:19:18 2008
@@ -247,6 +247,9 @@
BinaryResponseParser for utilizing the binary format via SolrJ.
(Noble Paul, yonik)
+45. SOLR-521: StopFilterFactory support for "enablePositionIncrements"
+ (Walter Ferrara via hossman)
+
Changes in runtime behavior
Optimizations
Modified: lucene/solr/trunk/example/solr/conf/schema.xml
URL:
http://svn.apache.org/viewvc/lucene/solr/trunk/example/solr/conf/schema.xml?rev=648433&r1=648432&r2=648433&view=diff
==============================================================================
--- lucene/solr/trunk/example/solr/conf/schema.xml (original)
+++ lucene/solr/trunk/example/solr/conf/schema.xml Tue Apr 15 15:19:18 2008
@@ -164,7 +164,15 @@
<!-- in this example, we will only use synonyms at query time
<filter class="solr.SynonymFilterFactory"
synonyms="index_synonyms.txt" ignoreCase="true" expand="false"/>
-->
- <filter class="solr.StopFilterFactory" ignoreCase="true"
words="stopwords.txt"/>
+ <!-- Case insensitive stop word removal.
+ enablePositionIncrements=true ensures that a 'gap' is left to
+ allow for accurate phrase queries.
+ -->
+ <filter class="solr.StopFilterFactory"
+ ignoreCase="true"
+ words="stopwords.txt"
+ enablePositionIncrements="true"
+ />
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1"
generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0"
splitOnCaseChange="1"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.EnglishPorterFilterFactory"
protected="protwords.txt"/>
Modified:
lucene/solr/trunk/src/java/org/apache/solr/analysis/StopFilterFactory.java
URL:
http://svn.apache.org/viewvc/lucene/solr/trunk/src/java/org/apache/solr/analysis/StopFilterFactory.java?rev=648433&r1=648432&r2=648433&view=diff
==============================================================================
--- lucene/solr/trunk/src/java/org/apache/solr/analysis/StopFilterFactory.java
(original)
+++ lucene/solr/trunk/src/java/org/apache/solr/analysis/StopFilterFactory.java
Tue Apr 15 15:19:18 2008
@@ -35,6 +35,7 @@
public void inform(ResourceLoader loader) {
String stopWordFile = args.get("words");
ignoreCase = getBoolean("ignoreCase",false);
+ enablePositionIncrements = getBoolean("enablePositionIncrements",false);
if (stopWordFile != null) {
try {
@@ -50,8 +51,11 @@
private Set stopWords;
private boolean ignoreCase;
+ private boolean enablePositionIncrements;
public StopFilter create(TokenStream input) {
- return new StopFilter(input,stopWords,ignoreCase);
+ StopFilter stopFilter = new StopFilter(input,stopWords,ignoreCase);
+ stopFilter.setEnablePositionIncrements(enablePositionIncrements);
+ return stopFilter;
}
}