|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.apache.lucene.index.IndexReader
org.apache.lucene.index.MultiReader
public class MultiReader
An IndexReader which reads multiple indexes, appending their content.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class org.apache.lucene.index.IndexReader |
|---|
IndexReader.FieldOption |
| Field Summary | |
|---|---|
protected IndexReader[] |
subReaders
|
| Fields inherited from class org.apache.lucene.index.IndexReader |
|---|
hasChanges |
| Constructor Summary | |
|---|---|
MultiReader(IndexReader[] subReaders)
Construct a MultiReader aggregating the named set of (sub)readers. |
|
MultiReader(IndexReader[] subReaders,
boolean closeSubReaders)
Construct a MultiReader aggregating the named set of (sub)readers. |
|
| Method Summary | |
|---|---|
int |
docFreq(Term t)
Returns the number of documents containing the term t. |
protected void |
doClose()
Implements close. |
protected void |
doCommit()
Implements commit. |
Document |
document(int n,
FieldSelector fieldSelector)
Get the Document at the nth position. |
protected void |
doDelete(int n)
Implements deletion of the document numbered docNum. |
protected void |
doSetNorm(int n,
java.lang.String field,
byte value)
Implements setNorm in subclass. |
protected void |
doUndeleteAll()
Implements actual undeleteAll() in subclass. |
java.util.Collection |
getFieldNames(IndexReader.FieldOption fieldNames)
Get a list of unique field names that exist in this index and have the specified field option information. |
TermFreqVector |
getTermFreqVector(int n,
java.lang.String field)
Return a term frequency vector for the specified document and field. |
void |
getTermFreqVector(int docNumber,
java.lang.String field,
TermVectorMapper mapper)
Load the Term Vector into a user-defined data structure instead of relying on the parallel arrays of the TermFreqVector. |
void |
getTermFreqVector(int docNumber,
TermVectorMapper mapper)
Map all the term vectors for all fields in a Document |
TermFreqVector[] |
getTermFreqVectors(int n)
Return an array of term frequency vectors for the specified document. |
long |
getVersion()
Not implemented. |
boolean |
hasDeletions()
Returns true if any documents have been deleted |
boolean |
hasNorms(java.lang.String field)
Returns true if there are norms stored for this field. |
boolean |
isCurrent()
Checks recursively if all subreaders are up to date. |
boolean |
isDeleted(int n)
Returns true if document n has been deleted |
boolean |
isOptimized()
Checks is the index is optimized (if it has a single segment and no deletions). |
int |
maxDoc()
Returns one greater than the largest possible document number. |
byte[] |
norms(java.lang.String field)
Returns the byte-encoded normalization factor for the named field of every document. |
void |
norms(java.lang.String field,
byte[] result,
int offset)
Reads the byte-encoded normalization factor for the named field of every document. |
int |
numDocs()
Returns the number of documents in this index. |
IndexReader |
reopen()
Tries to reopen the subreaders. |
TermDocs |
termDocs()
Returns an unpositioned TermDocs enumerator. |
TermPositions |
termPositions()
Returns an unpositioned TermPositions enumerator. |
TermEnum |
terms()
Returns an enumeration of all the terms in the index. |
TermEnum |
terms(Term term)
Returns an enumeration of all terms starting at a given term. |
| Methods inherited from class org.apache.lucene.index.IndexReader |
|---|
acquireWriteLock, close, commit, decRef, deleteDocument, deleteDocuments, directory, document, ensureOpen, flush, getCurrentVersion, getCurrentVersion, getCurrentVersion, getIndexCommit, getTermInfosIndexDivisor, incRef, indexExists, indexExists, indexExists, isLocked, isLocked, lastModified, lastModified, lastModified, listCommits, main, numDeletedDocs, open, open, open, open, open, open, open, open, open, setNorm, setNorm, setTermInfosIndexDivisor, termDocs, termPositions, undeleteAll, unlock |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected IndexReader[] subReaders
| Constructor Detail |
|---|
public MultiReader(IndexReader[] subReaders)
Construct a MultiReader aggregating the named set of (sub)readers. Directory locking for delete, undeleteAll, and setNorm operations is left to the subreaders.
Note that all subreaders are closed if this Multireader is closed.
subReaders - set of (sub)readers
java.io.IOException
public MultiReader(IndexReader[] subReaders,
boolean closeSubReaders)
Construct a MultiReader aggregating the named set of (sub)readers. Directory locking for delete, undeleteAll, and setNorm operations is left to the subreaders.
closeSubReaders - indicates whether the subreaders should be closed
when this MultiReader is closedsubReaders - set of (sub)readers
java.io.IOException| Method Detail |
|---|
public IndexReader reopen()
throws CorruptIndexException,
java.io.IOException
A re-opened instance might share one or more subreaders with the old
instance. Index modification operations result in undefined behavior
when performed before the old instance is closed.
(see IndexReader.reopen()).
If subreaders are shared, then the reference count of those readers is increased to ensure that the subreaders remain open until the last referring reader is closed.
reopen in class IndexReaderCorruptIndexException - if the index is corrupt
java.io.IOException - if there is a low-level IO error
public TermFreqVector[] getTermFreqVectors(int n)
throws java.io.IOException
IndexReader
getTermFreqVectors in class IndexReadern - document for which term frequency vectors are returned
java.io.IOException - if index cannot be accessedField.TermVector
public TermFreqVector getTermFreqVector(int n,
java.lang.String field)
throws java.io.IOException
IndexReader
getTermFreqVector in class IndexReadern - document for which the term frequency vector is returnedfield - field for which the term frequency vector is returned.
java.io.IOException - if index cannot be accessedField.TermVector
public void getTermFreqVector(int docNumber,
java.lang.String field,
TermVectorMapper mapper)
throws java.io.IOException
IndexReaderTermFreqVector.
getTermFreqVector in class IndexReaderdocNumber - The number of the document to load the vector forfield - The name of the field to loadmapper - The TermVectorMapper to process the vector. Must not be null
java.io.IOException - if term vectors cannot be accessed or if they do not exist on the field and doc. specified.
public void getTermFreqVector(int docNumber,
TermVectorMapper mapper)
throws java.io.IOException
IndexReader
getTermFreqVector in class IndexReaderdocNumber - The number of the document to load the vector formapper - The TermVectorMapper to process the vector. Must not be null
java.io.IOException - if term vectors cannot be accessed or if they do not exist on the field and doc. specified.public boolean isOptimized()
IndexReader
isOptimized in class IndexReadertrue if the index is optimized; false otherwisepublic int numDocs()
IndexReader
numDocs in class IndexReaderpublic int maxDoc()
IndexReader
maxDoc in class IndexReader
public Document document(int n,
FieldSelector fieldSelector)
throws CorruptIndexException,
java.io.IOException
IndexReaderDocument at the nth position. The FieldSelector
may be used to determine what Fields to load and how they should be loaded.
NOTE: If this Reader (more specifically, the underlying FieldsReader) is closed before the lazy Field is
loaded an exception may be thrown. If you want the value of a lazy Field to be available after closing you must
explicitly load it or fetch the Document again with a new loader.
document in class IndexReadern - Get the document at the nth positionfieldSelector - The FieldSelector to use to determine what Fields should be loaded on the Document. May be null, in which case all Fields will be loaded.
Document at the nth position
CorruptIndexException - if the index is corrupt
java.io.IOException - if there is a low-level IO errorFieldable,
FieldSelector,
SetBasedFieldSelector,
LoadFirstFieldSelectorpublic boolean isDeleted(int n)
IndexReader
isDeleted in class IndexReaderpublic boolean hasDeletions()
IndexReader
hasDeletions in class IndexReader
protected void doDelete(int n)
throws CorruptIndexException,
java.io.IOException
IndexReaderdocNum.
Applications should call IndexReader.deleteDocument(int) or IndexReader.deleteDocuments(Term).
doDelete in class IndexReaderCorruptIndexException
java.io.IOException
protected void doUndeleteAll()
throws CorruptIndexException,
java.io.IOException
IndexReader
doUndeleteAll in class IndexReaderCorruptIndexException
java.io.IOException
public boolean hasNorms(java.lang.String field)
throws java.io.IOException
IndexReader
hasNorms in class IndexReaderjava.io.IOException
public byte[] norms(java.lang.String field)
throws java.io.IOException
IndexReader
norms in class IndexReaderjava.io.IOExceptionAbstractField.setBoost(float)
public void norms(java.lang.String field,
byte[] result,
int offset)
throws java.io.IOException
IndexReader
norms in class IndexReaderjava.io.IOExceptionAbstractField.setBoost(float)
protected void doSetNorm(int n,
java.lang.String field,
byte value)
throws CorruptIndexException,
java.io.IOException
IndexReader
doSetNorm in class IndexReaderCorruptIndexException
java.io.IOException
public TermEnum terms()
throws java.io.IOException
IndexReaderTermEnum.next() must be called
on the resulting enumeration before calling other methods such as
TermEnum.term().
terms in class IndexReaderjava.io.IOException - if there is a low-level IO error
public TermEnum terms(Term term)
throws java.io.IOException
IndexReader
terms in class IndexReaderjava.io.IOException - if there is a low-level IO error
public int docFreq(Term t)
throws java.io.IOException
IndexReadert.
docFreq in class IndexReaderjava.io.IOException - if there is a low-level IO error
public TermDocs termDocs()
throws java.io.IOException
IndexReaderTermDocs enumerator.
termDocs in class IndexReaderjava.io.IOException - if there is a low-level IO error
public TermPositions termPositions()
throws java.io.IOException
IndexReaderTermPositions enumerator.
termPositions in class IndexReaderjava.io.IOException - if there is a low-level IO error
protected void doCommit()
throws java.io.IOException
IndexReader
doCommit in class IndexReaderjava.io.IOException
protected void doClose()
throws java.io.IOException
IndexReader
doClose in class IndexReaderjava.io.IOExceptionpublic java.util.Collection getFieldNames(IndexReader.FieldOption fieldNames)
IndexReader
getFieldNames in class IndexReaderfieldNames - specifies which field option should be available for the returned fields
IndexReader.FieldOption
public boolean isCurrent()
throws CorruptIndexException,
java.io.IOException
isCurrent in class IndexReaderCorruptIndexException - if the index is corrupt
java.io.IOException - if there is a low-level IO errorpublic long getVersion()
getVersion in class IndexReaderjava.lang.UnsupportedOperationException
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||