org.apache.lucene.search

Class MultiSearcher

public class MultiSearcher extends Searcher

Implements search over a set of Searchables.

Applications usually need only call the inherited {@link #search(Query)} or {@link #search(Query,Filter)} methods.

Constructor Summary
MultiSearcher(Searchable[] searchables)
Creates a searcher which searches searchables.
Method Summary
voidclose()
protected WeightcreateWeight(Query original)
Create weight in multiple index scenario.
Documentdoc(int n)
intdocFreq(Term term)
Explanationexplain(Weight weight, int doc)
Searchable[]getSearchables()
Return the array of {@link Searchable}s this searches.
protected int[]getStarts()
intmaxDoc()
Queryrewrite(Query original)
TopDocssearch(Weight weight, Filter filter, int nDocs)
TopFieldDocssearch(Weight weight, Filter filter, int n, Sort sort)
voidsearch(Weight weight, Filter filter, HitCollector results)
intsearcherIndex(int n)
Call {@link #subSearcher} instead.
intsubDoc(int n)
Returns the document number of document n within its sub-index.
intsubSearcher(int n)
Returns index of the searcher for document n in the array used to construct this searcher.

Constructor Detail

MultiSearcher

public MultiSearcher(Searchable[] searchables)
Creates a searcher which searches searchables.

Method Detail

close

public void close()

createWeight

protected Weight createWeight(Query original)
Create weight in multiple index scenario. Distributed query processing is done in the following steps: 1. rewrite query 2. extract necessary terms 3. collect dfs for these terms from the Searchables 4. create query weight using aggregate dfs. 5. distribute that weight to Searchables 6. merge results Steps 1-4 are done here, 5+6 in the search() methods

Returns: rewritten queries

doc

public Document doc(int n)

docFreq

public int docFreq(Term term)

explain

public Explanation explain(Weight weight, int doc)

getSearchables

public Searchable[] getSearchables()
Return the array of {@link Searchable}s this searches.

getStarts

protected int[] getStarts()

maxDoc

public int maxDoc()

rewrite

public Query rewrite(Query original)

search

public TopDocs search(Weight weight, Filter filter, int nDocs)

search

public TopFieldDocs search(Weight weight, Filter filter, int n, Sort sort)

search

public void search(Weight weight, Filter filter, HitCollector results)

searcherIndex

public int searcherIndex(int n)

Deprecated:

Call {@link #subSearcher} instead.

subDoc

public int subDoc(int n)
Returns the document number of document n within its sub-index.

subSearcher

public int subSearcher(int n)
Returns index of the searcher for document n in the array used to construct this searcher.
Copyright © 2000-2008 Apache Software Foundation. All Rights Reserved.