public final class SegmentReader extends AtomicReader
Instances pointing to the same segment (but with different deletes, etc) may share the same core data.
Modifier and Type | Class and Description |
---|---|
static interface |
SegmentReader.CoreClosedListener
Called when the shared core for this SegmentReader
is closed.
|
IndexReader.ReaderClosedListener
Constructor and Description |
---|
SegmentReader(SegmentInfoPerCommit si,
int termInfosIndexDivisor,
IOContext context)
Constructs a new SegmentReader with a new core.
|
Modifier and Type | Method and Description |
---|---|
void |
addCoreClosedListener(SegmentReader.CoreClosedListener listener)
Expert: adds a CoreClosedListener to this reader's shared core
|
Directory |
directory()
Returns the directory this index resides in.
|
protected void |
doClose()
Implements close.
|
void |
document(int docID,
StoredFieldVisitor visitor)
Expert: visits the fields of a stored document, for
custom processing/loading of each field.
|
DocValues |
docValues(String field)
Returns
DocValues for this field. |
Fields |
fields()
Returns
Fields for this reader. |
Object |
getCombinedCoreAndDeletesKey()
Expert: Returns a key for this IndexReader that also includes deletions,
so FieldCache/CachingWrapperFilter can find it again.
|
Object |
getCoreCacheKey()
Expert: Returns a key for this IndexReader, so FieldCache/CachingWrapperFilter can find
it again.
|
FieldInfos |
getFieldInfos()
Get the
FieldInfos describing all fields in
this reader. |
StoredFieldsReader |
getFieldsReader()
Expert: retrieve thread-private
StoredFieldsReader |
Bits |
getLiveDocs()
Returns the
Bits representing live (not
deleted) docs. |
String |
getSegmentName()
Return the name of the segment this reader is reading.
|
int |
getTermInfosIndexDivisor()
Returns term infos index divisor originally passed to
SegmentReader(SegmentInfoPerCommit, int, IOContext) . |
Fields |
getTermVectors(int docID)
Retrieve term vectors for this document, or null if
term vectors were not indexed.
|
TermVectorsReader |
getTermVectorsReader()
Expert: retrieve thread-private
TermVectorsReader |
boolean |
hasDeletions()
Returns true if any documents have been deleted
|
int |
maxDoc()
Returns one greater than the largest possible document number.
|
DocValues |
normValues(String field)
Returns
DocValues for this field's normalization values. |
int |
numDocs()
Returns the number of documents in this index.
|
void |
removeCoreClosedListener(SegmentReader.CoreClosedListener listener)
Expert: removes a CoreClosedListener from this reader's shared core
|
String |
toString() |
docFreq, getContext, hasNorms, termDocsEnum, termPositionsEnum, terms, totalTermFreq
addReaderClosedListener, close, decRef, document, document, ensureOpen, equals, getRefCount, getTermVector, hashCode, incRef, leaves, numDeletedDocs, open, open, open, open, open, registerParentReader, removeReaderClosedListener, tryIncRef
public SegmentReader(SegmentInfoPerCommit si, int termInfosIndexDivisor, IOContext context) throws IOException
CorruptIndexException
- if the index is corruptIOException
- if there is a low-level IO errorpublic Bits getLiveDocs()
AtomicReader
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 AtomicReader
protected void doClose() throws IOException
IndexReader
doClose
in class IndexReader
IOException
public boolean hasDeletions()
IndexReader
hasDeletions
in class IndexReader
public FieldInfos getFieldInfos()
AtomicReader
FieldInfos
describing all fields in
this reader.getFieldInfos
in class AtomicReader
public StoredFieldsReader getFieldsReader()
StoredFieldsReader
public void document(int docID, StoredFieldVisitor visitor) throws IOException
IndexReader
IndexReader.document(int)
. If you want to load a subset, use
DocumentStoredFieldVisitor
.document
in class IndexReader
IOException
public Fields fields()
AtomicReader
Fields
for this reader.
This method may return null if the reader has no
postings.fields
in class AtomicReader
public int numDocs()
IndexReader
numDocs
in class IndexReader
public int maxDoc()
IndexReader
maxDoc
in class IndexReader
public TermVectorsReader getTermVectorsReader()
TermVectorsReader
public Fields getTermVectors(int docID) throws IOException
IndexReader
getTermVectors
in class IndexReader
IOException
public String getSegmentName()
public Directory directory()
public Object getCoreCacheKey()
IndexReader
getCoreCacheKey
in class IndexReader
public Object getCombinedCoreAndDeletesKey()
IndexReader
getCombinedCoreAndDeletesKey
in class IndexReader
public int getTermInfosIndexDivisor()
SegmentReader(SegmentInfoPerCommit, int, IOContext)
.public DocValues docValues(String field) throws IOException
AtomicReader
DocValues
for this field.
This method may return null if the reader has no per-document
values stored.docValues
in class AtomicReader
IOException
public DocValues normValues(String field) throws IOException
AtomicReader
DocValues
for this field's normalization values.
This method may return null if the field has no norms.normValues
in class AtomicReader
IOException
public void addCoreClosedListener(SegmentReader.CoreClosedListener listener)
public void removeCoreClosedListener(SegmentReader.CoreClosedListener listener)
Copyright © 2000-2012 Apache Software Foundation. All Rights Reserved.