You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by rm...@apache.org on 2012/04/07 20:07:57 UTC
svn commit: r1310811 - in
/lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis:
MockCharFilter.java MockTokenizer.java
Author: rmuir
Date: Sat Apr 7 18:07:56 2012
New Revision: 1310811
URL: http://svn.apache.org/viewvc?rev=1310811&view=rev
Log:
LUCENE-3919: add convenience ctors to MockTokenizer,MockCharFilter, fix MockCharFilter to chain its correctOffset
Modified:
lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockCharFilter.java
lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockTokenizer.java
Modified: lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockCharFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockCharFilter.java?rev=1310811&r1=1310810&r2=1310811&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockCharFilter.java (original)
+++ lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockCharFilter.java Sat Apr 7 18:07:56 2012
@@ -22,18 +22,23 @@ import java.io.Reader;
import java.util.SortedMap;
import java.util.TreeMap;
-// the purpose of this charfilter is to send offsets out of bounds
-// if the analyzer doesn't use correctOffset or does incorrect offset math.
-class MockCharFilter extends CharStream {
- final Reader in;
+/** the purpose of this charfilter is to send offsets out of bounds
+ if the analyzer doesn't use correctOffset or does incorrect offset math. */
+public class MockCharFilter extends CharStream {
+ final CharStream in;
final int remainder;
// for testing only
public MockCharFilter(Reader in, int remainder) {
- this.in = in;
+ this.in = CharReader.get(in);
this.remainder = remainder;
assert remainder >= 0 && remainder < 10 : "invalid parameter";
}
+
+ // for testing only, uses a remainder of 0
+ public MockCharFilter(Reader in) {
+ this(in, 0);
+ }
@Override
public void close() throws IOException {
@@ -89,7 +94,7 @@ class MockCharFilter extends CharStream
SortedMap<Integer,Integer> subMap = corrections.subMap(0, currentOff+1);
int ret = subMap.isEmpty() ? currentOff : currentOff + subMap.get(subMap.lastKey());
assert ret >= 0 : "currentOff=" + currentOff + ",diff=" + (ret-currentOff);
- return ret;
+ return in.correctOffset(ret); // chain the call
}
protected void addOffCorrectMap(int off, int cumulativeDiff) {
Modified: lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockTokenizer.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockTokenizer.java?rev=1310811&r1=1310810&r2=1310811&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockTokenizer.java (original)
+++ lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockTokenizer.java Sat Apr 7 18:07:56 2012
@@ -95,6 +95,11 @@ public class MockTokenizer extends Token
this(input, runAutomaton, lowerCase, DEFAULT_MAX_TOKEN_LENGTH);
}
+ /** Calls {@link #MockTokenizer(Reader, CharacterRunAutomaton, boolean) MockTokenizer(Reader, WHITESPACE, true)} */
+ public MockTokenizer(Reader input) {
+ this(input, WHITESPACE, true);
+ }
+
@Override
public final boolean incrementToken() throws IOException {
assert !enableChecks || (streamState == State.RESET || streamState == State.INCREMENT)