Index: lucene/CHANGES.txt =================================================================== --- lucene/CHANGES.txt (revision 1352563) +++ lucene/CHANGES.txt (working copy) @@ -283,6 +283,9 @@ removed, as IndexReaderContext.leaves() is now the preferred way to access sub-readers. (Uwe Schindler) +* LUCENE-4155: oal.util.ReaderUtil class was moved to oal.index package. + (Uwe Schindler) + Changes in Runtime Behavior * LUCENE-2846: omitNorms now behaves like omitTermFrequencyAndPositions, if you Index: lucene/core/src/java/org/apache/lucene/index/AtomicReader.java =================================================================== --- lucene/core/src/java/org/apache/lucene/index/AtomicReader.java (revision 1352563) +++ lucene/core/src/java/org/apache/lucene/index/AtomicReader.java (working copy) @@ -22,7 +22,6 @@ import org.apache.lucene.search.SearcherManager; // javadocs import org.apache.lucene.util.Bits; import org.apache.lucene.util.BytesRef; -import org.apache.lucene.util.ReaderUtil; // for javadocs /** {@code AtomicReader} is an abstract class, providing an interface for accessing an index. Search of an index is done entirely through this abstract interface, Index: lucene/core/src/java/org/apache/lucene/index/BaseCompositeReader.java =================================================================== --- lucene/core/src/java/org/apache/lucene/index/BaseCompositeReader.java (revision 1352563) +++ lucene/core/src/java/org/apache/lucene/index/BaseCompositeReader.java (working copy) @@ -23,7 +23,6 @@ import java.util.List; import org.apache.lucene.util.BytesRef; -import org.apache.lucene.util.ReaderUtil; /** Base class for implementing {@link CompositeReader}s based on an array * of sub-readers. The implementing class has to add code for Index: lucene/core/src/java/org/apache/lucene/index/BitsSlice.java =================================================================== --- lucene/core/src/java/org/apache/lucene/index/BitsSlice.java (revision 0) +++ lucene/core/src/java/org/apache/lucene/index/BitsSlice.java (working copy) @@ -0,0 +1,51 @@ +package org.apache.lucene.index; + +import org.apache.lucene.util.Bits; + +/* + * 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. + */ + +/** + * Exposes a slice of an existing Bits as a new Bits. + * + * @lucene.internal + */ +final class BitsSlice implements Bits { + private final Bits parent; + private final int start; + private final int length; + + // start is inclusive; end is exclusive (length = end-start) + public BitsSlice(Bits parent, ReaderSlice slice) { + this.parent = parent; + this.start = slice.start; + this.length = slice.length; + assert length >= 0: "length=" + length; + } + + public boolean get(int doc) { + if (doc >= length) { + throw new RuntimeException("doc " + doc + " is out of bounds 0 .. " + (length-1)); + } + assert doc < length: "doc=" + doc + " length=" + length; + return parent.get(doc+start); + } + + public int length() { + return length; + } +} Index: lucene/core/src/java/org/apache/lucene/index/BitsSlice.java =================================================================== --- lucene/core/src/java/org/apache/lucene/index/BitsSlice.java (revision 1352563) +++ lucene/core/src/java/org/apache/lucene/index/BitsSlice.java (working copy) Property changes on: lucene/core/src/java/org/apache/lucene/index/BitsSlice.java ___________________________________________________________________ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Index: lucene/core/src/java/org/apache/lucene/index/IndexReader.java =================================================================== --- lucene/core/src/java/org/apache/lucene/index/IndexReader.java (revision 1352563) +++ lucene/core/src/java/org/apache/lucene/index/IndexReader.java (working copy) @@ -31,7 +31,6 @@ import org.apache.lucene.store.*; import org.apache.lucene.util.Bits; import org.apache.lucene.util.BytesRef; -import org.apache.lucene.util.ReaderUtil; // for javadocs /** IndexReader is an abstract class, providing an interface for accessing an index. Search of an index is done entirely through this abstract interface, Index: lucene/core/src/java/org/apache/lucene/index/MultiBits.java =================================================================== --- lucene/core/src/java/org/apache/lucene/index/MultiBits.java (revision 0) +++ lucene/core/src/java/org/apache/lucene/index/MultiBits.java (working copy) @@ -0,0 +1,115 @@ +package org.apache.lucene.index; + +import org.apache.lucene.util.Bits; + +/* + * 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. + */ + +/** + * Concatenates multiple Bits together, on every lookup. + * + *

NOTE: This is very costly, as every lookup must + * do a binary search to locate the right sub-reader. + * + * @lucene.experimental + */ +final class MultiBits implements Bits { + private final Bits[] subs; + + // length is 1+subs.length (the last entry has the maxDoc): + private final int[] starts; + + private final boolean defaultValue; + + public MultiBits(Bits[] subs, int[] starts, boolean defaultValue) { + assert starts.length == 1+subs.length; + this.subs = subs; + this.starts = starts; + this.defaultValue = defaultValue; + } + + private boolean checkLength(int reader, int doc) { + final int length = starts[1+reader]-starts[reader]; + assert doc - starts[reader] < length: "doc=" + doc + " reader=" + reader + " starts[reader]=" + starts[reader] + " length=" + length; + return true; + } + + public boolean get(int doc) { + final int reader = ReaderUtil.subIndex(doc, starts); + assert reader != -1; + final Bits bits = subs[reader]; + if (bits == null) { + return defaultValue; + } else { + assert checkLength(reader, doc); + return bits.get(doc-starts[reader]); + } + } + + @Override + public String toString() { + StringBuilder b = new StringBuilder(); + b.append(subs.length + " subs: "); + for(int i=0;in in the + * array used to construct this searcher/reader. + */ + public static int subIndex(int n, int[] docStarts) { // find + // searcher/reader for doc n: + int size = docStarts.length; + int lo = 0; // search starts array + int hi = size - 1; // for first element less than n, return its index + while (hi >= lo) { + int mid = (lo + hi) >>> 1; + int midValue = docStarts[mid]; + if (n < midValue) + hi = mid - 1; + else if (n > midValue) + lo = mid + 1; + else { // found a match + while (mid + 1 < size && docStarts[mid + 1] == midValue) { + mid++; // scan to last match + } + return mid; + } + } + return hi; + } + + /** + * Returns index of the searcher/reader for document n in the + * array used to construct this searcher/reader. + */ + public static int subIndex(int n, List leaves) { // find + // searcher/reader for doc n: + int size = leaves.size(); + int lo = 0; // search starts array + int hi = size - 1; // for first element less than n, return its index + while (hi >= lo) { + int mid = (lo + hi) >>> 1; + int midValue = leaves.get(mid).docBase; + if (n < midValue) + hi = mid - 1; + else if (n > midValue) + lo = mid + 1; + else { // found a match + while (mid + 1 < size && leaves.get(mid + 1).docBase == midValue) { + mid++; // scan to last match + } + return mid; + } + } + return hi; + } +} Index: lucene/core/src/java/org/apache/lucene/index/ReaderUtil.java =================================================================== --- lucene/core/src/java/org/apache/lucene/index/ReaderUtil.java (revision 1352563) +++ lucene/core/src/java/org/apache/lucene/index/ReaderUtil.java (working copy) Property changes on: lucene/core/src/java/org/apache/lucene/index/ReaderUtil.java ___________________________________________________________________ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Index: lucene/core/src/java/org/apache/lucene/index/SegmentMerger.java =================================================================== --- lucene/core/src/java/org/apache/lucene/index/SegmentMerger.java (revision 1352563) +++ lucene/core/src/java/org/apache/lucene/index/SegmentMerger.java (working copy) @@ -34,8 +34,6 @@ import org.apache.lucene.util.Bits; import org.apache.lucene.util.IOUtils; import org.apache.lucene.util.InfoStream; -import org.apache.lucene.util.ReaderUtil; -import org.apache.lucene.util.ReaderSlice; /** * The SegmentMerger class combines two or more Segments, represented by an IndexReader ({@link #add}, Index: lucene/core/src/java/org/apache/lucene/search/IndexSearcher.java =================================================================== --- lucene/core/src/java/org/apache/lucene/search/IndexSearcher.java (revision 1352563) +++ lucene/core/src/java/org/apache/lucene/search/IndexSearcher.java (working copy) @@ -39,13 +39,13 @@ import org.apache.lucene.index.IndexReader; import org.apache.lucene.index.MultiFields; import org.apache.lucene.index.IndexReaderContext; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.index.StoredFieldVisitor; import org.apache.lucene.index.Term; import org.apache.lucene.index.Terms; import org.apache.lucene.search.similarities.DefaultSimilarity; import org.apache.lucene.search.similarities.Similarity; import org.apache.lucene.store.NIOFSDirectory; // javadoc -import org.apache.lucene.util.ReaderUtil; import org.apache.lucene.util.TermContext; import org.apache.lucene.util.ThreadInterruptedException; import org.apache.lucene.index.IndexWriter; // javadocs Index: lucene/core/src/java/org/apache/lucene/search/TermQuery.java =================================================================== --- lucene/core/src/java/org/apache/lucene/search/TermQuery.java (revision 1352563) +++ lucene/core/src/java/org/apache/lucene/search/TermQuery.java (working copy) @@ -24,6 +24,7 @@ import org.apache.lucene.index.DocsEnum; import org.apache.lucene.index.AtomicReader; import org.apache.lucene.index.IndexReaderContext; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.index.Term; import org.apache.lucene.index.TermState; import org.apache.lucene.index.TermsEnum; @@ -31,7 +32,6 @@ import org.apache.lucene.search.similarities.Similarity; import org.apache.lucene.util.Bits; import org.apache.lucene.util.BytesRef; -import org.apache.lucene.util.ReaderUtil; import org.apache.lucene.util.TermContext; import org.apache.lucene.util.ToStringUtils; Index: lucene/core/src/java/org/apache/lucene/util/BitsSlice.java =================================================================== --- lucene/core/src/java/org/apache/lucene/util/BitsSlice.java (revision 1352563) +++ lucene/core/src/java/org/apache/lucene/util/BitsSlice.java (working copy) @@ -1,46 +0,0 @@ -package org.apache.lucene.util; - -/* - * 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. - */ - -/** Exposes a slice of an existing Bits as a new Bits. */ - -public final class BitsSlice implements Bits { - private final Bits parent; - private final int start; - private final int length; - - // start is inclusive; end is exclusive (length = end-start) - public BitsSlice(Bits parent, ReaderSlice slice) { - this.parent = parent; - this.start = slice.start; - this.length = slice.length; - assert length >= 0: "length=" + length; - } - - public boolean get(int doc) { - if (doc >= length) { - throw new RuntimeException("doc " + doc + " is out of bounds 0 .. " + (length-1)); - } - assert doc < length: "doc=" + doc + " length=" + length; - return parent.get(doc+start); - } - - public int length() { - return length; - } -} Index: lucene/core/src/java/org/apache/lucene/util/MultiBits.java =================================================================== --- lucene/core/src/java/org/apache/lucene/util/MultiBits.java (revision 1352563) +++ lucene/core/src/java/org/apache/lucene/util/MultiBits.java (working copy) @@ -1,114 +0,0 @@ -package org.apache.lucene.util; - -/* - * 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. - */ - -/** - * Concatenates multiple Bits together, on every lookup. - * - *

NOTE: This is very costly, as every lookup must - * do a binary search to locate the right sub-reader. - * - * @lucene.experimental - */ - -public final class MultiBits implements Bits { - private final Bits[] subs; - - // length is 1+subs.length (the last entry has the maxDoc): - private final int[] starts; - - private final boolean defaultValue; - - public MultiBits(Bits[] subs, int[] starts, boolean defaultValue) { - assert starts.length == 1+subs.length; - this.subs = subs; - this.starts = starts; - this.defaultValue = defaultValue; - } - - private boolean checkLength(int reader, int doc) { - final int length = starts[1+reader]-starts[reader]; - assert doc - starts[reader] < length: "doc=" + doc + " reader=" + reader + " starts[reader]=" + starts[reader] + " length=" + length; - return true; - } - - public boolean get(int doc) { - final int reader = ReaderUtil.subIndex(doc, starts); - assert reader != -1; - final Bits bits = subs[reader]; - if (bits == null) { - return defaultValue; - } else { - assert checkLength(reader, doc); - return bits.get(doc-starts[reader]); - } - } - - @Override - public String toString() { - StringBuilder b = new StringBuilder(); - b.append(subs.length + " subs: "); - for(int i=0;in in the - * array used to construct this searcher/reader. - */ - public static int subIndex(int n, int[] docStarts) { // find - // searcher/reader for doc n: - int size = docStarts.length; - int lo = 0; // search starts array - int hi = size - 1; // for first element less than n, return its index - while (hi >= lo) { - int mid = (lo + hi) >>> 1; - int midValue = docStarts[mid]; - if (n < midValue) - hi = mid - 1; - else if (n > midValue) - lo = mid + 1; - else { // found a match - while (mid + 1 < size && docStarts[mid + 1] == midValue) { - mid++; // scan to last match - } - return mid; - } - } - return hi; - } - - /** - * Returns index of the searcher/reader for document n in the - * array used to construct this searcher/reader. - */ - public static int subIndex(int n, List leaves) { // find - // searcher/reader for doc n: - int size = leaves.size(); - int lo = 0; // search starts array - int hi = size - 1; // for first element less than n, return its index - while (hi >= lo) { - int mid = (lo + hi) >>> 1; - int midValue = leaves.get(mid).docBase; - if (n < midValue) - hi = mid - 1; - else if (n > midValue) - lo = mid + 1; - else { // found a match - while (mid + 1 < size && leaves.get(mid + 1).docBase == midValue) { - mid++; // scan to last match - } - return mid; - } - } - return hi; - } -} Index: lucene/core/src/test/org/apache/lucene/search/spans/MultiSpansWrapper.java =================================================================== --- lucene/core/src/test/org/apache/lucene/search/spans/MultiSpansWrapper.java (revision 1352563) +++ lucene/core/src/test/org/apache/lucene/search/spans/MultiSpansWrapper.java (working copy) @@ -27,9 +27,9 @@ import org.apache.lucene.index.AtomicReaderContext; import org.apache.lucene.index.IndexReaderContext; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.index.Term; import org.apache.lucene.search.DocIdSetIterator; -import org.apache.lucene.util.ReaderUtil; import org.apache.lucene.util.TermContext; /** Index: lucene/core/src/test/org/apache/lucene/search/spans/TestSpans.java =================================================================== --- lucene/core/src/test/org/apache/lucene/search/spans/TestSpans.java (revision 1352563) +++ lucene/core/src/test/org/apache/lucene/search/spans/TestSpans.java (working copy) @@ -30,6 +30,7 @@ import org.apache.lucene.index.IndexWriter; import org.apache.lucene.index.IndexWriterConfig; import org.apache.lucene.index.RandomIndexWriter; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.index.Term; import org.apache.lucene.search.CheckHits; import org.apache.lucene.search.DocIdSetIterator; @@ -41,7 +42,6 @@ import org.apache.lucene.search.similarities.Similarity; import org.apache.lucene.store.Directory; import org.apache.lucene.util.LuceneTestCase; -import org.apache.lucene.util.ReaderUtil; public class TestSpans extends LuceneTestCase { private IndexSearcher searcher; Index: lucene/core/src/test/org/apache/lucene/search/TestTopDocsMerge.java =================================================================== --- lucene/core/src/test/org/apache/lucene/search/TestTopDocsMerge.java (revision 1352563) +++ lucene/core/src/test/org/apache/lucene/search/TestTopDocsMerge.java (working copy) @@ -31,10 +31,10 @@ import org.apache.lucene.index.IndexReader; import org.apache.lucene.index.IndexReaderContext; import org.apache.lucene.index.RandomIndexWriter; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.index.Term; import org.apache.lucene.store.Directory; import org.apache.lucene.util.LuceneTestCase; -import org.apache.lucene.util.ReaderUtil; import org.apache.lucene.util._TestUtil; public class TestTopDocsMerge extends LuceneTestCase { Index: lucene/grouping/src/test/org/apache/lucene/search/grouping/TestGrouping.java =================================================================== --- lucene/grouping/src/test/org/apache/lucene/search/grouping/TestGrouping.java (revision 1352563) +++ lucene/grouping/src/test/org/apache/lucene/search/grouping/TestGrouping.java (working copy) @@ -23,6 +23,7 @@ import org.apache.lucene.index.AtomicReaderContext; import org.apache.lucene.index.CompositeReaderContext; import org.apache.lucene.index.DirectoryReader; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.index.FieldInfo.IndexOptions; import org.apache.lucene.index.RandomIndexWriter; import org.apache.lucene.index.IndexReaderContext; @@ -44,7 +45,6 @@ import org.apache.lucene.store.Directory; import org.apache.lucene.util.BytesRef; import org.apache.lucene.util.LuceneTestCase; -import org.apache.lucene.util.ReaderUtil; import org.apache.lucene.util._TestUtil; import org.apache.lucene.util.mutable.MutableValue; import org.apache.lucene.util.mutable.MutableValueStr; Index: lucene/misc/src/java/org/apache/lucene/misc/HighFreqTerms.java =================================================================== --- lucene/misc/src/java/org/apache/lucene/misc/HighFreqTerms.java (revision 1352563) +++ lucene/misc/src/java/org/apache/lucene/misc/HighFreqTerms.java (working copy) @@ -23,6 +23,7 @@ import org.apache.lucene.index.IndexReader; import org.apache.lucene.index.MultiFields; import org.apache.lucene.index.Fields; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.index.TermsEnum; import org.apache.lucene.index.FieldsEnum; import org.apache.lucene.index.Terms; @@ -32,7 +33,6 @@ import org.apache.lucene.util.PriorityQueue; import org.apache.lucene.util.BytesRef; import org.apache.lucene.util.Bits; -import org.apache.lucene.util.ReaderUtil; import java.io.File; import java.io.IOException; Index: lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/JoinDocFreqValueSource.java =================================================================== --- lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/JoinDocFreqValueSource.java (revision 1352563) +++ lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/JoinDocFreqValueSource.java (working copy) @@ -22,11 +22,11 @@ import org.apache.lucene.index.AtomicReaderContext; import org.apache.lucene.index.IndexReader; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.queries.function.FunctionValues; import org.apache.lucene.queries.function.docvalues.IntDocValues; import org.apache.lucene.search.FieldCache.DocTerms; import org.apache.lucene.util.BytesRef; -import org.apache.lucene.util.ReaderUtil; import org.apache.lucene.util.packed.PackedInts; /** Index: lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/NumDocsValueSource.java =================================================================== --- lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/NumDocsValueSource.java (revision 1352563) +++ lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/NumDocsValueSource.java (working copy) @@ -17,9 +17,9 @@ package org.apache.lucene.queries.function.valuesource; import org.apache.lucene.index.AtomicReaderContext; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.queries.function.FunctionValues; import org.apache.lucene.queries.function.ValueSource; -import org.apache.lucene.util.ReaderUtil; import java.io.IOException; import java.util.Map; Index: lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/OrdFieldSource.java =================================================================== --- lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/OrdFieldSource.java (revision 1352563) +++ lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/OrdFieldSource.java (working copy) @@ -21,12 +21,12 @@ import org.apache.lucene.index.AtomicReaderContext; import org.apache.lucene.index.CompositeReader; import org.apache.lucene.index.IndexReader; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.index.SlowCompositeReaderWrapper; import org.apache.lucene.queries.function.FunctionValues; import org.apache.lucene.queries.function.ValueSource; import org.apache.lucene.queries.function.docvalues.IntDocValues; import org.apache.lucene.search.FieldCache; -import org.apache.lucene.util.ReaderUtil; import org.apache.lucene.util.mutable.MutableValue; import org.apache.lucene.util.mutable.MutableValueInt; Index: lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/QueryValueSource.java =================================================================== --- lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/QueryValueSource.java (revision 1352563) +++ lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/QueryValueSource.java (working copy) @@ -18,12 +18,12 @@ package org.apache.lucene.queries.function.valuesource; import org.apache.lucene.index.AtomicReaderContext; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.queries.function.FunctionValues; import org.apache.lucene.queries.function.ValueSource; import org.apache.lucene.queries.function.docvalues.FloatDocValues; import org.apache.lucene.search.*; import org.apache.lucene.util.Bits; -import org.apache.lucene.util.ReaderUtil; import org.apache.lucene.util.mutable.MutableValue; import org.apache.lucene.util.mutable.MutableValueFloat; Index: lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/ReverseOrdFieldSource.java =================================================================== --- lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/ReverseOrdFieldSource.java (revision 1352563) +++ lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/ReverseOrdFieldSource.java (working copy) @@ -21,12 +21,12 @@ import org.apache.lucene.index.AtomicReaderContext; import org.apache.lucene.index.CompositeReader; import org.apache.lucene.index.IndexReader; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.index.SlowCompositeReaderWrapper; import org.apache.lucene.queries.function.FunctionValues; import org.apache.lucene.queries.function.ValueSource; import org.apache.lucene.queries.function.docvalues.IntDocValues; import org.apache.lucene.search.FieldCache; -import org.apache.lucene.util.ReaderUtil; import java.io.IOException; import java.util.Map; Index: lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/ScaleFloatFunction.java =================================================================== --- lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/ScaleFloatFunction.java (revision 1352563) +++ lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/ScaleFloatFunction.java (working copy) @@ -18,11 +18,11 @@ package org.apache.lucene.queries.function.valuesource; import org.apache.lucene.index.AtomicReaderContext; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.queries.function.FunctionValues; import org.apache.lucene.queries.function.ValueSource; import org.apache.lucene.queries.function.docvalues.FloatDocValues; import org.apache.lucene.search.IndexSearcher; -import org.apache.lucene.util.ReaderUtil; import java.io.IOException; import java.util.List; Index: lucene/suggest/src/java/org/apache/lucene/search/spell/SpellChecker.java =================================================================== --- lucene/suggest/src/java/org/apache/lucene/search/spell/SpellChecker.java (revision 1352563) +++ lucene/suggest/src/java/org/apache/lucene/search/spell/SpellChecker.java (working copy) @@ -33,6 +33,7 @@ import org.apache.lucene.index.IndexReader; import org.apache.lucene.index.IndexWriter; import org.apache.lucene.index.IndexWriterConfig; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.index.Term; import org.apache.lucene.index.IndexWriterConfig.OpenMode; import org.apache.lucene.index.Terms; @@ -47,7 +48,6 @@ import org.apache.lucene.store.Directory; import org.apache.lucene.util.BytesRef; import org.apache.lucene.util.BytesRefIterator; -import org.apache.lucene.util.ReaderUtil; import org.apache.lucene.util.Version; /** Index: solr/core/src/java/org/apache/solr/handler/component/QueryComponent.java =================================================================== --- solr/core/src/java/org/apache/solr/handler/component/QueryComponent.java (revision 1352563) +++ solr/core/src/java/org/apache/solr/handler/component/QueryComponent.java (working copy) @@ -21,6 +21,7 @@ import org.apache.lucene.document.StringField; import org.apache.lucene.index.AtomicReaderContext; import org.apache.lucene.index.IndexReaderContext; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.index.Term; import org.apache.lucene.queryparser.classic.ParseException; import org.apache.lucene.search.*; @@ -29,7 +30,6 @@ import org.apache.lucene.search.grouping.TopGroups; import org.apache.lucene.util.BytesRef; import org.apache.lucene.util.CharsRef; -import org.apache.lucene.util.ReaderUtil; import org.apache.lucene.util.UnicodeUtil; import org.apache.solr.client.solrj.SolrServerException; import org.apache.solr.common.SolrDocument; Index: solr/core/src/java/org/apache/solr/response/transform/ValueSourceAugmenter.java =================================================================== --- solr/core/src/java/org/apache/solr/response/transform/ValueSourceAugmenter.java (revision 1352563) +++ solr/core/src/java/org/apache/solr/response/transform/ValueSourceAugmenter.java (working copy) @@ -22,9 +22,9 @@ import org.apache.lucene.index.AtomicReaderContext; import org.apache.lucene.index.IndexReader; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.queries.function.FunctionValues; import org.apache.lucene.queries.function.ValueSource; -import org.apache.lucene.util.ReaderUtil; import org.apache.solr.common.SolrDocument; import org.apache.solr.common.SolrException; import org.apache.solr.search.QParser; Index: solr/core/src/java/org/apache/solr/schema/RandomSortField.java =================================================================== --- solr/core/src/java/org/apache/solr/schema/RandomSortField.java (revision 1352563) +++ solr/core/src/java/org/apache/solr/schema/RandomSortField.java (working copy) @@ -23,11 +23,11 @@ import org.apache.lucene.index.IndexableField; import org.apache.lucene.index.DirectoryReader; import org.apache.lucene.index.AtomicReaderContext; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.queries.function.FunctionValues; import org.apache.lucene.queries.function.ValueSource; import org.apache.lucene.queries.function.docvalues.IntDocValues; import org.apache.lucene.search.*; -import org.apache.lucene.util.ReaderUtil; import org.apache.solr.response.TextResponseWriter; import org.apache.solr.search.QParser; Index: solr/core/src/java/org/apache/solr/search/function/FileFloatSource.java =================================================================== --- solr/core/src/java/org/apache/solr/search/function/FileFloatSource.java (revision 1352563) +++ solr/core/src/java/org/apache/solr/search/function/FileFloatSource.java (working copy) @@ -31,6 +31,7 @@ import org.apache.lucene.index.IndexReader; import org.apache.lucene.index.MultiFields; import org.apache.lucene.index.IndexReaderContext; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.index.TermsEnum; import org.apache.lucene.index.AtomicReaderContext; import org.apache.lucene.queries.function.FunctionValues; @@ -38,7 +39,6 @@ import org.apache.lucene.queries.function.docvalues.FloatDocValues; import org.apache.lucene.search.DocIdSetIterator; import org.apache.lucene.util.BytesRef; -import org.apache.lucene.util.ReaderUtil; import org.apache.solr.core.SolrCore; import org.apache.solr.handler.RequestHandlerBase; import org.apache.solr.handler.RequestHandlerUtils; Index: solr/core/src/test/org/apache/solr/search/TestIndexSearcher.java =================================================================== --- solr/core/src/test/org/apache/solr/search/TestIndexSearcher.java (revision 1352563) +++ solr/core/src/test/org/apache/solr/search/TestIndexSearcher.java (working copy) @@ -18,9 +18,9 @@ import org.apache.lucene.index.AtomicReaderContext; import org.apache.lucene.index.IndexReaderContext; +import org.apache.lucene.index.ReaderUtil; import org.apache.lucene.queries.function.FunctionValues; import org.apache.lucene.queries.function.ValueSource; -import org.apache.lucene.util.ReaderUtil; import org.apache.solr.SolrTestCaseJ4; import org.apache.solr.request.SolrQueryRequest; import org.apache.solr.schema.SchemaField;