public class FieldQuery
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
FieldQuery.QueryPhraseMap
Internal structure of a query for highlighting: represents
a nested query structure
|
Modifier and Type | Field and Description |
---|---|
(package private) boolean |
fieldMatch |
private static int |
MAX_MTQ_TERMS |
(package private) java.util.Map<java.lang.String,FieldQuery.QueryPhraseMap> |
rootMaps |
(package private) int |
termOrPhraseNumber |
(package private) java.util.Map<java.lang.String,java.util.Set<java.lang.String>> |
termSetMap |
Constructor and Description |
---|
FieldQuery(Query query,
boolean phraseHighlight,
boolean fieldMatch)
For backwards compatibility you can initialize FieldQuery without
an IndexReader, which is only required to support MultiTermQuery
|
FieldQuery(Query query,
IndexReader reader,
boolean phraseHighlight,
boolean fieldMatch) |
Modifier and Type | Method and Description |
---|---|
private void |
checkOverlap(java.util.Collection<Query> expandQueries,
PhraseQuery a,
float aBoost,
PhraseQuery b,
float bBoost) |
private void |
checkOverlap(java.util.Collection<Query> expandQueries,
Term[] src,
Term[] dest,
int slop,
float boost) |
(package private) java.util.Collection<Query> |
expand(java.util.Collection<Query> flatQueries) |
protected void |
flatten(Query sourceQuery,
IndexReader reader,
java.util.Collection<Query> flatQueries,
float boost) |
FieldQuery.QueryPhraseMap |
getFieldTermMap(java.lang.String fieldName,
java.lang.String term) |
private java.lang.String |
getKey(Query query) |
(package private) FieldQuery.QueryPhraseMap |
getRootMap(Query query) |
private FieldQuery.QueryPhraseMap |
getRootMap(java.lang.String fieldName) |
private java.util.Set<java.lang.String> |
getTermSet(Query query) |
(package private) java.util.Set<java.lang.String> |
getTermSet(java.lang.String field) |
(package private) int |
nextTermOrPhraseNumber() |
(package private) void |
saveTerms(java.util.Collection<Query> flatQueries,
IndexReader reader) |
FieldQuery.QueryPhraseMap |
searchPhrase(java.lang.String fieldName,
java.util.List<FieldTermStack.TermInfo> phraseCandidate) |
final boolean fieldMatch
java.util.Map<java.lang.String,FieldQuery.QueryPhraseMap> rootMaps
java.util.Map<java.lang.String,java.util.Set<java.lang.String>> termSetMap
int termOrPhraseNumber
private static final int MAX_MTQ_TERMS
public FieldQuery(Query query, IndexReader reader, boolean phraseHighlight, boolean fieldMatch) throws java.io.IOException
java.io.IOException
FieldQuery(Query query, boolean phraseHighlight, boolean fieldMatch) throws java.io.IOException
java.io.IOException
protected void flatten(Query sourceQuery, IndexReader reader, java.util.Collection<Query> flatQueries, float boost) throws java.io.IOException
java.io.IOException
private void checkOverlap(java.util.Collection<Query> expandQueries, PhraseQuery a, float aBoost, PhraseQuery b, float bBoost)
private void checkOverlap(java.util.Collection<Query> expandQueries, Term[] src, Term[] dest, int slop, float boost)
FieldQuery.QueryPhraseMap getRootMap(Query query)
private java.lang.String getKey(Query query)
void saveTerms(java.util.Collection<Query> flatQueries, IndexReader reader) throws java.io.IOException
java.io.IOException
private java.util.Set<java.lang.String> getTermSet(Query query)
java.util.Set<java.lang.String> getTermSet(java.lang.String field)
public FieldQuery.QueryPhraseMap getFieldTermMap(java.lang.String fieldName, java.lang.String term)
public FieldQuery.QueryPhraseMap searchPhrase(java.lang.String fieldName, java.util.List<FieldTermStack.TermInfo> phraseCandidate)
private FieldQuery.QueryPhraseMap getRootMap(java.lang.String fieldName)
int nextTermOrPhraseNumber()