class SortingLeafReader extends FilterLeafReader
LeafReader
which supports sorting documents by a given
Sort
. This is package private and is only used by Lucene for BWC when it needs to merge
an unsorted flushed segment built by an older version (newly flushed segments are sorted since version 7.0).Modifier and Type | Class and Description |
---|---|
(package private) static class |
SortingLeafReader.CachedBinaryDVs |
(package private) static class |
SortingLeafReader.CachedNumericDVs |
(package private) static class |
SortingLeafReader.SortingBinaryDocValues |
private static class |
SortingLeafReader.SortingBits |
(package private) static class |
SortingLeafReader.SortingDocsEnum |
(package private) static class |
SortingLeafReader.SortingFields |
(package private) static class |
SortingLeafReader.SortingNumericDocValues |
private static class |
SortingLeafReader.SortingPointValues |
(package private) static class |
SortingLeafReader.SortingPostingsEnum |
(package private) static class |
SortingLeafReader.SortingSortedDocValues |
(package private) static class |
SortingLeafReader.SortingSortedNumericDocValues |
(package private) static class |
SortingLeafReader.SortingSortedSetDocValues |
private static class |
SortingLeafReader.SortingTerms |
private static class |
SortingLeafReader.SortingTermsEnum |
FilterLeafReader.FilterFields, FilterLeafReader.FilterPostingsEnum, FilterLeafReader.FilterTerms, FilterLeafReader.FilterTermsEnum
IndexReader.CacheHelper, IndexReader.CacheKey, IndexReader.ClosedListener
Modifier and Type | Field and Description |
---|---|
private java.util.Map<java.lang.String,SortingLeafReader.CachedBinaryDVs> |
cachedBinaryDVs |
private java.util.Map<java.lang.String,SortingLeafReader.CachedNumericDVs> |
cachedNorms |
private java.util.Map<java.lang.String,SortingLeafReader.CachedNumericDVs> |
cachedNumericDVs |
private java.util.Map<java.lang.String,int[]> |
cachedSortedDVs |
private java.util.Map<java.lang.String,long[][]> |
cachedSortedNumericDVs |
private java.util.Map<java.lang.String,long[][]> |
cachedSortedSetDVs |
(package private) Sorter.DocMap |
docMap |
in
Modifier | Constructor and Description |
---|---|
private |
SortingLeafReader(LeafReader in,
Sorter.DocMap docMap) |
Modifier and Type | Method and Description |
---|---|
void |
document(int docID,
StoredFieldVisitor visitor)
Expert: visits the fields of a stored document, for
custom processing/loading of each field.
|
BinaryDocValues |
getBinaryDocValues(java.lang.String field)
Returns
BinaryDocValues for this field, or
null if no binary doc values were indexed for
this field. |
IndexReader.CacheHelper |
getCoreCacheHelper()
Optional method: Return a
IndexReader.CacheHelper that can be used to cache
based on the content of this leaf regardless of deletions. |
Bits |
getLiveDocs()
Returns the
Bits representing live (not
deleted) docs. |
NumericDocValues |
getNormValues(java.lang.String field)
Returns
NumericDocValues representing norms
for this field, or null if no NumericDocValues
were indexed. |
NumericDocValues |
getNumericDocValues(java.lang.String field)
Returns
NumericDocValues for this field, or
null if no numeric doc values were indexed for
this field. |
PointValues |
getPointValues(java.lang.String fieldName)
Returns the
PointValues used for numeric or
spatial searches for the given field, or null if there
are no point fields. |
IndexReader.CacheHelper |
getReaderCacheHelper()
Optional method: Return a
IndexReader.CacheHelper that can be used to cache
based on the content of this reader. |
SortedDocValues |
getSortedDocValues(java.lang.String field)
Returns
SortedDocValues for this field, or
null if no SortedDocValues were indexed for
this field. |
SortedNumericDocValues |
getSortedNumericDocValues(java.lang.String field)
Returns
SortedNumericDocValues for this field, or
null if no SortedNumericDocValues were indexed for
this field. |
SortedSetDocValues |
getSortedSetDocValues(java.lang.String field)
Returns
SortedSetDocValues for this field, or
null if no SortedSetDocValues were indexed for
this field. |
Fields |
getTermVectors(int docID)
Retrieve term vectors for this document, or null if
term vectors were not indexed.
|
Terms |
terms(java.lang.String field)
Returns the
Terms index for this field, or null if it has none. |
java.lang.String |
toString() |
static LeafReader |
wrap(LeafReader reader,
Sort sort)
Return a sorted view of
reader according to the order
defined by sort . |
(package private) static LeafReader |
wrap(LeafReader reader,
Sorter.DocMap docMap)
Expert: same as
wrap(org.apache.lucene.index.LeafReader, Sort) but operates directly on a Sorter.DocMap . |
checkIntegrity, doClose, getDelegate, getFieldInfos, getMetaData, maxDoc, numDocs, unwrap
docFreq, getContext, getDocCount, getSumDocFreq, getSumTotalTermFreq, postings, postings, totalTermFreq
close, decRef, document, document, ensureOpen, equals, getRefCount, getTermVector, hasDeletions, hashCode, incRef, leaves, notifyReaderClosedListeners, numDeletedDocs, registerParentReader, tryIncRef
private final java.util.Map<java.lang.String,SortingLeafReader.CachedNumericDVs> cachedNumericDVs
private final java.util.Map<java.lang.String,SortingLeafReader.CachedBinaryDVs> cachedBinaryDVs
private final java.util.Map<java.lang.String,int[]> cachedSortedDVs
private final java.util.Map<java.lang.String,long[][]> cachedSortedSetDVs
private final java.util.Map<java.lang.String,long[][]> cachedSortedNumericDVs
final Sorter.DocMap docMap
private final java.util.Map<java.lang.String,SortingLeafReader.CachedNumericDVs> cachedNorms
private SortingLeafReader(LeafReader in, Sorter.DocMap docMap)
public static LeafReader wrap(LeafReader reader, Sort sort) throws java.io.IOException
reader
according to the order
defined by sort
. If the reader is already sorted, this
method might return the reader as-is.java.io.IOException
static LeafReader wrap(LeafReader reader, Sorter.DocMap docMap)
wrap(org.apache.lucene.index.LeafReader, Sort)
but operates directly on a Sorter.DocMap
.public void document(int docID, StoredFieldVisitor visitor) throws java.io.IOException
IndexReader
IndexReader.document(int)
. If you want to load a subset, use
DocumentStoredFieldVisitor
.document
in class FilterLeafReader
java.io.IOException
public Terms terms(java.lang.String field) throws java.io.IOException
LeafReader
Terms
index for this field, or null if it has none.terms
in class FilterLeafReader
java.io.IOException
public BinaryDocValues getBinaryDocValues(java.lang.String field) throws java.io.IOException
LeafReader
BinaryDocValues
for this field, or
null if no binary doc values were indexed for
this field. The returned instance should only be
used by a single thread.getBinaryDocValues
in class FilterLeafReader
java.io.IOException
public Bits getLiveDocs()
LeafReader
Bits
representing live (not
deleted) docs. A set bit indicates the doc ID has not
been deleted. If this method returns null it means
there are no deleted documents (all documents are
live).
The returned instance has been safely published for
use by multiple threads without additional
synchronization.getLiveDocs
in class FilterLeafReader
public PointValues getPointValues(java.lang.String fieldName) throws java.io.IOException
LeafReader
PointValues
used for numeric or
spatial searches for the given field, or null if there
are no point fields.getPointValues
in class FilterLeafReader
java.io.IOException
public NumericDocValues getNormValues(java.lang.String field) throws java.io.IOException
LeafReader
NumericDocValues
representing norms
for this field, or null if no NumericDocValues
were indexed. The returned instance should only be
used by a single thread.getNormValues
in class FilterLeafReader
java.io.IOException
public NumericDocValues getNumericDocValues(java.lang.String field) throws java.io.IOException
LeafReader
NumericDocValues
for this field, or
null if no numeric doc values were indexed for
this field. The returned instance should only be
used by a single thread.getNumericDocValues
in class FilterLeafReader
java.io.IOException
public SortedNumericDocValues getSortedNumericDocValues(java.lang.String field) throws java.io.IOException
LeafReader
SortedNumericDocValues
for this field, or
null if no SortedNumericDocValues
were indexed for
this field. The returned instance should only be
used by a single thread.getSortedNumericDocValues
in class FilterLeafReader
java.io.IOException
public SortedDocValues getSortedDocValues(java.lang.String field) throws java.io.IOException
LeafReader
SortedDocValues
for this field, or
null if no SortedDocValues
were indexed for
this field. The returned instance should only be
used by a single thread.getSortedDocValues
in class FilterLeafReader
java.io.IOException
public SortedSetDocValues getSortedSetDocValues(java.lang.String field) throws java.io.IOException
LeafReader
SortedSetDocValues
for this field, or
null if no SortedSetDocValues
were indexed for
this field. The returned instance should only be
used by a single thread.getSortedSetDocValues
in class FilterLeafReader
java.io.IOException
public Fields getTermVectors(int docID) throws java.io.IOException
IndexReader
getTermVectors
in class FilterLeafReader
java.io.IOException
public java.lang.String toString()
toString
in class FilterLeafReader
public IndexReader.CacheHelper getCoreCacheHelper()
LeafReader
IndexReader.CacheHelper
that can be used to cache
based on the content of this leaf regardless of deletions. Two readers
that have the same data but different sets of deleted documents or doc
values updates may be considered equal. Consider using
IndexReader.getReaderCacheHelper()
if you need deletions or dv updates to be
taken into account.
A return value of null
indicates that this reader is not suited
for caching, which is typically the case for short-lived wrappers that
alter the content of the wrapped leaf reader.
getCoreCacheHelper
in class LeafReader
public IndexReader.CacheHelper getReaderCacheHelper()
IndexReader
IndexReader.CacheHelper
that can be used to cache
based on the content of this reader. Two readers that have different data
or different sets of deleted documents will be considered different.
A return value of null
indicates that this reader is not suited
for caching, which is typically the case for short-lived wrappers that
alter the content of the wrapped reader.
getReaderCacheHelper
in class IndexReader