You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ro...@apache.org on 2014/12/02 12:52:08 UTC
svn commit: r1642844 - in /lucene/dev/branches/lucene2878/lucene:
core/src/java/org/apache/lucene/search/
expressions/src/java/org/apache/lucene/expressions/
facet/src/java/org/apache/lucene/facet/
facet/src/java/org/apache/lucene/facet/taxonomy/ group...
Author: romseygeek
Date: Tue Dec 2 11:52:07 2014
New Revision: 1642844
URL: http://svn.apache.org/r1642844
Log:
Get all lucene modules compiling
Removed:
lucene/dev/branches/lucene2878/lucene/join/src/java/org/apache/lucene/search/join/FakeScorer.java
Modified:
lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/FakeScorer.java
lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/FilterScorer.java
lucene/dev/branches/lucene2878/lucene/expressions/src/java/org/apache/lucene/expressions/ExpressionRescorer.java
lucene/dev/branches/lucene2878/lucene/facet/src/java/org/apache/lucene/facet/DrillSidewaysScorer.java
lucene/dev/branches/lucene2878/lucene/facet/src/java/org/apache/lucene/facet/taxonomy/TaxonomyFacetSumValueSource.java
lucene/dev/branches/lucene2878/lucene/grouping/src/java/org/apache/lucene/search/grouping/BlockGroupingCollector.java
lucene/dev/branches/lucene2878/lucene/grouping/src/test/org/apache/lucene/search/grouping/TestGrouping.java
lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/highlight/TokenStreamFromTermVector.java
lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/highlight/positions/IntervalTokenStream.java
lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/postingshighlight/MultiTermHighlighting.java
lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/postingshighlight/PostingsHighlighter.java
lucene/dev/branches/lucene2878/lucene/highlighter/src/test/org/apache/lucene/search/highlight/positions/IntervalHighlighterTest.java
lucene/dev/branches/lucene2878/lucene/join/src/java/org/apache/lucene/search/join/TermsIncludingScoreQuery.java
lucene/dev/branches/lucene2878/lucene/join/src/java/org/apache/lucene/search/join/ToChildBlockJoinQuery.java
lucene/dev/branches/lucene2878/lucene/join/src/java/org/apache/lucene/search/join/ToParentBlockJoinQuery.java
lucene/dev/branches/lucene2878/lucene/join/src/test/org/apache/lucene/search/join/TestBlockJoin.java
lucene/dev/branches/lucene2878/lucene/memory/src/java/org/apache/lucene/index/memory/MemoryIndex.java
lucene/dev/branches/lucene2878/lucene/memory/src/test/org/apache/lucene/index/memory/TestMemoryIndexAgainstRAMDir.java
lucene/dev/branches/lucene2878/lucene/misc/src/java/org/apache/lucene/index/sorter/Sorter.java
lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/CustomScoreQuery.java
lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/BoostedQuery.java
lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/FunctionQuery.java
lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/ValueSourceScorer.java
lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/TFValueSource.java
lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/TermFreqValueSource.java
lucene/dev/branches/lucene2878/lucene/sandbox/src/java/org/apache/lucene/codecs/idversion/SingleDocsAndPositionsEnum.java
lucene/dev/branches/lucene2878/lucene/sandbox/src/java/org/apache/lucene/codecs/idversion/SingleDocsEnum.java
lucene/dev/branches/lucene2878/lucene/sandbox/src/java/org/apache/lucene/search/TermAutomatonScorer.java
lucene/dev/branches/lucene2878/lucene/test-framework/src/java/org/apache/lucene/index/BasePostingsFormatTestCase.java
Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/FakeScorer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/FakeScorer.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/FakeScorer.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/FakeScorer.java Tue Dec 2 11:52:07 2014
@@ -24,10 +24,10 @@ import org.apache.lucene.util.BytesRef;
/** Used by {@link BulkScorer}s that need to pass a {@link
* Scorer} to {@link LeafCollector#setScorer}. */
-final class FakeScorer extends Scorer {
- float score;
- int doc = -1;
- int freq = 1;
+public final class FakeScorer extends Scorer {
+ public float score;
+ public int doc = -1;
+ public int freq = 1;
public FakeScorer() {
super(null);
Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/FilterScorer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/FilterScorer.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/FilterScorer.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/FilterScorer.java Tue Dec 2 11:52:07 2014
@@ -32,7 +32,7 @@ import org.apache.lucene.util.BytesRef;
* further override some of these methods and may also provide additional
* methods and fields.
*/
-abstract class FilterScorer extends Scorer {
+public abstract class FilterScorer extends Scorer {
protected final Scorer in;
public FilterScorer(Scorer in) {
Modified: lucene/dev/branches/lucene2878/lucene/expressions/src/java/org/apache/lucene/expressions/ExpressionRescorer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/expressions/src/java/org/apache/lucene/expressions/ExpressionRescorer.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/expressions/src/java/org/apache/lucene/expressions/ExpressionRescorer.java (original)
+++ lucene/dev/branches/lucene2878/lucene/expressions/src/java/org/apache/lucene/expressions/ExpressionRescorer.java Tue Dec 2 11:52:07 2014
@@ -18,7 +18,6 @@ package org.apache.lucene.expressions;
*/
import java.io.IOException;
-import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -27,18 +26,11 @@ import org.apache.lucene.index.LeafReade
import org.apache.lucene.index.ReaderUtil;
import org.apache.lucene.queries.function.ValueSource;
import org.apache.lucene.search.Explanation;
+import org.apache.lucene.search.FakeScorer;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.Rescorer;
-import org.apache.lucene.search.Scorer;
import org.apache.lucene.search.Sort;
import org.apache.lucene.search.SortRescorer;
-import org.apache.lucene.search.Weight;
-
-import java.io.IOException;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
/**
* A {@link Rescorer} that uses an expression to re-score
@@ -64,61 +56,6 @@ class ExpressionRescorer extends SortRes
this.bindings = bindings;
}
- private static class FakeScorer extends Scorer {
- float score;
- int doc = -1;
- int freq = 1;
-
- public FakeScorer() {
- super(null);
- }
-
- @Override
- public int advance(int target) {
- throw new UnsupportedOperationException("FakeScorer doesn't support advance(int)");
- }
-
- @Override
- public int docID() {
- return doc;
- }
-
- @Override
- public int freq() {
- return freq;
- }
-
- @Override
- public int nextPosition() throws IOException {
- throw new UnsupportedOperationException("FakeScorer doesn't support nextPosition()");
- }
-
- @Override
- public int nextDoc() {
- throw new UnsupportedOperationException("FakeScorer doesn't support nextDoc()");
- }
-
- @Override
- public float score() {
- return score;
- }
-
- @Override
- public long cost() {
- return 1;
- }
-
- @Override
- public Weight getWeight() {
- throw new UnsupportedOperationException();
- }
-
- @Override
- public Collection<ChildScorer> getChildren() {
- throw new UnsupportedOperationException();
- }
- }
-
@Override
public Explanation explain(IndexSearcher searcher, Explanation firstPassExplanation, int docID) throws IOException {
Explanation result = super.explain(searcher, firstPassExplanation, docID);
Modified: lucene/dev/branches/lucene2878/lucene/facet/src/java/org/apache/lucene/facet/DrillSidewaysScorer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/facet/src/java/org/apache/lucene/facet/DrillSidewaysScorer.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/facet/src/java/org/apache/lucene/facet/DrillSidewaysScorer.java (original)
+++ lucene/dev/branches/lucene2878/lucene/facet/src/java/org/apache/lucene/facet/DrillSidewaysScorer.java Tue Dec 2 11:52:07 2014
@@ -17,6 +17,10 @@ package org.apache.lucene.facet;
* limitations under the License.
*/
+import java.io.IOException;
+import java.util.Collection;
+import java.util.Collections;
+
import org.apache.lucene.index.DocsEnum;
import org.apache.lucene.index.LeafReaderContext;
import org.apache.lucene.search.BulkScorer;
@@ -26,12 +30,9 @@ import org.apache.lucene.search.LeafColl
import org.apache.lucene.search.Scorer;
import org.apache.lucene.search.Weight;
import org.apache.lucene.util.Bits;
+import org.apache.lucene.util.BytesRef;
import org.apache.lucene.util.FixedBitSet;
-import java.io.IOException;
-import java.util.Collection;
-import java.util.Collections;
-
class DrillSidewaysScorer extends BulkScorer {
//private static boolean DEBUG = false;
@@ -650,6 +651,31 @@ class DrillSidewaysScorer extends BulkSc
}
@Override
+ public int startPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int startOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public BytesRef getPayload() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
public int nextDoc() {
throw new UnsupportedOperationException("FakeScorer doesn't support nextDoc()");
}
Modified: lucene/dev/branches/lucene2878/lucene/facet/src/java/org/apache/lucene/facet/taxonomy/TaxonomyFacetSumValueSource.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/facet/src/java/org/apache/lucene/facet/taxonomy/TaxonomyFacetSumValueSource.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/facet/src/java/org/apache/lucene/facet/taxonomy/TaxonomyFacetSumValueSource.java (original)
+++ lucene/dev/branches/lucene2878/lucene/facet/src/java/org/apache/lucene/facet/taxonomy/TaxonomyFacetSumValueSource.java Tue Dec 2 11:52:07 2014
@@ -17,6 +17,11 @@ package org.apache.lucene.facet.taxonomy
* limitations under the License.
*/
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
import org.apache.lucene.facet.FacetsCollector;
import org.apache.lucene.facet.FacetsCollector.MatchingDocs;
import org.apache.lucene.facet.FacetsConfig;
@@ -25,16 +30,10 @@ import org.apache.lucene.queries.functio
import org.apache.lucene.queries.function.ValueSource;
import org.apache.lucene.queries.function.docvalues.DoubleDocValues;
import org.apache.lucene.search.DocIdSetIterator;
+import org.apache.lucene.search.FakeScorer;
import org.apache.lucene.search.Scorer;
-import org.apache.lucene.search.Weight;
import org.apache.lucene.util.IntsRef;
-import java.io.IOException;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
/** Aggregates sum of values from {@link
* FunctionValues#doubleVal}, for each facet label.
*
@@ -62,34 +61,6 @@ public class TaxonomyFacetSumValueSource
sumValues(fc.getMatchingDocs(), fc.getKeepScores(), valueSource);
}
- private static final class FakeScorer extends Scorer {
- float score;
- int docID;
- FakeScorer() { super(null); }
- @Override public float score() throws IOException { return score; }
- @Override public int freq() throws IOException { throw new UnsupportedOperationException(); }
-
- @Override
- public int nextPosition() throws IOException {
- throw new UnsupportedOperationException();
- }
-
- @Override public int docID() { return docID; }
- @Override public int nextDoc() throws IOException { throw new UnsupportedOperationException(); }
- @Override public int advance(int target) throws IOException { throw new UnsupportedOperationException(); }
- @Override public long cost() { return 0; }
-
- @Override
- public Weight getWeight() {
- throw new UnsupportedOperationException();
- }
-
- @Override
- public Collection<ChildScorer> getChildren() {
- throw new UnsupportedOperationException();
- }
- }
-
private final void sumValues(List<MatchingDocs> matchingDocs, boolean keepScores, ValueSource valueSource) throws IOException {
final FakeScorer scorer = new FakeScorer();
Map<String, Scorer> context = new HashMap<>();
@@ -110,7 +81,7 @@ public class TaxonomyFacetSumValueSource
while ((doc = docs.nextDoc()) != DocIdSetIterator.NO_MORE_DOCS) {
ords.get(doc, scratch);
if (keepScores) {
- scorer.docID = doc;
+ scorer.doc = doc;
scorer.score = scores[scoresIdx++];
}
float value = (float) functionValues.doubleVal(doc);
Modified: lucene/dev/branches/lucene2878/lucene/grouping/src/java/org/apache/lucene/search/grouping/BlockGroupingCollector.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/grouping/src/java/org/apache/lucene/search/grouping/BlockGroupingCollector.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/grouping/src/java/org/apache/lucene/search/grouping/BlockGroupingCollector.java (original)
+++ lucene/dev/branches/lucene2878/lucene/grouping/src/java/org/apache/lucene/search/grouping/BlockGroupingCollector.java Tue Dec 2 11:52:07 2014
@@ -18,11 +18,11 @@ package org.apache.lucene.search.groupin
*/
import java.io.IOException;
-import java.util.Collection;
-import org.apache.lucene.index.LeafReaderContext;
import org.apache.lucene.index.IndexWriter;
+import org.apache.lucene.index.LeafReaderContext;
import org.apache.lucene.search.DocIdSetIterator;
+import org.apache.lucene.search.FakeScorer;
import org.apache.lucene.search.FieldComparator;
import org.apache.lucene.search.Filter;
import org.apache.lucene.search.Scorer;
@@ -33,13 +33,9 @@ import org.apache.lucene.search.TopDocs;
import org.apache.lucene.search.TopDocsCollector;
import org.apache.lucene.search.TopFieldCollector;
import org.apache.lucene.search.TopScoreDocCollector;
-import org.apache.lucene.search.Weight;
import org.apache.lucene.util.ArrayUtil;
import org.apache.lucene.util.PriorityQueue;
-import java.io.IOException;
-import java.util.Collection;
-
// TODO: this sentence is too long for the class summary.
/** BlockGroupingCollector performs grouping with a
* single pass collector, as long as you are grouping by a
@@ -98,61 +94,6 @@ public class BlockGroupingCollector exte
private final GroupQueue groupQueue;
private boolean groupCompetes;
- private final static class FakeScorer extends Scorer {
-
- float score;
- int doc;
-
- public FakeScorer() {
- super(null);
- }
-
- @Override
- public float score() {
- return score;
- }
-
- @Override
- public int freq() {
- throw new UnsupportedOperationException(); // TODO: wtf does this class do?
- }
-
- @Override
- public int nextPosition() throws IOException {
- throw new UnsupportedOperationException();
- }
-
- @Override
- public int docID() {
- return doc;
- }
-
- @Override
- public int advance(int target) {
- throw new UnsupportedOperationException();
- }
-
- @Override
- public int nextDoc() {
- throw new UnsupportedOperationException();
- }
-
- @Override
- public long cost() {
- return 1;
- }
-
- @Override
- public Weight getWeight() {
- throw new UnsupportedOperationException();
- }
-
- @Override
- public Collection<ChildScorer> getChildren() {
- throw new UnsupportedOperationException();
- }
- }
-
private static final class OneGroup {
LeafReaderContext readerContext;
//int groupOrd;
Modified: lucene/dev/branches/lucene2878/lucene/grouping/src/test/org/apache/lucene/search/grouping/TestGrouping.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/grouping/src/test/org/apache/lucene/search/grouping/TestGrouping.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/grouping/src/test/org/apache/lucene/search/grouping/TestGrouping.java (original)
+++ lucene/dev/branches/lucene2878/lucene/grouping/src/test/org/apache/lucene/search/grouping/TestGrouping.java Tue Dec 2 11:52:07 2014
@@ -18,11 +18,29 @@
package org.apache.lucene.search.grouping;
import java.io.IOException;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import com.carrotsearch.randomizedtesting.annotations.Seed;
import org.apache.lucene.analysis.MockAnalyzer;
-import org.apache.lucene.document.*;
+import org.apache.lucene.document.Document;
+import org.apache.lucene.document.Field;
+import org.apache.lucene.document.FieldType;
+import org.apache.lucene.document.IntField;
+import org.apache.lucene.document.NumericDocValuesField;
+import org.apache.lucene.document.SortedDocValuesField;
+import org.apache.lucene.document.StringField;
+import org.apache.lucene.document.TextField;
import org.apache.lucene.index.DirectoryReader;
+import org.apache.lucene.index.DocsEnum;
import org.apache.lucene.index.IndexOptions;
import org.apache.lucene.index.IndexReaderContext;
import org.apache.lucene.index.LeafReaderContext;
@@ -34,7 +52,20 @@ import org.apache.lucene.index.SlowCompo
import org.apache.lucene.index.Term;
import org.apache.lucene.queries.function.ValueSource;
import org.apache.lucene.queries.function.valuesource.BytesRefFieldSource;
-import org.apache.lucene.search.*;
+import org.apache.lucene.search.CachingCollector;
+import org.apache.lucene.search.CachingWrapperFilter;
+import org.apache.lucene.search.Collector;
+import org.apache.lucene.search.FieldDoc;
+import org.apache.lucene.search.Filter;
+import org.apache.lucene.search.IndexSearcher;
+import org.apache.lucene.search.MultiCollector;
+import org.apache.lucene.search.Query;
+import org.apache.lucene.search.QueryWrapperFilter;
+import org.apache.lucene.search.ScoreDoc;
+import org.apache.lucene.search.Sort;
+import org.apache.lucene.search.SortField;
+import org.apache.lucene.search.TermQuery;
+import org.apache.lucene.search.Weight;
import org.apache.lucene.search.grouping.function.FunctionAllGroupsCollector;
import org.apache.lucene.search.grouping.function.FunctionFirstPassGroupingCollector;
import org.apache.lucene.search.grouping.function.FunctionSecondPassGroupingCollector;
@@ -54,6 +85,7 @@ import org.apache.lucene.util.mutable.Mu
// - test ties
// - test compound sort
+@Seed("3C4E441C6A8DA6A2:4E026113DBED10D1")
public class TestGrouping extends LuceneTestCase {
public void testBasic() throws Exception {
@@ -878,7 +910,7 @@ public class TestGrouping extends Lucene
}
} else {
// Collect only into cache, then replay multiple times:
- c = cCache = CachingCollector.create(false, true, maxCacheMB);
+ c = cCache = CachingCollector.create(false, DocsEnum.FLAG_FREQS, true, maxCacheMB);
}
} else {
cCache = null;
Modified: lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/highlight/TokenStreamFromTermVector.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/highlight/TokenStreamFromTermVector.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/highlight/TokenStreamFromTermVector.java (original)
+++ lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/highlight/TokenStreamFromTermVector.java Tue Dec 2 11:52:07 2014
@@ -16,6 +16,7 @@ package org.apache.lucene.search.highlig
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
import java.io.IOException;
import org.apache.lucene.analysis.TokenStream;
@@ -23,7 +24,7 @@ import org.apache.lucene.analysis.tokena
import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;
import org.apache.lucene.analysis.tokenattributes.PayloadAttribute;
import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;
-import org.apache.lucene.index.DocsAndPositionsEnum;
+import org.apache.lucene.index.DocsEnum;
import org.apache.lucene.index.Terms;
import org.apache.lucene.index.TermsEnum;
import org.apache.lucene.util.BytesRef;
@@ -105,7 +106,7 @@ public final class TokenStreamFromTermVe
final TermsEnum termsEnum = vector.iterator(null);
BytesRef termBytesRef;
- DocsAndPositionsEnum dpEnum = null;
+ DocsEnum dpEnum = null;
//int sumFreq = 0;
while ((termBytesRef = termsEnum.next()) != null) {
//Grab the term (in same way as BytesRef.utf8ToString() but we don't want a String obj)
Modified: lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/highlight/positions/IntervalTokenStream.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/highlight/positions/IntervalTokenStream.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/highlight/positions/IntervalTokenStream.java (original)
+++ lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/highlight/positions/IntervalTokenStream.java Tue Dec 2 11:52:07 2014
@@ -17,21 +17,21 @@ package org.apache.lucene.search.highlig
* limitations under the License.
*/
+import java.io.IOException;
+
import org.apache.lucene.analysis.TokenStream;
import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;
import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;
import org.apache.lucene.search.posfilter.Interval;
-import java.io.IOException;
-
/**
* A TokenStream constructed from a stream of positions and their offsets.
* The document is segmented into tokens at the start and end offset of each interval. The intervals
* are assumed to be non-overlapping.
*
* TODO: abstract the dependency on the current PositionOffsetMapper impl;
- * allow for implementations of position->offset maps that don't rely on term vectors.
+ * allow for implementations of position->offset maps that don't rely on term vectors.
*
* @lucene.experimental
*/
Modified: lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/postingshighlight/MultiTermHighlighting.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/postingshighlight/MultiTermHighlighting.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/postingshighlight/MultiTermHighlighting.java (original)
+++ lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/postingshighlight/MultiTermHighlighting.java Tue Dec 2 11:52:07 2014
@@ -17,6 +17,12 @@ package org.apache.lucene.search.posting
* limitations under the License.
*/
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Comparator;
+import java.util.List;
+
import org.apache.lucene.analysis.TokenStream;
import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;
@@ -46,12 +52,6 @@ import org.apache.lucene.util.automaton.
import org.apache.lucene.util.automaton.LevenshteinAutomata;
import org.apache.lucene.util.automaton.Operations;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Comparator;
-import java.util.List;
-
/**
* Support for highlighting multiterm queries in PostingsHighlighter.
*/
@@ -237,7 +237,19 @@ class MultiTermHighlighting {
currentStartOffset = currentEndOffset = Integer.MAX_VALUE;
return Integer.MAX_VALUE;
}
-
+
+ @Override
+ public int startPosition() throws IOException {
+ if (currentStartOffset < Integer.MAX_VALUE)
+ return 0;
+ return NO_MORE_POSITIONS;
+ }
+
+ @Override
+ public int endPosition() throws IOException {
+ return startPosition();
+ }
+
@Override
public int freq() throws IOException {
return Integer.MAX_VALUE; // lie
Modified: lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/postingshighlight/PostingsHighlighter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/postingshighlight/PostingsHighlighter.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/postingshighlight/PostingsHighlighter.java (original)
+++ lucene/dev/branches/lucene2878/lucene/highlighter/src/java/org/apache/lucene/search/postingshighlight/PostingsHighlighter.java Tue Dec 2 11:52:07 2014
@@ -17,6 +17,19 @@ package org.apache.lucene.search.posting
* limitations under the License.
*/
+import java.io.IOException;
+import java.text.BreakIterator;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Comparator;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.PriorityQueue;
+import java.util.SortedSet;
+import java.util.TreeSet;
+
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.index.DocsEnum;
import org.apache.lucene.index.FieldInfo;
@@ -40,19 +53,6 @@ import org.apache.lucene.util.InPlaceMer
import org.apache.lucene.util.UnicodeUtil;
import org.apache.lucene.util.automaton.CharacterRunAutomaton;
-import java.io.IOException;
-import java.text.BreakIterator;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-import java.util.PriorityQueue;
-import java.util.SortedSet;
-import java.util.TreeSet;
-
/**
* Simple highlighter that does not analyze fields nor use
* term vectors. Instead it requires
@@ -730,10 +730,20 @@ public class PostingsHighlighter {
public int nextPosition() throws IOException { return NO_MORE_POSITIONS; }
@Override
- public int startOffset() throws IOException { return Integer.MAX_VALUE; }
+ public int startPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int startOffset() throws IOException { throw new UnsupportedOperationException(); }
@Override
- public int endOffset() throws IOException { return Integer.MAX_VALUE; }
+ public int endOffset() throws IOException { throw new UnsupportedOperationException(); }
@Override
public BytesRef getPayload() throws IOException { return null; }
Modified: lucene/dev/branches/lucene2878/lucene/highlighter/src/test/org/apache/lucene/search/highlight/positions/IntervalHighlighterTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/highlighter/src/test/org/apache/lucene/search/highlight/positions/IntervalHighlighterTest.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/highlighter/src/test/org/apache/lucene/search/highlight/positions/IntervalHighlighterTest.java (original)
+++ lucene/dev/branches/lucene2878/lucene/highlighter/src/test/org/apache/lucene/search/highlight/positions/IntervalHighlighterTest.java Tue Dec 2 11:52:07 2014
@@ -15,6 +15,10 @@ package org.apache.lucene.search.highlig
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
+import java.io.IOException;
+import java.io.StringReader;
+
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.MockAnalyzer;
import org.apache.lucene.analysis.MockTokenFilter;
@@ -24,7 +28,7 @@ import org.apache.lucene.document.Docume
import org.apache.lucene.document.Field;
import org.apache.lucene.document.FieldType;
import org.apache.lucene.index.DirectoryReader;
-import org.apache.lucene.index.FieldInfo.IndexOptions;
+import org.apache.lucene.index.IndexOptions;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.index.IndexWriterConfig;
import org.apache.lucene.index.IndexWriterConfig.OpenMode;
@@ -51,9 +55,6 @@ import org.apache.lucene.util.LuceneTest
import org.apache.lucene.util.LuceneTestCase.SuppressCodecs;
import org.junit.Ignore;
-import java.io.IOException;
-import java.io.StringReader;
-
/**
* TODO: FIX THIS TEST Phrase and Span Queries positions callback API
*/
@@ -89,7 +90,6 @@ public class IntervalHighlighterTest ext
throws Exception {
IndexWriter writer = new IndexWriter(dir, iwc);
FieldType type = new FieldType();
- type.setIndexed(true);
type.setTokenized(true);
type.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS);
type.setStored(true);
Modified: lucene/dev/branches/lucene2878/lucene/join/src/java/org/apache/lucene/search/join/TermsIncludingScoreQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/join/src/java/org/apache/lucene/search/join/TermsIncludingScoreQuery.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/join/src/java/org/apache/lucene/search/join/TermsIncludingScoreQuery.java (original)
+++ lucene/dev/branches/lucene2878/lucene/join/src/java/org/apache/lucene/search/join/TermsIncludingScoreQuery.java Tue Dec 2 11:52:07 2014
@@ -17,6 +17,10 @@ package org.apache.lucene.search.join;
* limitations under the License.
*/
+import java.io.IOException;
+import java.util.Locale;
+import java.util.Set;
+
import org.apache.lucene.index.DocsEnum;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.LeafReaderContext;
@@ -27,6 +31,7 @@ import org.apache.lucene.search.BulkScor
import org.apache.lucene.search.ComplexExplanation;
import org.apache.lucene.search.DocIdSetIterator;
import org.apache.lucene.search.Explanation;
+import org.apache.lucene.search.FakeScorer;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.LeafCollector;
import org.apache.lucene.search.Query;
@@ -38,10 +43,6 @@ import org.apache.lucene.util.BytesRef;
import org.apache.lucene.util.BytesRefHash;
import org.apache.lucene.util.FixedBitSet;
-import java.io.IOException;
-import java.util.Locale;
-import java.util.Set;
-
class TermsIncludingScoreQuery extends Query {
final String field;
@@ -363,7 +364,32 @@ class TermsIncludingScoreQuery extends Q
@Override
public int nextPosition() throws IOException {
- return -1;
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int startPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int startOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public BytesRef getPayload() throws IOException {
+ throw new UnsupportedOperationException();
}
@Override
Modified: lucene/dev/branches/lucene2878/lucene/join/src/java/org/apache/lucene/search/join/ToChildBlockJoinQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/join/src/java/org/apache/lucene/search/join/ToChildBlockJoinQuery.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/join/src/java/org/apache/lucene/search/join/ToChildBlockJoinQuery.java (original)
+++ lucene/dev/branches/lucene2878/lucene/join/src/java/org/apache/lucene/search/join/ToChildBlockJoinQuery.java Tue Dec 2 11:52:07 2014
@@ -25,7 +25,6 @@ import java.util.Set;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.LeafReaderContext;
import org.apache.lucene.index.Term;
-import org.apache.lucene.search.DocIdSetIterator;
import org.apache.lucene.search.Explanation;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.Query;
@@ -34,11 +33,7 @@ import org.apache.lucene.search.Weight;
import org.apache.lucene.util.BitDocIdSet;
import org.apache.lucene.util.BitSet;
import org.apache.lucene.util.Bits;
-
-import java.io.IOException;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Set;
+import org.apache.lucene.util.BytesRef;
/**
* Just like {@link ToParentBlockJoinQuery}, except this
@@ -284,7 +279,32 @@ public class ToChildBlockJoinQuery exten
@Override
public int nextPosition() throws IOException {
- return -1; // nocommit do positions make sense here?
+ throw new UnsupportedOperationException(); // nocommit do positions make sense here?
+ }
+
+ @Override
+ public int startPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int startOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public BytesRef getPayload() throws IOException {
+ throw new UnsupportedOperationException();
}
@Override
Modified: lucene/dev/branches/lucene2878/lucene/join/src/java/org/apache/lucene/search/join/ToParentBlockJoinQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/join/src/java/org/apache/lucene/search/join/ToParentBlockJoinQuery.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/join/src/java/org/apache/lucene/search/join/ToParentBlockJoinQuery.java (original)
+++ lucene/dev/branches/lucene2878/lucene/join/src/java/org/apache/lucene/search/join/ToParentBlockJoinQuery.java Tue Dec 2 11:52:07 2014
@@ -17,6 +17,12 @@ package org.apache.lucene.search.join;
* limitations under the License.
*/
+import java.io.IOException;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Locale;
+import java.util.Set;
+
import org.apache.lucene.index.DocsEnum;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexWriter;
@@ -34,12 +40,7 @@ import org.apache.lucene.util.ArrayUtil;
import org.apache.lucene.util.BitDocIdSet;
import org.apache.lucene.util.BitSet;
import org.apache.lucene.util.Bits;
-
-import java.io.IOException;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Locale;
-import java.util.Set;
+import org.apache.lucene.util.BytesRef;
/**
* This query requires that you index
@@ -377,7 +378,32 @@ public class ToParentBlockJoinQuery exte
@Override
public int nextPosition() throws IOException {
- return -1; // nocommit do positions make sense here?
+ throw new UnsupportedOperationException(); // nocommit do positions make sense here?
+ }
+
+ @Override
+ public int startPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int startOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public BytesRef getPayload() throws IOException {
+ throw new UnsupportedOperationException();
}
@Override
Modified: lucene/dev/branches/lucene2878/lucene/join/src/test/org/apache/lucene/search/join/TestBlockJoin.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/join/src/test/org/apache/lucene/search/join/TestBlockJoin.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/join/src/test/org/apache/lucene/search/join/TestBlockJoin.java (original)
+++ lucene/dev/branches/lucene2878/lucene/join/src/test/org/apache/lucene/search/join/TestBlockJoin.java Tue Dec 2 11:52:07 2014
@@ -17,6 +17,13 @@ package org.apache.lucene.search.join;
* limitations under the License.
*/
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+import java.util.Locale;
+
import org.apache.lucene.analysis.MockAnalyzer;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
@@ -24,12 +31,12 @@ import org.apache.lucene.document.IntFie
import org.apache.lucene.document.NumericDocValuesField;
import org.apache.lucene.document.SortedDocValuesField;
import org.apache.lucene.document.StoredField;
-import org.apache.lucene.index.AtomicReaderContext;
import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.index.DocsEnum;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.index.IndexWriterConfig;
+import org.apache.lucene.index.LeafReaderContext;
import org.apache.lucene.index.LogDocMergePolicy;
import org.apache.lucene.index.MultiFields;
import org.apache.lucene.index.NoMergePolicy;
@@ -60,21 +67,14 @@ import org.apache.lucene.search.Weight;
import org.apache.lucene.search.grouping.GroupDocs;
import org.apache.lucene.search.grouping.TopGroups;
import org.apache.lucene.store.Directory;
+import org.apache.lucene.util.BitSet;
import org.apache.lucene.util.Bits;
import org.apache.lucene.util.BytesRef;
import org.apache.lucene.util.BytesRefBuilder;
-import org.apache.lucene.util.FixedBitSet;
import org.apache.lucene.util.LuceneTestCase;
import org.apache.lucene.util.NumericUtils;
import org.apache.lucene.util.TestUtil;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-import java.util.Locale;
-
public class TestBlockJoin extends LuceneTestCase {
// One resume...
Modified: lucene/dev/branches/lucene2878/lucene/memory/src/java/org/apache/lucene/index/memory/MemoryIndex.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/memory/src/java/org/apache/lucene/index/memory/MemoryIndex.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/memory/src/java/org/apache/lucene/index/memory/MemoryIndex.java (original)
+++ lucene/dev/branches/lucene2878/lucene/memory/src/java/org/apache/lucene/index/memory/MemoryIndex.java Tue Dec 2 11:52:07 2014
@@ -17,6 +17,15 @@ package org.apache.lucene.index.memory;
* limitations under the License.
*/
+import java.io.IOException;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Comparator;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.NoSuchElementException;
+
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.TokenStream;
import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
@@ -61,15 +70,6 @@ import org.apache.lucene.util.RamUsageEs
import org.apache.lucene.util.RecyclingByteBlockAllocator;
import org.apache.lucene.util.RecyclingIntBlockAllocator;
-import java.io.IOException;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.NoSuchElementException;
-
/**
* High-performance single-document main memory Apache Lucene fulltext search index.
* <p>
@@ -1046,6 +1046,7 @@ public class MemoryIndex {
private int doc = -1;
private SliceReader sliceReader;
private int freq;
+ private int pos;
private int startOffset;
private int endOffset;
@@ -1071,6 +1072,7 @@ public class MemoryIndex {
@Override
public int nextDoc() {
+ pos = -1;
if (hasNext && (liveDocs == null || liveDocs.get(0))) {
hasNext = false;
return doc = 0;
@@ -1096,7 +1098,7 @@ public class MemoryIndex {
return NO_MORE_POSITIONS;
assert !sliceReader.endOfSlice() : " stores offsets : " + startOffset;
if (storeOffsets) {
- int pos = sliceReader.readInt();
+ pos = sliceReader.readInt();
startOffset = sliceReader.readInt();
endOffset = sliceReader.readInt();
return pos;
@@ -1106,6 +1108,16 @@ public class MemoryIndex {
}
@Override
+ public int startPosition() throws IOException {
+ return pos;
+ }
+
+ @Override
+ public int endPosition() throws IOException {
+ return pos;
+ }
+
+ @Override
public int startOffset() {
return startOffset;
}
Modified: lucene/dev/branches/lucene2878/lucene/memory/src/test/org/apache/lucene/index/memory/TestMemoryIndexAgainstRAMDir.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/memory/src/test/org/apache/lucene/index/memory/TestMemoryIndexAgainstRAMDir.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/memory/src/test/org/apache/lucene/index/memory/TestMemoryIndexAgainstRAMDir.java (original)
+++ lucene/dev/branches/lucene2878/lucene/memory/src/test/org/apache/lucene/index/memory/TestMemoryIndexAgainstRAMDir.java Tue Dec 2 11:52:07 2014
@@ -43,7 +43,6 @@ import org.apache.lucene.document.TextFi
import org.apache.lucene.index.CompositeReader;
import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.index.DocsEnum;
-import org.apache.lucene.index.DocsEnum;
import org.apache.lucene.index.Fields;
import org.apache.lucene.index.IndexOptions;
import org.apache.lucene.index.IndexReader;
@@ -68,8 +67,8 @@ import org.apache.lucene.search.spans.Sp
import org.apache.lucene.search.spans.SpanQuery;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.RAMDirectory;
-import org.apache.lucene.util.ByteBlockPool.Allocator;
import org.apache.lucene.util.ByteBlockPool;
+import org.apache.lucene.util.ByteBlockPool.Allocator;
import org.apache.lucene.util.BytesRef;
import org.apache.lucene.util.IOUtils;
import org.apache.lucene.util.LineFileDocs;
@@ -517,8 +516,8 @@ public class TestMemoryIndexAgainstRAMDi
assertNotNull(memTermEnum.next());
assertThat(termEnum.totalTermFreq(), equalTo(memTermEnum.totalTermFreq()));
- DocsAndPositionsEnum docsPosEnum = termEnum.docsAndPositions(null, null, 0);
- DocsAndPositionsEnum memDocsPosEnum = memTermEnum.docsAndPositions(null, null, 0);
+ DocsEnum docsPosEnum = termEnum.docsAndPositions(null, null, 0);
+ DocsEnum memDocsPosEnum = memTermEnum.docsAndPositions(null, null, 0);
String currentTerm = termEnum.term().utf8ToString();
assertThat("Token mismatch for field: " + field_name, currentTerm, equalTo(memTermEnum.term().utf8ToString()));
Modified: lucene/dev/branches/lucene2878/lucene/misc/src/java/org/apache/lucene/index/sorter/Sorter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/misc/src/java/org/apache/lucene/index/sorter/Sorter.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/misc/src/java/org/apache/lucene/index/sorter/Sorter.java (original)
+++ lucene/dev/branches/lucene2878/lucene/misc/src/java/org/apache/lucene/index/sorter/Sorter.java Tue Dec 2 11:52:07 2014
@@ -17,8 +17,12 @@ package org.apache.lucene.index.sorter;
* limitations under the License.
*/
+import java.io.IOException;
+import java.util.Comparator;
+
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.LeafReader;
+import org.apache.lucene.search.FakeScorer;
import org.apache.lucene.search.FieldComparator;
import org.apache.lucene.search.Scorer;
import org.apache.lucene.search.Sort;
@@ -27,9 +31,6 @@ import org.apache.lucene.util.TimSorter;
import org.apache.lucene.util.packed.PackedInts;
import org.apache.lucene.util.packed.PackedLongValues;
-import java.io.IOException;
-import java.util.Comparator;
-
/**
* Sorts documents of a given index by returning a permutation on the document
* IDs.
@@ -261,30 +262,6 @@ final class Sorter {
return getID();
}
- static final Scorer FAKESCORER = new Scorer(null) {
-
- @Override
- public float score() throws IOException { throw new UnsupportedOperationException(); }
-
- @Override
- public int freq() throws IOException { throw new UnsupportedOperationException(); }
-
- @Override
- public int nextPosition() throws IOException {
- throw new UnsupportedOperationException();
- }
-
- @Override
- public int docID() { throw new UnsupportedOperationException(); }
-
- @Override
- public int nextDoc() throws IOException { throw new UnsupportedOperationException(); }
-
- @Override
- public int advance(int target) throws IOException { throw new UnsupportedOperationException(); }
-
- @Override
- public long cost() { throw new UnsupportedOperationException(); }
- };
+ static final Scorer FAKESCORER = new FakeScorer();
}
Modified: lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/CustomScoreQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/CustomScoreQuery.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/CustomScoreQuery.java (original)
+++ lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/CustomScoreQuery.java Tue Dec 2 11:52:07 2014
@@ -17,6 +17,12 @@ package org.apache.lucene.queries;
* limitations under the License.
*/
+import java.io.IOException;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Set;
+
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.LeafReaderContext;
import org.apache.lucene.index.Term;
@@ -29,14 +35,9 @@ import org.apache.lucene.search.Query;
import org.apache.lucene.search.Scorer;
import org.apache.lucene.search.Weight;
import org.apache.lucene.util.Bits;
+import org.apache.lucene.util.BytesRef;
import org.apache.lucene.util.ToStringUtils;
-import java.io.IOException;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Set;
-
/**
* Query that sets document score as a programmatic function of several (sub) scores:
* <ol>
@@ -291,6 +292,8 @@ public class CustomScoreQuery extends Qu
private final CustomScoreProvider provider;
private final float[] vScores; // reused in score() to avoid allocating this array for each doc
+ // TODO : can we use FilterScorer here instead?
+
// constructor
private CustomScorer(CustomScoreProvider provider, CustomWeight w, float qWeight,
Scorer subQueryScorer, Scorer[] valSrcScorers) {
@@ -338,6 +341,31 @@ public class CustomScoreQuery extends Qu
}
@Override
+ public int startPosition() throws IOException {
+ return subQueryScorer.startPosition();
+ }
+
+ @Override
+ public int endPosition() throws IOException {
+ return subQueryScorer.endPosition();
+ }
+
+ @Override
+ public int startOffset() throws IOException {
+ return subQueryScorer.startOffset();
+ }
+
+ @Override
+ public int endOffset() throws IOException {
+ return subQueryScorer.endOffset();
+ }
+
+ @Override
+ public BytesRef getPayload() throws IOException {
+ return subQueryScorer.getPayload();
+ }
+
+ @Override
public Collection<ChildScorer> getChildren() {
return Collections.singleton(new ChildScorer(subQueryScorer, "CUSTOM"));
}
Modified: lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/BoostedQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/BoostedQuery.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/BoostedQuery.java (original)
+++ lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/BoostedQuery.java Tue Dec 2 11:52:07 2014
@@ -17,11 +17,18 @@ package org.apache.lucene.queries.functi
* limitations under the License.
*/
+import java.io.IOException;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Map;
+import java.util.Set;
+
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.LeafReaderContext;
import org.apache.lucene.index.Term;
import org.apache.lucene.search.ComplexExplanation;
import org.apache.lucene.search.Explanation;
+import org.apache.lucene.search.FilterScorer;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.Query;
import org.apache.lucene.search.Scorer;
@@ -29,12 +36,6 @@ import org.apache.lucene.search.Weight;
import org.apache.lucene.util.Bits;
import org.apache.lucene.util.ToStringUtils;
-import java.io.IOException;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Map;
-import java.util.Set;
-
/**
* Query that is boosted by a ValueSource
*/
@@ -127,41 +128,24 @@ public class BoostedQuery extends Query
}
- private class CustomScorer extends Scorer {
+ private class CustomScorer extends FilterScorer {
private final BoostedQuery.BoostedWeight weight;
private final float qWeight;
- private final Scorer scorer;
private final FunctionValues vals;
private final LeafReaderContext readerContext;
private CustomScorer(LeafReaderContext readerContext, BoostedQuery.BoostedWeight w, float qWeight,
Scorer scorer, ValueSource vs) throws IOException {
- super(w);
+ super(scorer);
this.weight = w;
this.qWeight = qWeight;
- this.scorer = scorer;
this.readerContext = readerContext;
this.vals = vs.getValues(weight.fcontext, readerContext);
}
- @Override
- public int docID() {
- return scorer.docID();
- }
-
- @Override
- public int advance(int target) throws IOException {
- return scorer.advance(target);
- }
-
- @Override
- public int nextDoc() throws IOException {
- return scorer.nextDoc();
- }
-
@Override
public float score() throws IOException {
- float score = qWeight * scorer.score() * vals.floatVal(scorer.docID());
+ float score = qWeight * in.score() * vals.floatVal(in.docID());
// Current Lucene priority queues can't handle NaN and -Infinity, so
// map to -Float.MAX_VALUE. This conditional handles both -infinity
@@ -170,18 +154,8 @@ public class BoostedQuery extends Query
}
@Override
- public int freq() throws IOException {
- return scorer.freq();
- }
-
- @Override
- public int nextPosition() throws IOException {
- return scorer.nextPosition();
- }
-
- @Override
public Collection<ChildScorer> getChildren() {
- return Collections.singleton(new ChildScorer(scorer, "CUSTOM"));
+ return Collections.singleton(new ChildScorer(in, "CUSTOM"));
}
public Explanation explain(int doc) throws IOException {
@@ -197,10 +171,6 @@ public class BoostedQuery extends Query
return res;
}
- @Override
- public long cost() {
- return scorer.cost();
- }
}
Modified: lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/FunctionQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/FunctionQuery.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/FunctionQuery.java (original)
+++ lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/FunctionQuery.java Tue Dec 2 11:52:07 2014
@@ -17,6 +17,10 @@ package org.apache.lucene.queries.functi
* limitations under the License.
*/
+import java.io.IOException;
+import java.util.Map;
+import java.util.Set;
+
import org.apache.lucene.index.DocsEnum;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.LeafReaderContext;
@@ -28,10 +32,7 @@ import org.apache.lucene.search.Query;
import org.apache.lucene.search.Scorer;
import org.apache.lucene.search.Weight;
import org.apache.lucene.util.Bits;
-
-import java.io.IOException;
-import java.util.Map;
-import java.util.Set;
+import org.apache.lucene.util.BytesRef;
/**
@@ -174,7 +175,32 @@ public class FunctionQuery extends Query
@Override
public int nextPosition() throws IOException {
- return -1;
+ return NO_MORE_POSITIONS;
+ }
+
+ @Override
+ public int startPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int startOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public BytesRef getPayload() throws IOException {
+ throw new UnsupportedOperationException();
}
public Explanation explain(int doc) throws IOException {
Modified: lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/ValueSourceScorer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/ValueSourceScorer.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/ValueSourceScorer.java (original)
+++ lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/ValueSourceScorer.java Tue Dec 2 11:52:07 2014
@@ -17,12 +17,13 @@ package org.apache.lucene.queries.functi
* limitations under the License.
*/
+import java.io.IOException;
+
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.MultiFields;
import org.apache.lucene.search.Scorer;
import org.apache.lucene.util.Bits;
-
-import java.io.IOException;
+import org.apache.lucene.util.BytesRef;
/**
* {@link Scorer} which returns the result of {@link FunctionValues#floatVal(int)} as
@@ -94,7 +95,32 @@ public class ValueSourceScorer extends S
@Override
public int nextPosition() throws IOException {
- return -1;
+ return NO_MORE_POSITIONS;
+ }
+
+ @Override
+ public int startPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int startOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public BytesRef getPayload() throws IOException {
+ throw new UnsupportedOperationException();
}
@Override
Modified: lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/TFValueSource.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/TFValueSource.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/TFValueSource.java (original)
+++ lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/TFValueSource.java Tue Dec 2 11:52:07 2014
@@ -17,7 +17,14 @@ package org.apache.lucene.queries.functi
* limitations under the License.
*/
-import org.apache.lucene.index.*;
+import java.io.IOException;
+import java.util.Map;
+
+import org.apache.lucene.index.DocsEnum;
+import org.apache.lucene.index.Fields;
+import org.apache.lucene.index.LeafReaderContext;
+import org.apache.lucene.index.Terms;
+import org.apache.lucene.index.TermsEnum;
import org.apache.lucene.queries.function.FunctionValues;
import org.apache.lucene.queries.function.docvalues.FloatDocValues;
import org.apache.lucene.search.DocIdSetIterator;
@@ -25,9 +32,6 @@ import org.apache.lucene.search.IndexSea
import org.apache.lucene.search.similarities.TFIDFSimilarity;
import org.apache.lucene.util.BytesRef;
-import java.io.IOException;
-import java.util.Map;
-
/**
* Function that returns {@link TFIDFSimilarity#tf(float)}
* for every document.
@@ -89,6 +93,31 @@ public class TFValueSource extends TermF
}
@Override
+ public int startPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int startOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public BytesRef getPayload() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
public int docID() {
return DocIdSetIterator.NO_MORE_DOCS;
}
Modified: lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/TermFreqValueSource.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/TermFreqValueSource.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/TermFreqValueSource.java (original)
+++ lucene/dev/branches/lucene2878/lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/TermFreqValueSource.java Tue Dec 2 11:52:07 2014
@@ -17,15 +17,19 @@
package org.apache.lucene.queries.function.valuesource;
-import org.apache.lucene.index.*;
+import java.io.IOException;
+import java.util.Map;
+
+import org.apache.lucene.index.DocsEnum;
+import org.apache.lucene.index.Fields;
+import org.apache.lucene.index.LeafReaderContext;
+import org.apache.lucene.index.Terms;
+import org.apache.lucene.index.TermsEnum;
import org.apache.lucene.queries.function.FunctionValues;
import org.apache.lucene.queries.function.docvalues.IntDocValues;
import org.apache.lucene.search.DocIdSetIterator;
import org.apache.lucene.util.BytesRef;
-import java.io.IOException;
-import java.util.Map;
-
/**
* Function that returns {@link DocsEnum#freq()} for the
* supplied term in every document.
@@ -78,7 +82,32 @@ public class TermFreqValueSource extends
@Override
public int nextPosition() throws IOException {
- return -1;
+ return NO_MORE_POSITIONS;
+ }
+
+ @Override
+ public int startPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int startOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public BytesRef getPayload() throws IOException {
+ throw new UnsupportedOperationException();
}
@Override
Modified: lucene/dev/branches/lucene2878/lucene/sandbox/src/java/org/apache/lucene/codecs/idversion/SingleDocsAndPositionsEnum.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/sandbox/src/java/org/apache/lucene/codecs/idversion/SingleDocsAndPositionsEnum.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/sandbox/src/java/org/apache/lucene/codecs/idversion/SingleDocsAndPositionsEnum.java (original)
+++ lucene/dev/branches/lucene2878/lucene/sandbox/src/java/org/apache/lucene/codecs/idversion/SingleDocsAndPositionsEnum.java Tue Dec 2 11:52:07 2014
@@ -17,6 +17,8 @@ package org.apache.lucene.codecs.idversi
* limitations under the License.
*/
+import java.io.IOException;
+
import org.apache.lucene.index.DocsEnum;
import org.apache.lucene.util.Bits;
import org.apache.lucene.util.BytesRef;
@@ -89,6 +91,16 @@ class SingleDocsAndPositionsEnum extends
}
@Override
+ public int startPosition() throws IOException {
+ return pos;
+ }
+
+ @Override
+ public int endPosition() throws IOException {
+ return pos;
+ }
+
+ @Override
public BytesRef getPayload() {
return payload;
}
Modified: lucene/dev/branches/lucene2878/lucene/sandbox/src/java/org/apache/lucene/codecs/idversion/SingleDocsEnum.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/sandbox/src/java/org/apache/lucene/codecs/idversion/SingleDocsEnum.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/sandbox/src/java/org/apache/lucene/codecs/idversion/SingleDocsEnum.java (original)
+++ lucene/dev/branches/lucene2878/lucene/sandbox/src/java/org/apache/lucene/codecs/idversion/SingleDocsEnum.java Tue Dec 2 11:52:07 2014
@@ -17,10 +17,11 @@ package org.apache.lucene.codecs.idversi
* limitations under the License.
*/
+import java.io.IOException;
+
import org.apache.lucene.index.DocsEnum;
import org.apache.lucene.util.Bits;
-
-import java.io.IOException;
+import org.apache.lucene.util.BytesRef;
class SingleDocsEnum extends DocsEnum {
@@ -73,6 +74,31 @@ class SingleDocsEnum extends DocsEnum {
@Override
public int nextPosition() throws IOException {
- return -1;
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int startPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endPosition() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int startOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int endOffset() throws IOException {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public BytesRef getPayload() throws IOException {
+ throw new UnsupportedOperationException();
}
}
Modified: lucene/dev/branches/lucene2878/lucene/sandbox/src/java/org/apache/lucene/search/TermAutomatonScorer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/sandbox/src/java/org/apache/lucene/search/TermAutomatonScorer.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/sandbox/src/java/org/apache/lucene/search/TermAutomatonScorer.java (original)
+++ lucene/dev/branches/lucene2878/lucene/sandbox/src/java/org/apache/lucene/search/TermAutomatonScorer.java Tue Dec 2 11:52:07 2014
@@ -17,6 +17,9 @@ package org.apache.lucene.search;
* limitations under the License.
*/
+import java.io.IOException;
+import java.util.Map;
+
import org.apache.lucene.search.TermAutomatonQuery.EnumAndScorer;
import org.apache.lucene.search.TermAutomatonQuery.TermAutomatonWeight;
import org.apache.lucene.search.similarities.Similarity;
@@ -27,9 +30,6 @@ import org.apache.lucene.util.RamUsageEs
import org.apache.lucene.util.automaton.Automaton;
import org.apache.lucene.util.automaton.RunAutomaton;
-import java.io.IOException;
-import java.util.Map;
-
class TermAutomatonScorer extends Scorer {
private final EnumAndScorer[] subs;
private final EnumAndScorer[] subsOnDoc;
@@ -331,6 +331,31 @@ class TermAutomatonScorer extends Scorer
}
@Override
+ public int startPosition() throws IOException {
+ return 0; // nocommit
+ }
+
+ @Override
+ public int endPosition() throws IOException {
+ return 0; // nocommit
+ }
+
+ @Override
+ public int startOffset() throws IOException {
+ return 0; // nocommit
+ }
+
+ @Override
+ public int endOffset() throws IOException {
+ return 0; // nocommit
+ }
+
+ @Override
+ public BytesRef getPayload() throws IOException {
+ return null; // nocommit
+ }
+
+ @Override
public int docID() {
return docID;
}
Modified: lucene/dev/branches/lucene2878/lucene/test-framework/src/java/org/apache/lucene/index/BasePostingsFormatTestCase.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/test-framework/src/java/org/apache/lucene/index/BasePostingsFormatTestCase.java?rev=1642844&r1=1642843&r2=1642844&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/test-framework/src/java/org/apache/lucene/index/BasePostingsFormatTestCase.java (original)
+++ lucene/dev/branches/lucene2878/lucene/test-framework/src/java/org/apache/lucene/index/BasePostingsFormatTestCase.java Tue Dec 2 11:52:07 2014
@@ -831,7 +831,7 @@ public abstract class BasePostingsFormat
prevDocsEnum = threadState.reuseDocsEnum;
}
- int flags = DocsEnum.FLAG_NONE;
+ int flags = DocsEnum.FLAG_POSITIONS;
if (alwaysTestMax || random().nextBoolean()) {
flags |= DocsEnum.FLAG_OFFSETS;
}