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, totalTermFreqaddReaderClosedListener, close, decRef, document, document, ensureOpen, equals, getRefCount, getTermVector, hashCode, incRef, leaves, numDeletedDocs, open, open, open, open, open, registerParentReader, removeReaderClosedListener, tryIncRefpublic 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()
AtomicReaderBits 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 AtomicReaderprotected void doClose()
throws IOException
IndexReaderdoClose in class IndexReaderIOExceptionpublic boolean hasDeletions()
IndexReaderhasDeletions in class IndexReaderpublic FieldInfos getFieldInfos()
AtomicReaderFieldInfos describing all fields in
this reader.getFieldInfos in class AtomicReaderpublic StoredFieldsReader getFieldsReader()
StoredFieldsReaderpublic void document(int docID,
StoredFieldVisitor visitor)
throws IOException
IndexReaderIndexReader.document(int). If you want to load a subset, use
DocumentStoredFieldVisitor.document in class IndexReaderIOExceptionpublic Fields fields()
AtomicReaderFields for this reader.
This method may return null if the reader has no
postings.fields in class AtomicReaderpublic int numDocs()
IndexReadernumDocs in class IndexReaderpublic int maxDoc()
IndexReadermaxDoc in class IndexReaderpublic TermVectorsReader getTermVectorsReader()
TermVectorsReaderpublic Fields getTermVectors(int docID) throws IOException
IndexReadergetTermVectors in class IndexReaderIOExceptionpublic String getSegmentName()
public Directory directory()
public Object getCoreCacheKey()
IndexReadergetCoreCacheKey in class IndexReaderpublic Object getCombinedCoreAndDeletesKey()
IndexReadergetCombinedCoreAndDeletesKey in class IndexReaderpublic int getTermInfosIndexDivisor()
SegmentReader(SegmentInfoPerCommit, int, IOContext).public DocValues docValues(String field) throws IOException
AtomicReaderDocValues for this field.
This method may return null if the reader has no per-document
values stored.docValues in class AtomicReaderIOExceptionpublic DocValues normValues(String field) throws IOException
AtomicReaderDocValues for this field's normalization values.
This method may return null if the field has no norms.normValues in class AtomicReaderIOExceptionpublic void addCoreClosedListener(SegmentReader.CoreClosedListener listener)
public void removeCoreClosedListener(SegmentReader.CoreClosedListener listener)
Copyright © 2000-2012 Apache Software Foundation. All Rights Reserved.