public class IndexSearcher extends Searcher
Applications usually need only call the inherited Searcher.search(Query)
or
Searcher.search(Query,Filter)
methods.
Constructor and Description |
---|
IndexSearcher(Directory directory)
Creates a searcher searching the index in the provided directory.
|
IndexSearcher(IndexReader r)
Creates a searcher searching the provided index.
|
IndexSearcher(String path)
Creates a searcher searching the index in the named directory.
|
Modifier and Type | Method and Description |
---|---|
void |
close()
Note that the underlying IndexReader is not closed, if IndexSearcher was
constructed with IndexSearcher(IndexReader r).
|
Document |
doc(int i)
Expert: Returns the stored fields of document
i . |
int |
docFreq(Term term)
Expert: Returns the number of documents containing
term . |
Explanation |
explain(Query query,
int doc)
Returns an Explanation that describes how
doc scored against
query . |
ArrayList[] |
getFirstTermPositions()
Returns an array of arrayLists where the first list contains
document numbers, second list contains first term positions, third
list contains the pattern lengths and the fourth one contains the
query type for each pattern.
|
void |
initializeTermPositions()
Initializes all local variables
|
int |
maxDoc()
Expert: Returns one greater than the largest possible document number.
|
Query |
rewrite(Query original)
Expert: called to re-write queries into primitive queries.
|
void |
search(Query query,
Filter filter,
HitCollector results)
Lower-level search API.
|
TopDocs |
search(Query query,
Filter filter,
int nDocs)
Expert: Low-level search implementation.
|
TopFieldDocs |
search(Query query,
Filter filter,
int nDocs,
Sort sort)
Expert: Low-level search implementation with arbitrary sorting.
|
void |
setFirstTermPositions(int qType,
int doc,
ArrayList positions,
int patternLength,
int frequency)
Sets the firstTermPositions.
|
getSimilarity, search, search, search, search, search, setSimilarity
public IndexSearcher(String path) throws IOException
IOException
public IndexSearcher(Directory directory) throws IOException
IOException
public IndexSearcher(IndexReader r)
public void close() throws IOException
IOException
public int docFreq(Term term) throws IOException
Searchable
term
.
Called by search code to compute term weights.
IndexReader.docFreq(Term)
IOException
public Document doc(int i) throws IOException
Searchable
i
.
Called by HitCollector
implementations.
IndexReader.document(int)
.IOException
public int maxDoc() throws IOException
Searchable
IndexReader.maxDoc()
.IOException
public TopDocs search(Query query, Filter filter, int nDocs) throws IOException
Searchable
n
hits for query
, applying filter
if non-null.
Called by Hits
.
Applications should usually call Searcher.search(Query)
or
Searcher.search(Query,Filter)
instead.
IOException
public TopFieldDocs search(Query query, Filter filter, int nDocs, Sort sort) throws IOException
Searchable
n
hits for query
, applying
filter
if non-null, and sorting the hits by the criteria in
sort
.
Applications should usually call Searcher.search(Query,Filter,Sort)
instead.
IOException
public void search(Query query, Filter filter, HitCollector results) throws IOException
Searchable
HitCollector.collect(int,float)
is called for every non-zero
scoring document.
Applications should only use this if they need all of the
matching documents. The high-level search API (Searcher.search(Query)
) is usually more efficient, as it skips
non-high-scoring hits.
query
- to match documentsfilter
- if non-null, a bitset used to eliminate some documentsresults
- to receive hitsIOException
public Query rewrite(Query original) throws IOException
Searchable
IOException
public Explanation explain(Query query, int doc) throws IOException
Searchable
doc
scored against
query
.
This is intended to be used in developing Similarity implementations, and, for good performance, should not be displayed with every hit. Computing an explanation is as expensive as executing the query over the entire index.
IOException
public void setFirstTermPositions(int qType, int doc, ArrayList positions, int patternLength, int frequency)
qType
- doc
- positions
- patternLength
- public void initializeTermPositions()
public ArrayList[] getFirstTermPositions()
Copyright © 2024 GATE. All rights reserved.