mirror of https://github.com/apache/lucene.git
LUCENE-2858: Move the ReaderContexts out of their enclosing classes and make top-level classes. Makes import statements not so verbose and its much easier to understand. Prevent subclassing of IndexReader and IndexReaderContext directly.
git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/branches/lucene2858@1237596 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
6d9a3c301e
commit
bfa1dec595
|
@ -29,9 +29,9 @@ import java.util.TreeSet;
|
|||
|
||||
import org.apache.lucene.analysis.CachingTokenFilter;
|
||||
import org.apache.lucene.analysis.TokenStream;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.memory.MemoryIndex;
|
||||
import org.apache.lucene.search.*;
|
||||
import org.apache.lucene.search.spans.FieldMaskingSpanQuery;
|
||||
|
|
|
@ -30,11 +30,11 @@ import org.apache.lucene.document.FieldType;
|
|||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.document.Field;
|
||||
import org.apache.lucene.document.TextField;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.CorruptIndexException;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.IndexWriter;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.search.Collector;
|
||||
import org.apache.lucene.search.IndexSearcher;
|
||||
import org.apache.lucene.search.PhraseQuery;
|
||||
|
|
|
@ -34,6 +34,7 @@ import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;
|
|||
import org.apache.lucene.analysis.tokenattributes.TermToBytesRefAttribute;
|
||||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.index.AtomicReader;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Norm;
|
||||
import org.apache.lucene.index.DocValues;
|
||||
import org.apache.lucene.index.DocsAndPositionsEnum;
|
||||
|
@ -42,7 +43,6 @@ import org.apache.lucene.index.FieldInfos;
|
|||
import org.apache.lucene.index.FieldInvertState;
|
||||
import org.apache.lucene.index.Fields;
|
||||
import org.apache.lucene.index.FieldsEnum;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.OrdTermState;
|
||||
import org.apache.lucene.index.StoredFieldVisitor;
|
||||
|
|
|
@ -20,7 +20,6 @@ package org.apache.lucene.index;
|
|||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.IndexWriterConfig.OpenMode;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.search.DocIdSet;
|
||||
import org.apache.lucene.search.DocIdSetIterator;
|
||||
import org.apache.lucene.search.Filter;
|
||||
|
|
|
@ -17,7 +17,6 @@ package org.apache.lucene.sandbox.queries;
|
|||
*/
|
||||
|
||||
import org.apache.lucene.index.*;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.search.DocIdSet;
|
||||
import org.apache.lucene.search.Filter;
|
||||
import org.apache.lucene.util.Bits;
|
||||
|
|
|
@ -20,7 +20,7 @@ package org.apache.lucene.sandbox.queries;
|
|||
import java.io.IOException;
|
||||
import java.text.Collator;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.search.FieldCache;
|
||||
import org.apache.lucene.search.FieldCache.DocTerms;
|
||||
import org.apache.lucene.search.FieldComparator;
|
||||
|
|
|
@ -19,7 +19,7 @@ package org.apache.lucene.spatial.geohash;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.search.FieldCache;
|
||||
import org.apache.lucene.search.FieldCache.DocTerms;
|
||||
import org.apache.lucene.search.Filter;
|
||||
|
|
|
@ -19,8 +19,8 @@ package org.apache.lucene.spatial.tier;
|
|||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.DocsEnum;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.search.Filter;
|
||||
import org.apache.lucene.search.DocIdSet;
|
||||
import org.apache.lucene.search.DocIdSetIterator;
|
||||
|
|
|
@ -19,7 +19,7 @@ package org.apache.lucene.spatial.tier;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.search.Filter;
|
||||
import org.apache.lucene.search.FieldComparator;
|
||||
import org.apache.lucene.search.FieldComparatorSource;
|
||||
|
|
|
@ -19,7 +19,7 @@ package org.apache.lucene.spatial.tier;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.search.FilteredDocIdSet;
|
||||
import org.apache.lucene.search.FieldCache;
|
||||
import org.apache.lucene.search.Filter;
|
||||
|
|
|
@ -23,8 +23,8 @@ import org.apache.lucene.document.Document;
|
|||
import org.apache.lucene.document.FieldType;
|
||||
import org.apache.lucene.document.NumericField;
|
||||
import org.apache.lucene.document.TextField;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.FieldInfo.IndexOptions;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.IndexWriter;
|
||||
import org.apache.lucene.index.Term;
|
||||
|
|
|
@ -19,7 +19,6 @@ package org.apache.lucene.index;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.CompositeReader.CompositeReaderContext;
|
||||
import org.apache.lucene.search.SearcherManager; // javadocs
|
||||
import org.apache.lucene.store.*;
|
||||
import org.apache.lucene.util.Bits;
|
||||
|
@ -277,47 +276,4 @@ public abstract class AtomicReader extends IndexReader {
|
|||
* synchronization.
|
||||
*/
|
||||
public abstract Bits getLiveDocs();
|
||||
|
||||
/**
|
||||
* {@link ReaderContext} for {@link AtomicReader} instances
|
||||
* @lucene.experimental
|
||||
*/
|
||||
public static final class AtomicReaderContext extends ReaderContext {
|
||||
/** The readers ord in the top-level's leaves array */
|
||||
public final int ord;
|
||||
/** The readers absolute doc base */
|
||||
public final int docBase;
|
||||
|
||||
private final AtomicReader reader;
|
||||
|
||||
/**
|
||||
* Creates a new {@link AtomicReaderContext}
|
||||
*/
|
||||
AtomicReaderContext(CompositeReaderContext parent, AtomicReader reader,
|
||||
int ord, int docBase, int leafOrd, int leafDocBase) {
|
||||
super(parent, ord, docBase);
|
||||
this.ord = leafOrd;
|
||||
this.docBase = leafDocBase;
|
||||
this.reader = reader;
|
||||
}
|
||||
|
||||
AtomicReaderContext(AtomicReader atomicReader) {
|
||||
this(null, atomicReader, 0, 0, 0, 0);
|
||||
}
|
||||
|
||||
@Override
|
||||
public AtomicReaderContext[] leaves() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReaderContext[] children() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AtomicReader reader() {
|
||||
return reader;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,61 @@
|
|||
package org.apache.lucene.index;
|
||||
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
/**
|
||||
* {@link IndexReaderContext} for {@link AtomicReader} instances
|
||||
* @lucene.experimental
|
||||
*/
|
||||
public final class AtomicReaderContext extends IndexReaderContext {
|
||||
/** The readers ord in the top-level's leaves array */
|
||||
public final int ord;
|
||||
/** The readers absolute doc base */
|
||||
public final int docBase;
|
||||
|
||||
private final AtomicReader reader;
|
||||
|
||||
/**
|
||||
* Creates a new {@link AtomicReaderContext}
|
||||
*/
|
||||
AtomicReaderContext(CompositeReaderContext parent, AtomicReader reader,
|
||||
int ord, int docBase, int leafOrd, int leafDocBase) {
|
||||
super(parent, ord, docBase);
|
||||
this.ord = leafOrd;
|
||||
this.docBase = leafDocBase;
|
||||
this.reader = reader;
|
||||
}
|
||||
|
||||
AtomicReaderContext(AtomicReader atomicReader) {
|
||||
this(null, atomicReader, 0, 0, 0, 0);
|
||||
}
|
||||
|
||||
@Override
|
||||
public AtomicReaderContext[] leaves() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IndexReaderContext[] children() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AtomicReader reader() {
|
||||
return reader;
|
||||
}
|
||||
}
|
|
@ -25,7 +25,6 @@ import java.util.Collections;
|
|||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
import java.util.concurrent.atomic.AtomicLong;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.search.DocIdSet;
|
||||
import org.apache.lucene.search.DocIdSetIterator;
|
||||
import org.apache.lucene.search.Query;
|
||||
|
|
|
@ -19,7 +19,6 @@ package org.apache.lucene.index;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.search.SearcherManager; // javadocs
|
||||
import org.apache.lucene.store.*;
|
||||
import org.apache.lucene.util.ReaderUtil;
|
||||
|
@ -79,17 +78,6 @@ public abstract class CompositeReader extends IndexReader {
|
|||
buffer.append(')');
|
||||
return buffer.toString();
|
||||
}
|
||||
|
||||
@Override
|
||||
public final CompositeReaderContext getTopReaderContext() {
|
||||
ensureOpen();
|
||||
// lazy init without thread safety for perf resaons: Building the readerContext twice does not hurt!
|
||||
if (readerContext == null) {
|
||||
assert getSequentialSubReaders() != null;
|
||||
readerContext = (CompositeReaderContext) new ReaderContextBuilder(this).build();
|
||||
}
|
||||
return readerContext;
|
||||
}
|
||||
|
||||
/** Expert: returns the sequential sub readers that this
|
||||
* reader is logically composed of. It contrast to previous
|
||||
|
@ -99,89 +87,49 @@ public abstract class CompositeReader extends IndexReader {
|
|||
* that has no sub readers).
|
||||
*/
|
||||
public abstract IndexReader[] getSequentialSubReaders();
|
||||
|
||||
/**
|
||||
* {@link ReaderContext} for {@link CompositeReader} instance.
|
||||
* @lucene.experimental
|
||||
*/
|
||||
public static final class CompositeReaderContext extends ReaderContext {
|
||||
private final ReaderContext[] children;
|
||||
private final AtomicReaderContext[] leaves;
|
||||
private final CompositeReader reader;
|
||||
|
||||
/**
|
||||
* Creates a {@link CompositeReaderContext} for intermediate readers that aren't
|
||||
* not top-level readers in the current context
|
||||
*/
|
||||
CompositeReaderContext(CompositeReaderContext parent, CompositeReader reader,
|
||||
int ordInParent, int docbaseInParent, ReaderContext[] children) {
|
||||
this(parent, reader, ordInParent, docbaseInParent, children, null);
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a {@link CompositeReaderContext} for top-level readers with parent set to <code>null</code>
|
||||
*/
|
||||
CompositeReaderContext(CompositeReader reader, ReaderContext[] children, AtomicReaderContext[] leaves) {
|
||||
this(null, reader, 0, 0, children, leaves);
|
||||
}
|
||||
|
||||
private CompositeReaderContext(CompositeReaderContext parent, CompositeReader reader,
|
||||
int ordInParent, int docbaseInParent, ReaderContext[] children,
|
||||
AtomicReaderContext[] leaves) {
|
||||
super(parent, ordInParent, docbaseInParent);
|
||||
this.children = children;
|
||||
this.leaves = leaves;
|
||||
this.reader = reader;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AtomicReaderContext[] leaves() {
|
||||
return leaves;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public ReaderContext[] children() {
|
||||
return children;
|
||||
}
|
||||
|
||||
@Override
|
||||
public CompositeReader reader() {
|
||||
return reader;
|
||||
@Override
|
||||
public final CompositeReaderContext getTopReaderContext() {
|
||||
ensureOpen();
|
||||
// lazy init without thread safety for perf reasons: Building the readerContext twice does not hurt!
|
||||
if (readerContext == null) {
|
||||
assert getSequentialSubReaders() != null;
|
||||
readerContext = new ReaderContextBuilder(this).build();
|
||||
}
|
||||
return readerContext;
|
||||
}
|
||||
|
||||
|
||||
private static class ReaderContextBuilder {
|
||||
private final IndexReader reader;
|
||||
private final CompositeReader reader;
|
||||
private final AtomicReaderContext[] leaves;
|
||||
private int leafOrd = 0;
|
||||
private int leafDocBase = 0;
|
||||
public ReaderContextBuilder(IndexReader reader) {
|
||||
public ReaderContextBuilder(CompositeReader reader) {
|
||||
this.reader = reader;
|
||||
leaves = new AtomicReaderContext[numLeaves(reader)];
|
||||
}
|
||||
|
||||
public ReaderContext build() {
|
||||
return build(null, reader, 0, 0);
|
||||
public CompositeReaderContext build() {
|
||||
return (CompositeReaderContext) build(null, reader, 0, 0);
|
||||
}
|
||||
|
||||
private ReaderContext build(CompositeReaderContext parent, IndexReader reader, int ord, int docBase) {
|
||||
private IndexReaderContext build(CompositeReaderContext parent, IndexReader reader, int ord, int docBase) {
|
||||
if (reader instanceof AtomicReader) {
|
||||
AtomicReaderContext atomic = new AtomicReaderContext(parent, (AtomicReader) reader, ord, docBase, leafOrd, leafDocBase);
|
||||
final AtomicReader ar = (AtomicReader) reader;
|
||||
final AtomicReaderContext atomic = new AtomicReaderContext(parent, ar, ord, docBase, leafOrd, leafDocBase);
|
||||
leaves[leafOrd++] = atomic;
|
||||
leafDocBase += reader.maxDoc();
|
||||
return atomic;
|
||||
} else {
|
||||
CompositeReader cr = (CompositeReader) reader;
|
||||
IndexReader[] sequentialSubReaders = cr.getSequentialSubReaders();
|
||||
ReaderContext[] children = new ReaderContext[sequentialSubReaders.length];
|
||||
final CompositeReader cr = (CompositeReader) reader;
|
||||
final IndexReader[] sequentialSubReaders = cr.getSequentialSubReaders();
|
||||
final IndexReaderContext[] children = new IndexReaderContext[sequentialSubReaders.length];
|
||||
final CompositeReaderContext newParent;
|
||||
if (parent == null) {
|
||||
newParent = new CompositeReaderContext(cr, children, leaves);
|
||||
} else {
|
||||
newParent = new CompositeReaderContext(parent, cr, ord, docBase, children);
|
||||
}
|
||||
|
||||
int newDocBase = 0;
|
||||
for (int i = 0; i < sequentialSubReaders.length; i++) {
|
||||
children[i] = build(newParent, sequentialSubReaders[i], i, newDocBase);
|
||||
|
|
|
@ -0,0 +1,69 @@
|
|||
package org.apache.lucene.index;
|
||||
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
/**
|
||||
* {@link IndexReaderContext} for {@link CompositeReader} instance.
|
||||
* @lucene.experimental
|
||||
*/
|
||||
public final class CompositeReaderContext extends IndexReaderContext {
|
||||
private final IndexReaderContext[] children;
|
||||
private final AtomicReaderContext[] leaves;
|
||||
private final CompositeReader reader;
|
||||
|
||||
/**
|
||||
* Creates a {@link CompositeReaderContext} for intermediate readers that aren't
|
||||
* not top-level readers in the current context
|
||||
*/
|
||||
CompositeReaderContext(CompositeReaderContext parent, CompositeReader reader,
|
||||
int ordInParent, int docbaseInParent, IndexReaderContext[] children) {
|
||||
this(parent, reader, ordInParent, docbaseInParent, children, null);
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a {@link CompositeReaderContext} for top-level readers with parent set to <code>null</code>
|
||||
*/
|
||||
CompositeReaderContext(CompositeReader reader, IndexReaderContext[] children, AtomicReaderContext[] leaves) {
|
||||
this(null, reader, 0, 0, children, leaves);
|
||||
}
|
||||
|
||||
private CompositeReaderContext(CompositeReaderContext parent, CompositeReader reader,
|
||||
int ordInParent, int docbaseInParent, IndexReaderContext[] children,
|
||||
AtomicReaderContext[] leaves) {
|
||||
super(parent, ordInParent, docbaseInParent);
|
||||
this.children = children;
|
||||
this.leaves = leaves;
|
||||
this.reader = reader;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AtomicReaderContext[] leaves() {
|
||||
return leaves;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public IndexReaderContext[] children() {
|
||||
return children;
|
||||
}
|
||||
|
||||
@Override
|
||||
public CompositeReader reader() {
|
||||
return reader;
|
||||
}
|
||||
}
|
|
@ -24,8 +24,6 @@ import java.util.LinkedHashSet;
|
|||
import java.util.Set;
|
||||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
|
||||
import org.apache.lucene.index.CompositeReader.CompositeReaderContext;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.document.DocumentStoredFieldVisitor;
|
||||
import org.apache.lucene.search.SearcherManager; // javadocs
|
||||
|
@ -67,7 +65,13 @@ import org.apache.lucene.util.ReaderUtil; // for javadocs
|
|||
(non-Lucene) objects instead.
|
||||
*/
|
||||
public abstract class IndexReader implements Closeable {
|
||||
|
||||
|
||||
IndexReader() {
|
||||
if (!(this instanceof CompositeReader || this instanceof AtomicReader))
|
||||
throw new Error("This class should never be directly extended, subclass AtomicReader or CompositeReader instead!");
|
||||
refCount.set(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* A custom listener that's invoked when the IndexReader
|
||||
* is closed.
|
||||
|
@ -200,10 +204,6 @@ public abstract class IndexReader implements Closeable {
|
|||
}
|
||||
}
|
||||
|
||||
protected IndexReader() {
|
||||
refCount.set(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* @throws AlreadyClosedException if this IndexReader is closed
|
||||
*/
|
||||
|
@ -408,12 +408,12 @@ public abstract class IndexReader implements Closeable {
|
|||
protected abstract void doClose() throws IOException;
|
||||
|
||||
/**
|
||||
* Expert: Returns a the root {@link ReaderContext} for this
|
||||
* Expert: Returns a the root {@link IndexReaderContext} for this
|
||||
* {@link IndexReader}'s sub-reader tree. Iff this reader is composed of sub
|
||||
* readers ,ie. this reader being a composite reader, this method returns a
|
||||
* {@link CompositeReaderContext} holding the reader's direct children as well as a
|
||||
* view of the reader tree's atomic leaf contexts. All sub-
|
||||
* {@link ReaderContext} instances referenced from this readers top-level
|
||||
* {@link IndexReaderContext} instances referenced from this readers top-level
|
||||
* context are private to this reader and are not shared with another context
|
||||
* tree. For example, IndexSearcher uses this API to drive searching by one
|
||||
* atomic leaf reader at a time. If this reader is not composed of child
|
||||
|
@ -426,7 +426,7 @@ public abstract class IndexReader implements Closeable {
|
|||
*
|
||||
* @lucene.experimental
|
||||
*/
|
||||
public abstract ReaderContext getTopReaderContext();
|
||||
public abstract IndexReaderContext getTopReaderContext();
|
||||
|
||||
/** Expert: Returns a key for this IndexReader, so FieldCache/CachingWrapperFilter can find
|
||||
* it again.
|
||||
|
@ -456,48 +456,4 @@ public abstract class IndexReader implements Closeable {
|
|||
* account deleted documents that have not yet been merged
|
||||
* away. */
|
||||
public abstract int docFreq(String field, BytesRef term) throws IOException;
|
||||
|
||||
/**
|
||||
* A struct like class that represents a hierarchical relationship between
|
||||
* {@link IndexReader} instances.
|
||||
* @lucene.experimental
|
||||
*/
|
||||
public static abstract class ReaderContext {
|
||||
/** The reader context for this reader's immediate parent, or null if none */
|
||||
public final CompositeReaderContext parent;
|
||||
/** <code>true</code> if this context struct represents the top level reader within the hierarchical context */
|
||||
public final boolean isTopLevel;
|
||||
/** the doc base for this reader in the parent, <tt>0</tt> if parent is null */
|
||||
public final int docBaseInParent;
|
||||
/** the ord for this reader in the parent, <tt>0</tt> if parent is null */
|
||||
public final int ordInParent;
|
||||
|
||||
ReaderContext(CompositeReaderContext parent, int ordInParent, int docBaseInParent) {
|
||||
this.parent = parent;
|
||||
this.docBaseInParent = docBaseInParent;
|
||||
this.ordInParent = ordInParent;
|
||||
this.isTopLevel = parent==null;
|
||||
}
|
||||
|
||||
public abstract IndexReader reader();
|
||||
|
||||
/**
|
||||
* Returns the context's leaves if this context is a top-level context
|
||||
* otherwise <code>null</code>.
|
||||
* <p>
|
||||
* Note: this is convenience method since leaves can always be obtained by
|
||||
* walking the context tree.
|
||||
*/
|
||||
public abstract AtomicReaderContext[] leaves();
|
||||
|
||||
/**
|
||||
* Returns the context's children iff this context is a composite context
|
||||
* otherwise <code>null</code>.
|
||||
* <p>
|
||||
* Note: this method is a convenience method to prevent
|
||||
* <code>instanceof</code> checks and type-casts to
|
||||
* {@link CompositeReaderContext}.
|
||||
*/
|
||||
public abstract ReaderContext[] children();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,64 @@
|
|||
package org.apache.lucene.index;
|
||||
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
/**
|
||||
* A struct like class that represents a hierarchical relationship between
|
||||
* {@link IndexReader} instances.
|
||||
* @lucene.experimental
|
||||
*/
|
||||
public abstract class IndexReaderContext {
|
||||
/** The reader context for this reader's immediate parent, or null if none */
|
||||
public final CompositeReaderContext parent;
|
||||
/** <code>true</code> if this context struct represents the top level reader within the hierarchical context */
|
||||
public final boolean isTopLevel;
|
||||
/** the doc base for this reader in the parent, <tt>0</tt> if parent is null */
|
||||
public final int docBaseInParent;
|
||||
/** the ord for this reader in the parent, <tt>0</tt> if parent is null */
|
||||
public final int ordInParent;
|
||||
|
||||
IndexReaderContext(CompositeReaderContext parent, int ordInParent, int docBaseInParent) {
|
||||
if (!(this instanceof CompositeReaderContext || this instanceof AtomicReaderContext))
|
||||
throw new Error("This class should never be extended by custom code!");
|
||||
this.parent = parent;
|
||||
this.docBaseInParent = docBaseInParent;
|
||||
this.ordInParent = ordInParent;
|
||||
this.isTopLevel = parent==null;
|
||||
}
|
||||
|
||||
public abstract IndexReader reader();
|
||||
|
||||
/**
|
||||
* Returns the context's leaves if this context is a top-level context
|
||||
* otherwise <code>null</code>.
|
||||
* <p>
|
||||
* Note: this is convenience method since leaves can always be obtained by
|
||||
* walking the context tree.
|
||||
*/
|
||||
public abstract AtomicReaderContext[] leaves();
|
||||
|
||||
/**
|
||||
* Returns the context's children iff this context is a composite context
|
||||
* otherwise <code>null</code>.
|
||||
* <p>
|
||||
* Note: this method is a convenience method to prevent
|
||||
* <code>instanceof</code> checks and type-casts to
|
||||
* {@link CompositeReaderContext}.
|
||||
*/
|
||||
public abstract IndexReaderContext[] children();
|
||||
}
|
|
@ -20,8 +20,8 @@ package org.apache.lucene.search;
|
|||
import java.io.IOException;
|
||||
import java.util.*;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.DocsEnum;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.index.TermsEnum;
|
||||
|
|
|
@ -22,7 +22,7 @@ import java.util.ArrayList;
|
|||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.search.BooleanClause.Occur;
|
||||
import org.apache.lucene.search.BooleanQuery.BooleanWeight;
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ package org.apache.lucene.search;
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.util.RamUsageEstimator;
|
||||
|
||||
import java.io.IOException;
|
||||
|
|
|
@ -23,7 +23,7 @@ import java.util.Map;
|
|||
import java.util.WeakHashMap;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.util.FixedBitSet;
|
||||
import org.apache.lucene.util.Bits;
|
||||
|
||||
|
|
|
@ -19,8 +19,8 @@ package org.apache.lucene.search;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader.ReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReaderContext;
|
||||
|
||||
/**
|
||||
* <p>Expert: Collectors are primarily meant to be used to
|
||||
|
@ -145,9 +145,9 @@ public abstract class Collector {
|
|||
|
||||
/**
|
||||
* Called before collecting from each {@link AtomicReaderContext}. All doc ids in
|
||||
* {@link #collect(int)} will correspond to {@link ReaderContext#reader}.
|
||||
* {@link #collect(int)} will correspond to {@link IndexReaderContext#reader}.
|
||||
*
|
||||
* Add {@link AtomicReaderContext#docBase} to the current {@link ReaderContext#reader}'s
|
||||
* Add {@link AtomicReaderContext#docBase} to the current {@link IndexReaderContext#reader}'s
|
||||
* internal document id to re-base ids in {@link #collect(int)}.
|
||||
*
|
||||
* @param context
|
||||
|
|
|
@ -17,8 +17,8 @@ package org.apache.lucene.search;
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.util.Bits;
|
||||
import org.apache.lucene.util.ToStringUtils;
|
||||
|
|
|
@ -22,8 +22,8 @@ import java.util.Collection;
|
|||
import java.util.Iterator;
|
||||
import java.util.Set;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.util.Bits;
|
||||
|
||||
|
|
|
@ -18,8 +18,8 @@ package org.apache.lucene.search;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.util.NumericUtils;
|
||||
import org.apache.lucene.util.Bits;
|
||||
import org.apache.lucene.util.BytesRef;
|
||||
|
|
|
@ -19,9 +19,9 @@ package org.apache.lucene.search;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.DocsEnum; // javadoc @link
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.util.FixedBitSet;
|
||||
import org.apache.lucene.util.Bits;
|
||||
import org.apache.lucene.util.BytesRef;
|
||||
|
|
|
@ -20,7 +20,7 @@ package org.apache.lucene.search;
|
|||
import java.io.IOException;
|
||||
import java.util.Comparator;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.DocValues;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.search.FieldCache.ByteParser;
|
||||
|
|
|
@ -18,7 +18,7 @@ package org.apache.lucene.search;
|
|||
*/
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.util.Bits;
|
||||
import org.apache.lucene.util.Bits.MatchAllBits;
|
||||
import org.apache.lucene.util.Bits.MatchNoBits;
|
||||
|
|
|
@ -19,8 +19,8 @@ package org.apache.lucene.search;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader; // javadocs
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.util.Bits;
|
||||
|
||||
/**
|
||||
|
|
|
@ -17,8 +17,8 @@ package org.apache.lucene.search;
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.util.Bits;
|
||||
import org.apache.lucene.util.ToStringUtils;
|
||||
|
|
|
@ -31,11 +31,11 @@ import java.util.concurrent.locks.Lock;
|
|||
import java.util.concurrent.locks.ReentrantLock;
|
||||
|
||||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.CorruptIndexException;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader.ReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.MultiFields;
|
||||
import org.apache.lucene.index.IndexReaderContext;
|
||||
import org.apache.lucene.index.StoredFieldVisitor;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.index.Terms;
|
||||
|
@ -76,7 +76,7 @@ public class IndexSearcher {
|
|||
|
||||
// NOTE: these members might change in incompatible ways
|
||||
// in the next release
|
||||
protected final ReaderContext readerContext;
|
||||
protected final IndexReaderContext readerContext;
|
||||
protected final AtomicReaderContext[] leafContexts;
|
||||
// used with executor - each slice holds a set of leafs executed within one thread
|
||||
protected final LeafSlice[] leafSlices;
|
||||
|
@ -122,7 +122,7 @@ public class IndexSearcher {
|
|||
}
|
||||
|
||||
/**
|
||||
* Creates a searcher searching the provided top-level {@link ReaderContext}.
|
||||
* Creates a searcher searching the provided top-level {@link IndexReaderContext}.
|
||||
* <p>
|
||||
* Given a non-<code>null</code> {@link ExecutorService} this method runs
|
||||
* searches for each segment separately, using the provided ExecutorService.
|
||||
|
@ -133,11 +133,11 @@ public class IndexSearcher {
|
|||
* silently close file descriptors (see <a
|
||||
* href="https://issues.apache.org/jira/browse/LUCENE-2239">LUCENE-2239</a>).
|
||||
*
|
||||
* @see ReaderContext
|
||||
* @see IndexReaderContext
|
||||
* @see IndexReader#getTopReaderContext()
|
||||
* @lucene.experimental
|
||||
*/
|
||||
public IndexSearcher(ReaderContext context, ExecutorService executor) {
|
||||
public IndexSearcher(IndexReaderContext context, ExecutorService executor) {
|
||||
assert context.isTopLevel: "IndexSearcher's ReaderContext must be topLevel for reader" + context.reader();
|
||||
reader = context.reader();
|
||||
this.executor = executor;
|
||||
|
@ -147,13 +147,13 @@ public class IndexSearcher {
|
|||
}
|
||||
|
||||
/**
|
||||
* Creates a searcher searching the provided top-level {@link ReaderContext}.
|
||||
* Creates a searcher searching the provided top-level {@link IndexReaderContext}.
|
||||
*
|
||||
* @see ReaderContext
|
||||
* @see IndexReaderContext
|
||||
* @see IndexReader#getTopReaderContext()
|
||||
* @lucene.experimental
|
||||
*/
|
||||
public IndexSearcher(ReaderContext context) {
|
||||
public IndexSearcher(IndexReaderContext context) {
|
||||
this(context, null);
|
||||
}
|
||||
|
||||
|
@ -589,11 +589,11 @@ public class IndexSearcher {
|
|||
}
|
||||
|
||||
/**
|
||||
* Returns this searchers the top-level {@link ReaderContext}.
|
||||
* Returns this searchers the top-level {@link IndexReaderContext}.
|
||||
* @see IndexReader#getTopReaderContext()
|
||||
*/
|
||||
/* sugar for #getReader().getTopReaderContext() */
|
||||
public ReaderContext getTopReaderContext() {
|
||||
public IndexReaderContext getTopReaderContext() {
|
||||
return readerContext;
|
||||
}
|
||||
|
||||
|
|
|
@ -17,8 +17,8 @@ package org.apache.lucene.search;
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.util.ToStringUtils;
|
||||
import org.apache.lucene.util.Bits;
|
||||
|
|
|
@ -19,7 +19,7 @@ package org.apache.lucene.search;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.search.Collector;
|
||||
import org.apache.lucene.search.Scorer;
|
||||
|
||||
|
|
|
@ -20,12 +20,12 @@ package org.apache.lucene.search;
|
|||
import java.io.IOException;
|
||||
import java.util.*;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.DocsAndPositionsEnum;
|
||||
import org.apache.lucene.index.DocsEnum;
|
||||
import org.apache.lucene.index.AtomicReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader.ReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.IndexReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.index.TermState;
|
||||
import org.apache.lucene.index.Terms;
|
||||
|
@ -143,7 +143,7 @@ public class MultiPhraseQuery extends Query {
|
|||
public MultiPhraseWeight(IndexSearcher searcher)
|
||||
throws IOException {
|
||||
this.similarity = searcher.getSimilarityProvider().get(field);
|
||||
final ReaderContext context = searcher.getTopReaderContext();
|
||||
final IndexReaderContext context = searcher.getTopReaderContext();
|
||||
|
||||
// compute idf
|
||||
ArrayList<TermStatistics> allTermStats = new ArrayList<TermStatistics>();
|
||||
|
|
|
@ -19,9 +19,9 @@ package org.apache.lucene.search;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.DocsEnum;
|
||||
import org.apache.lucene.index.Fields;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReader;
|
||||
import org.apache.lucene.index.Terms;
|
||||
import org.apache.lucene.index.TermsEnum;
|
||||
|
|
|
@ -21,11 +21,11 @@ import java.io.IOException;
|
|||
import java.util.ArrayList;
|
||||
import java.util.Set;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.DocsAndPositionsEnum;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader.ReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader;
|
||||
import org.apache.lucene.index.IndexReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.index.TermState;
|
||||
import org.apache.lucene.index.Terms;
|
||||
|
@ -189,7 +189,7 @@ public class PhraseQuery extends Query {
|
|||
public PhraseWeight(IndexSearcher searcher)
|
||||
throws IOException {
|
||||
this.similarity = searcher.getSimilarityProvider().get(field);
|
||||
final ReaderContext context = searcher.getTopReaderContext();
|
||||
final IndexReaderContext context = searcher.getTopReaderContext();
|
||||
states = new TermContext[terms.size()];
|
||||
TermStatistics termStats[] = new TermStatistics[terms.size()];
|
||||
for (int i = 0; i < terms.size(); i++) {
|
||||
|
|
|
@ -19,7 +19,7 @@ package org.apache.lucene.search;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
|
||||
/**
|
||||
* A {@link Collector} implementation which wraps another
|
||||
|
|
|
@ -19,7 +19,7 @@ package org.apache.lucene.search;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.util.Bits;
|
||||
|
||||
/**
|
||||
|
|
|
@ -20,13 +20,13 @@ package org.apache.lucene.search;
|
|||
import java.io.IOException;
|
||||
import java.util.Comparator;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Fields;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.IndexReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.index.Terms;
|
||||
import org.apache.lucene.index.TermsEnum;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader.ReaderContext;
|
||||
import org.apache.lucene.util.AttributeSource;
|
||||
import org.apache.lucene.util.BytesRef;
|
||||
import org.apache.lucene.util.TermContext;
|
||||
|
@ -47,7 +47,7 @@ abstract class TermCollectingRewrite<Q extends Query> extends MultiTermQuery.Rew
|
|||
|
||||
|
||||
protected final void collectTerms(IndexReader reader, MultiTermQuery query, TermCollector collector) throws IOException {
|
||||
ReaderContext topReaderContext = reader.getTopReaderContext();
|
||||
IndexReaderContext topReaderContext = reader.getTopReaderContext();
|
||||
Comparator<BytesRef> lastTermComp = null;
|
||||
final AtomicReaderContext[] leaves = ReaderUtil.leaves(topReaderContext);
|
||||
for (AtomicReaderContext context : leaves) {
|
||||
|
@ -87,9 +87,9 @@ abstract class TermCollectingRewrite<Q extends Query> extends MultiTermQuery.Rew
|
|||
protected static abstract class TermCollector {
|
||||
|
||||
protected AtomicReaderContext readerContext;
|
||||
protected ReaderContext topReaderContext;
|
||||
protected IndexReaderContext topReaderContext;
|
||||
|
||||
public void setReaderContext(ReaderContext topReaderContext, AtomicReaderContext readerContext) {
|
||||
public void setReaderContext(IndexReaderContext topReaderContext, AtomicReaderContext readerContext) {
|
||||
this.readerContext = readerContext;
|
||||
this.topReaderContext = topReaderContext;
|
||||
}
|
||||
|
|
|
@ -20,10 +20,10 @@ package org.apache.lucene.search;
|
|||
import java.io.IOException;
|
||||
import java.util.Set;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.DocsEnum;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader.ReaderContext;
|
||||
import org.apache.lucene.index.AtomicReader;
|
||||
import org.apache.lucene.index.IndexReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.index.TermState;
|
||||
import org.apache.lucene.index.TermsEnum;
|
||||
|
@ -173,7 +173,7 @@ public class TermQuery extends Query {
|
|||
|
||||
@Override
|
||||
public Weight createWeight(IndexSearcher searcher) throws IOException {
|
||||
final ReaderContext context = searcher.getTopReaderContext();
|
||||
final IndexReaderContext context = searcher.getTopReaderContext();
|
||||
final TermContext termState;
|
||||
if (perReaderTermState == null || perReaderTermState.topReaderContext != context) {
|
||||
// make TermQuery single-pass if we don't have a PRTS or if the context differs!
|
||||
|
|
|
@ -19,7 +19,7 @@ package org.apache.lucene.search;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.util.Counter;
|
||||
import org.apache.lucene.util.ThreadInterruptedException;
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@ package org.apache.lucene.search;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.search.FieldValueHitQueue.Entry;
|
||||
import org.apache.lucene.util.PriorityQueue;
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@ package org.apache.lucene.search;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
|
||||
/**
|
||||
* A {@link Collector} implementation that collects the top-scoring hits,
|
||||
|
|
|
@ -17,7 +17,7 @@ package org.apache.lucene.search;
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
|
||||
/**
|
||||
* Just counts the total number of hits.
|
||||
|
|
|
@ -19,9 +19,9 @@ package org.apache.lucene.search;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader.ReaderContext;
|
||||
import org.apache.lucene.index.IndexReaderContext;
|
||||
import org.apache.lucene.search.similarities.SimilarityProvider;
|
||||
import org.apache.lucene.util.Bits;
|
||||
|
||||
|
@ -38,7 +38,7 @@ import org.apache.lucene.util.Bits;
|
|||
* {@link AtomicReaderContext} ({@link #scorer(IndexReader.AtomicReaderContext,
|
||||
* boolean, boolean, Bits)})
|
||||
* callers must maintain the relationship between the searcher's top-level
|
||||
* {@link ReaderContext} and the context used to create a {@link Scorer}.
|
||||
* {@link IndexReaderContext} and the context used to create a {@link Scorer}.
|
||||
* <p>
|
||||
* A <code>Weight</code> is used in the following way:
|
||||
* <ol>
|
||||
|
|
|
@ -17,7 +17,7 @@ package org.apache.lucene.search.payloads;
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.search.ComplexExplanation;
|
||||
import org.apache.lucene.search.Explanation;
|
||||
import org.apache.lucene.search.Scorer;
|
||||
|
|
|
@ -26,9 +26,9 @@ import java.util.List;
|
|||
import java.util.Map;
|
||||
import java.util.TreeSet;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader.ReaderContext;
|
||||
import org.apache.lucene.index.IndexReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.search.BooleanClause;
|
||||
import org.apache.lucene.search.BooleanQuery;
|
||||
|
@ -55,7 +55,7 @@ import org.apache.lucene.util.TermContext;
|
|||
*
|
||||
*/
|
||||
public class PayloadSpanUtil {
|
||||
private ReaderContext context;
|
||||
private IndexReaderContext context;
|
||||
|
||||
/**
|
||||
* @param context
|
||||
|
@ -63,7 +63,7 @@ public class PayloadSpanUtil {
|
|||
*
|
||||
* @see IndexReader#getTopReaderContext()
|
||||
*/
|
||||
public PayloadSpanUtil(ReaderContext context) {
|
||||
public PayloadSpanUtil(IndexReaderContext context) {
|
||||
this.context = context;
|
||||
}
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ package org.apache.lucene.search.payloads;
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.index.DocsAndPositionsEnum;
|
||||
import org.apache.lucene.search.IndexSearcher;
|
||||
|
|
|
@ -19,9 +19,9 @@ package org.apache.lucene.search.similarities;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.DocValues;
|
||||
import org.apache.lucene.index.FieldInvertState;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Norm;
|
||||
import org.apache.lucene.search.CollectionStatistics;
|
||||
import org.apache.lucene.search.Explanation;
|
||||
|
|
|
@ -19,8 +19,8 @@ package org.apache.lucene.search.similarities;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.FieldInvertState;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Norm;
|
||||
import org.apache.lucene.search.CollectionStatistics;
|
||||
import org.apache.lucene.search.Explanation;
|
||||
|
|
|
@ -21,9 +21,9 @@ package org.apache.lucene.search.similarities;
|
|||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.document.DocValuesField; // javadoc
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.FieldInvertState;
|
||||
import org.apache.lucene.index.IndexReader; // javadoc
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Norm;
|
||||
import org.apache.lucene.index.Terms; // javadoc
|
||||
import org.apache.lucene.search.BooleanQuery;
|
||||
|
|
|
@ -19,9 +19,9 @@ package org.apache.lucene.search.similarities;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.DocValues;
|
||||
import org.apache.lucene.index.FieldInvertState;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Norm;
|
||||
import org.apache.lucene.search.CollectionStatistics;
|
||||
import org.apache.lucene.search.Explanation;
|
||||
|
|
|
@ -20,8 +20,8 @@ package org.apache.lucene.search.similarities;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.DocValues;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.search.CollectionStatistics;
|
||||
import org.apache.lucene.search.Explanation;
|
||||
import org.apache.lucene.search.IndexSearcher;
|
||||
|
|
|
@ -21,8 +21,8 @@ import java.io.IOException;
|
|||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.search.Query;
|
||||
import org.apache.lucene.search.Weight;
|
||||
|
|
|
@ -17,8 +17,8 @@ package org.apache.lucene.search.spans;
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.util.ArrayUtil;
|
||||
import org.apache.lucene.util.Bits;
|
||||
import org.apache.lucene.util.TermContext;
|
||||
|
|
|
@ -17,8 +17,8 @@ package org.apache.lucene.search.spans;
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.util.Bits;
|
||||
import org.apache.lucene.util.PriorityQueue;
|
||||
import org.apache.lucene.util.TermContext;
|
||||
|
|
|
@ -20,8 +20,8 @@ package org.apache.lucene.search.spans;
|
|||
import java.io.IOException;
|
||||
import java.util.Map;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.search.MultiTermQuery;
|
||||
import org.apache.lucene.search.Query;
|
||||
|
|
|
@ -27,8 +27,8 @@ import java.util.Map;
|
|||
import java.util.Set;
|
||||
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.search.Query;
|
||||
import org.apache.lucene.util.Bits;
|
||||
|
|
|
@ -17,8 +17,8 @@ package org.apache.lucene.search.spans;
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.search.Query;
|
||||
import org.apache.lucene.util.Bits;
|
||||
|
|
|
@ -26,8 +26,8 @@ import java.util.Iterator;
|
|||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.util.Bits;
|
||||
import org.apache.lucene.util.PriorityQueue;
|
||||
|
|
|
@ -17,8 +17,8 @@ package org.apache.lucene.search.spans;
|
|||
*/
|
||||
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.search.Query;
|
||||
import org.apache.lucene.util.Bits;
|
||||
|
|
|
@ -20,7 +20,7 @@ package org.apache.lucene.search.spans;
|
|||
import java.io.IOException;
|
||||
import java.util.Map;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.search.Query;
|
||||
import org.apache.lucene.search.IndexSearcher;
|
||||
|
|
|
@ -17,7 +17,7 @@ package org.apache.lucene.search.spans;
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Fields;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.index.DocsAndPositionsEnum;
|
||||
|
|
|
@ -17,8 +17,8 @@ package org.apache.lucene.search.spans;
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader.ReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.search.*;
|
||||
import org.apache.lucene.search.similarities.Similarity;
|
||||
|
@ -48,7 +48,7 @@ public class SpanWeight extends Weight {
|
|||
termContexts = new HashMap<Term,TermContext>();
|
||||
TreeSet<Term> terms = new TreeSet<Term>();
|
||||
query.extractTerms(terms);
|
||||
final ReaderContext context = searcher.getTopReaderContext();
|
||||
final IndexReaderContext context = searcher.getTopReaderContext();
|
||||
final TermStatistics termStats[] = new TermStatistics[terms.size()];
|
||||
int i = 0;
|
||||
for (Term term : terms) {
|
||||
|
|
|
@ -21,13 +21,13 @@ import java.util.ArrayList;
|
|||
import java.util.List;
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.FieldInfo;
|
||||
import org.apache.lucene.index.FieldInfos;
|
||||
import org.apache.lucene.index.CompositeReader;
|
||||
import org.apache.lucene.index.AtomicReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.IndexReader.ReaderContext;
|
||||
import org.apache.lucene.index.IndexReaderContext;
|
||||
|
||||
/**
|
||||
* Common util methods for dealing with {@link IndexReader}s.
|
||||
|
@ -126,7 +126,7 @@ public final class ReaderUtil {
|
|||
* <code>null</code> the given context must be an instance of
|
||||
* {@link AtomicReaderContext}
|
||||
*/
|
||||
public static AtomicReaderContext[] leaves(ReaderContext context) {
|
||||
public static AtomicReaderContext[] leaves(IndexReaderContext context) {
|
||||
assert context != null && context.isTopLevel : "context must be non-null & top-level";
|
||||
final AtomicReaderContext[] leaves = context.leaves();
|
||||
if (leaves == null) {
|
||||
|
@ -139,7 +139,7 @@ public final class ReaderUtil {
|
|||
* Walks up the reader tree and return the given context's top level reader
|
||||
* context, or in other words the reader tree's root context.
|
||||
*/
|
||||
public static ReaderContext getTopLevelContext(ReaderContext context) {
|
||||
public static IndexReaderContext getTopLevelContext(IndexReaderContext context) {
|
||||
while (context.parent != null) {
|
||||
context = context.parent;
|
||||
}
|
||||
|
|
|
@ -20,10 +20,10 @@ package org.apache.lucene.util;
|
|||
import java.io.IOException;
|
||||
import java.util.Arrays;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Fields;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader.ReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.IndexReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.index.TermState;
|
||||
import org.apache.lucene.index.Terms;
|
||||
|
@ -39,7 +39,7 @@ import org.apache.lucene.index.TermsEnum;
|
|||
* @lucene.experimental
|
||||
*/
|
||||
public final class TermContext {
|
||||
public final ReaderContext topReaderContext; // for asserting!
|
||||
public final IndexReaderContext topReaderContext; // for asserting!
|
||||
private final TermState[] states;
|
||||
private int docFreq;
|
||||
private long totalTermFreq;
|
||||
|
@ -47,9 +47,9 @@ public final class TermContext {
|
|||
//public static boolean DEBUG = BlockTreeTermsWriter.DEBUG;
|
||||
|
||||
/**
|
||||
* Creates an empty {@link TermContext} from a {@link ReaderContext}
|
||||
* Creates an empty {@link TermContext} from a {@link IndexReaderContext}
|
||||
*/
|
||||
public TermContext(ReaderContext context) {
|
||||
public TermContext(IndexReaderContext context) {
|
||||
assert context != null && context.isTopLevel;
|
||||
topReaderContext = context;
|
||||
docFreq = 0;
|
||||
|
@ -66,20 +66,20 @@ public final class TermContext {
|
|||
* Creates a {@link TermContext} with an initial {@link TermState},
|
||||
* {@link IndexReader} pair.
|
||||
*/
|
||||
public TermContext(ReaderContext context, TermState state, int ord, int docFreq, long totalTermFreq) {
|
||||
public TermContext(IndexReaderContext context, TermState state, int ord, int docFreq, long totalTermFreq) {
|
||||
this(context);
|
||||
register(state, ord, docFreq, totalTermFreq);
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a {@link TermContext} from a top-level {@link ReaderContext} and the
|
||||
* Creates a {@link TermContext} from a top-level {@link IndexReaderContext} and the
|
||||
* given {@link Term}. This method will lookup the given term in all context's leaf readers
|
||||
* and register each of the readers containing the term in the returned {@link TermContext}
|
||||
* using the leaf reader's ordinal.
|
||||
* <p>
|
||||
* Note: the given context must be a top-level context.
|
||||
*/
|
||||
public static TermContext build(ReaderContext context, Term term, boolean cache)
|
||||
public static TermContext build(IndexReaderContext context, Term term, boolean cache)
|
||||
throws IOException {
|
||||
assert context != null && context.isTopLevel;
|
||||
final String field = term.field();
|
||||
|
@ -116,7 +116,7 @@ public final class TermContext {
|
|||
|
||||
/**
|
||||
* Registers and associates a {@link TermState} with an leaf ordinal. The leaf ordinal
|
||||
* should be derived from a {@link ReaderContext}'s leaf ord.
|
||||
* should be derived from a {@link IndexReaderContext}'s leaf ord.
|
||||
*/
|
||||
public void register(TermState state, final int ord, final int docFreq, final long totalTermFreq) {
|
||||
assert state != null : "state must not be null";
|
||||
|
|
|
@ -21,9 +21,9 @@ import java.util.Random;
|
|||
import java.util.concurrent.ExecutorService;
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader.ReaderContext;
|
||||
import org.apache.lucene.index.IndexReaderContext;
|
||||
import org.apache.lucene.util.Bits;
|
||||
|
||||
/**
|
||||
|
@ -38,7 +38,7 @@ public class AssertingIndexSearcher extends IndexSearcher {
|
|||
this.random = new Random(random.nextLong());
|
||||
}
|
||||
|
||||
public AssertingIndexSearcher(Random random, ReaderContext context) {
|
||||
public AssertingIndexSearcher(Random random, IndexReaderContext context) {
|
||||
super(context);
|
||||
this.random = new Random(random.nextLong());
|
||||
}
|
||||
|
@ -48,7 +48,7 @@ public class AssertingIndexSearcher extends IndexSearcher {
|
|||
this.random = new Random(random.nextLong());
|
||||
}
|
||||
|
||||
public AssertingIndexSearcher(Random random, ReaderContext context, ExecutorService ex) {
|
||||
public AssertingIndexSearcher(Random random, IndexReaderContext context, ExecutorService ex) {
|
||||
super(context, ex);
|
||||
this.random = new Random(random.nextLong());
|
||||
}
|
||||
|
|
|
@ -25,8 +25,8 @@ import java.util.Random;
|
|||
|
||||
import junit.framework.Assert;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.store.Directory;
|
||||
import org.apache.lucene.util.LuceneTestCase;
|
||||
|
||||
|
|
|
@ -25,9 +25,9 @@ import junit.framework.Assert;
|
|||
import org.apache.lucene.analysis.MockAnalyzer;
|
||||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.index.AtomicReader;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.DirectoryReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexWriter;
|
||||
import org.apache.lucene.index.IndexWriterConfig;
|
||||
import org.apache.lucene.index.MultiReader;
|
||||
|
|
|
@ -25,8 +25,6 @@ import org.apache.lucene.document.Document;
|
|||
import org.apache.lucene.document.FieldType;
|
||||
import org.apache.lucene.document.StringField;
|
||||
import org.apache.lucene.document.TextField;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader.ReaderContext;
|
||||
import org.apache.lucene.search.DocIdSetIterator;
|
||||
import org.apache.lucene.store.Directory;
|
||||
import org.apache.lucene.util.Bits;
|
||||
|
@ -66,7 +64,7 @@ public class TestDocsAndPositions extends LuceneTestCase {
|
|||
int num = atLeast(13);
|
||||
for (int i = 0; i < num; i++) {
|
||||
BytesRef bytes = new BytesRef("1");
|
||||
ReaderContext topReaderContext = reader.getTopReaderContext();
|
||||
IndexReaderContext topReaderContext = reader.getTopReaderContext();
|
||||
AtomicReaderContext[] leaves = ReaderUtil.leaves(topReaderContext);
|
||||
for (AtomicReaderContext atomicReaderContext : leaves) {
|
||||
DocsAndPositionsEnum docsAndPosEnum = getDocsAndPositions(
|
||||
|
@ -142,7 +140,7 @@ public class TestDocsAndPositions extends LuceneTestCase {
|
|||
int num = atLeast(13);
|
||||
for (int i = 0; i < num; i++) {
|
||||
BytesRef bytes = new BytesRef("" + term);
|
||||
ReaderContext topReaderContext = reader.getTopReaderContext();
|
||||
IndexReaderContext topReaderContext = reader.getTopReaderContext();
|
||||
AtomicReaderContext[] leaves = ReaderUtil.leaves(topReaderContext);
|
||||
for (AtomicReaderContext atomicReaderContext : leaves) {
|
||||
DocsAndPositionsEnum docsAndPosEnum = getDocsAndPositions(
|
||||
|
@ -218,7 +216,7 @@ public class TestDocsAndPositions extends LuceneTestCase {
|
|||
int num = atLeast(13);
|
||||
for (int i = 0; i < num; i++) {
|
||||
BytesRef bytes = new BytesRef("" + term);
|
||||
ReaderContext topReaderContext = reader.getTopReaderContext();
|
||||
IndexReaderContext topReaderContext = reader.getTopReaderContext();
|
||||
AtomicReaderContext[] leaves = ReaderUtil.leaves(topReaderContext);
|
||||
for (AtomicReaderContext context : leaves) {
|
||||
int maxDoc = context.reader().maxDoc();
|
||||
|
@ -297,7 +295,7 @@ public class TestDocsAndPositions extends LuceneTestCase {
|
|||
for (int i = 0; i < num; i++) {
|
||||
BytesRef bytes = new BytesRef("even");
|
||||
|
||||
ReaderContext topReaderContext = reader.getTopReaderContext();
|
||||
IndexReaderContext topReaderContext = reader.getTopReaderContext();
|
||||
AtomicReaderContext[] leaves = ReaderUtil.leaves(topReaderContext);
|
||||
for (AtomicReaderContext atomicReaderContext : leaves) {
|
||||
DocsAndPositionsEnum docsAndPosEnum = getDocsAndPositions(
|
||||
|
|
|
@ -28,7 +28,6 @@ import org.apache.lucene.document.Field;
|
|||
import org.apache.lucene.index.FieldInfo.IndexOptions;
|
||||
import org.apache.lucene.document.FieldType;
|
||||
import org.apache.lucene.document.TextField;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.search.*;
|
||||
import org.apache.lucene.search.BooleanClause.Occur;
|
||||
import org.apache.lucene.search.similarities.Similarity;
|
||||
|
|
|
@ -28,8 +28,6 @@ import org.apache.lucene.document.Document;
|
|||
import org.apache.lucene.document.Field;
|
||||
import org.apache.lucene.document.DocValuesField;
|
||||
import org.apache.lucene.document.TextField;
|
||||
import org.apache.lucene.index.IndexReader.ReaderContext;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.DocValues.Source;
|
||||
import org.apache.lucene.index.DocValues.Type;
|
||||
import org.apache.lucene.store.Directory;
|
||||
|
@ -120,7 +118,7 @@ public class TestTypePromotion extends LuceneTestCase {
|
|||
throws CorruptIndexException, IOException {
|
||||
DirectoryReader reader = DirectoryReader.open(dir);
|
||||
assertEquals(1, reader.getSequentialSubReaders().length);
|
||||
ReaderContext topReaderContext = reader.getTopReaderContext();
|
||||
IndexReaderContext topReaderContext = reader.getTopReaderContext();
|
||||
AtomicReaderContext[] children = topReaderContext.leaves();
|
||||
assertEquals(1, children.length);
|
||||
DocValues docValues = children[0].reader().docValues("promote");
|
||||
|
@ -335,7 +333,7 @@ public class TestTypePromotion extends LuceneTestCase {
|
|||
writer.close();
|
||||
DirectoryReader reader = DirectoryReader.open(dir);
|
||||
assertEquals(1, reader.getSequentialSubReaders().length);
|
||||
ReaderContext topReaderContext = reader.getTopReaderContext();
|
||||
IndexReaderContext topReaderContext = reader.getTopReaderContext();
|
||||
AtomicReaderContext[] children = topReaderContext.leaves();
|
||||
DocValues docValues = children[0].reader().docValues("promote");
|
||||
assertNotNull(docValues);
|
||||
|
|
|
@ -20,8 +20,8 @@ package org.apache.lucene.search;
|
|||
import java.io.IOException;
|
||||
import java.util.Comparator;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Terms;
|
||||
import org.apache.lucene.index.TermsEnum;
|
||||
import org.apache.lucene.util.Bits;
|
||||
|
|
|
@ -19,7 +19,7 @@ package org.apache.lucene.search;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Norm;
|
||||
import org.apache.lucene.search.similarities.Similarity;
|
||||
import org.apache.lucene.search.similarities.SimilarityProvider;
|
||||
|
|
|
@ -17,7 +17,7 @@ package org.apache.lucene.search;
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.util.DocIdBitSet;
|
||||
import org.apache.lucene.util.FixedBitSet;
|
||||
import org.apache.lucene.util.Bits;
|
||||
|
|
|
@ -19,7 +19,7 @@ package org.apache.lucene.search;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.search.Collector;
|
||||
import org.apache.lucene.search.Scorer;
|
||||
import org.apache.lucene.util.LuceneTestCase;
|
||||
|
|
|
@ -17,7 +17,7 @@ package org.apache.lucene.search;
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.util.Bits;
|
||||
import org.apache.lucene.util.FixedBitSet;
|
||||
|
||||
|
|
|
@ -25,7 +25,7 @@ import java.util.List;
|
|||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.document.StringField;
|
||||
import org.apache.lucene.document.TextField;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.RandomIndexWriter;
|
||||
import org.apache.lucene.index.Term;
|
||||
|
|
|
@ -17,7 +17,7 @@ package org.apache.lucene.search;
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.util.LuceneTestCase;
|
||||
|
||||
import java.io.IOException;
|
||||
|
|
|
@ -22,7 +22,7 @@ import java.io.IOException;
|
|||
import org.apache.lucene.analysis.MockAnalyzer;
|
||||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.document.StringField;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.DirectoryReader;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.RandomIndexWriter;
|
||||
|
|
|
@ -19,8 +19,8 @@ package org.apache.lucene.search;
|
|||
|
||||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.document.StringField;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.RandomIndexWriter;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.search.similarities.DefaultSimilarityProvider;
|
||||
|
|
|
@ -22,8 +22,8 @@ import org.apache.lucene.analysis.MockAnalyzer;
|
|||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.document.FieldType;
|
||||
import org.apache.lucene.document.TextField;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Norm;
|
||||
import org.apache.lucene.index.SlowCompositeReaderWrapper;
|
||||
import org.apache.lucene.index.FieldInvertState;
|
||||
|
|
|
@ -21,7 +21,7 @@ import java.io.IOException;
|
|||
|
||||
import org.apache.lucene.analysis.MockAnalyzer;
|
||||
import org.apache.lucene.document.*;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.RandomIndexWriter;
|
||||
import org.apache.lucene.index.Term;
|
||||
|
|
|
@ -26,8 +26,8 @@ import junit.framework.Assert;
|
|||
|
||||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.document.StringField;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.RandomIndexWriter;
|
||||
import org.apache.lucene.store.Directory;
|
||||
import org.apache.lucene.util.Bits;
|
||||
|
|
|
@ -24,10 +24,10 @@ import org.apache.lucene.document.DocValuesField;
|
|||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.document.Field;
|
||||
import org.apache.lucene.document.TextField;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.DocValues.Source;
|
||||
import org.apache.lucene.index.DocValues;
|
||||
import org.apache.lucene.index.FieldInvertState;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.Norm;
|
||||
import org.apache.lucene.index.RandomIndexWriter;
|
||||
|
|
|
@ -21,7 +21,6 @@ import org.apache.lucene.analysis.MockAnalyzer;
|
|||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.document.TextField;
|
||||
import org.apache.lucene.index.*;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.search.FieldValueHitQueue.Entry;
|
||||
import org.apache.lucene.search.similarities.DefaultSimilarityProvider;
|
||||
import org.apache.lucene.store.*;
|
||||
|
|
|
@ -22,7 +22,7 @@ import java.util.BitSet;
|
|||
import org.apache.lucene.analysis.MockAnalyzer;
|
||||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.document.TextField;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.RandomIndexWriter;
|
||||
import org.apache.lucene.index.Term;
|
||||
|
|
|
@ -23,8 +23,8 @@ import org.apache.lucene.util.LuceneTestCase;
|
|||
import org.apache.lucene.analysis.MockAnalyzer;
|
||||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.document.StringField;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.CorruptIndexException;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.IndexWriter;
|
||||
import org.apache.lucene.index.Term;
|
||||
|
|
|
@ -22,8 +22,8 @@ import org.apache.lucene.analysis.MockTokenizer;
|
|||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.document.FieldType;
|
||||
import org.apache.lucene.document.TextField;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.RandomIndexWriter;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.search.similarities.DefaultSimilarityProvider;
|
||||
|
|
|
@ -21,7 +21,7 @@ import org.apache.lucene.analysis.MockAnalyzer;
|
|||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.document.FieldType;
|
||||
import org.apache.lucene.document.NumericField;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.MultiFields;
|
||||
import org.apache.lucene.index.RandomIndexWriter;
|
||||
|
|
|
@ -21,7 +21,7 @@ import org.apache.lucene.analysis.MockAnalyzer;
|
|||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.document.FieldType;
|
||||
import org.apache.lucene.document.NumericField;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.MultiFields;
|
||||
import org.apache.lucene.index.RandomIndexWriter;
|
||||
|
|
|
@ -19,9 +19,9 @@ package org.apache.lucene.search;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.RandomIndexWriter;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.store.Directory;
|
||||
import org.apache.lucene.util.LuceneTestCase;
|
||||
|
|
|
@ -7,8 +7,8 @@ import org.apache.lucene.util.LuceneTestCase;
|
|||
import java.util.BitSet;
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexWriter;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.index.IndexWriterConfig.OpenMode;
|
||||
|
|
|
@ -21,9 +21,9 @@ import org.apache.lucene.util.LuceneTestCase;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.FieldInvertState;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.Norm;
|
||||
import org.apache.lucene.index.RandomIndexWriter;
|
||||
import org.apache.lucene.index.Term;
|
||||
|
|
|
@ -26,8 +26,8 @@ import org.apache.lucene.document.Document;
|
|||
import org.apache.lucene.document.Field;
|
||||
import org.apache.lucene.document.FieldType;
|
||||
import org.apache.lucene.document.TextField;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.RandomIndexWriter;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.store.Directory;
|
||||
|
|
|
@ -32,8 +32,8 @@ import org.apache.lucene.document.FieldType;
|
|||
import org.apache.lucene.document.DocValuesField;
|
||||
import org.apache.lucene.document.StringField;
|
||||
import org.apache.lucene.document.TextField;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.CorruptIndexException;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.IndexWriter;
|
||||
import org.apache.lucene.index.IndexableField;
|
||||
|
|
|
@ -23,7 +23,6 @@ import java.util.*;
|
|||
import org.apache.lucene.analysis.MockAnalyzer;
|
||||
import org.apache.lucene.document.*;
|
||||
import org.apache.lucene.index.*;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.search.BooleanClause.Occur;
|
||||
import org.apache.lucene.search.Scorer.ChildScorer;
|
||||
import org.apache.lucene.store.*;
|
||||
|
|
|
@ -24,7 +24,7 @@ import java.util.List;
|
|||
import org.apache.lucene.analysis.MockAnalyzer;
|
||||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.document.TextField;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.RandomIndexWriter;
|
||||
import org.apache.lucene.index.SlowCompositeReaderWrapper;
|
||||
|
|
|
@ -23,8 +23,8 @@ import java.util.BitSet;
|
|||
import org.apache.lucene.analysis.MockAnalyzer;
|
||||
import org.apache.lucene.document.Document;
|
||||
import org.apache.lucene.document.TextField;
|
||||
import org.apache.lucene.index.AtomicReaderContext;
|
||||
import org.apache.lucene.index.IndexReader;
|
||||
import org.apache.lucene.index.AtomicReader.AtomicReaderContext;
|
||||
import org.apache.lucene.index.RandomIndexWriter;
|
||||
import org.apache.lucene.index.Term;
|
||||
import org.apache.lucene.search.TimeLimitingCollector.TimeExceededException;
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue