Package org.apache.lucene.queries.mlt
Class MoreLikeThisQuery
- java.lang.Object
-
- org.apache.lucene.search.Query
-
- org.apache.lucene.queries.mlt.MoreLikeThisQuery
-
public class MoreLikeThisQuery extends Query
A simple wrapper for MoreLikeThis for use in scenarios where a Query object is required eg in custom QueryParser extensions. At query.rewrite() time the reader is used to construct the actual MoreLikeThis object and obtain the real Query object.
-
-
Field Summary
Fields Modifier and Type Field Description private Analyzer
analyzer
private java.lang.String
fieldName
private java.lang.String
likeText
private int
maxQueryTerms
private int
minDocFreq
private int
minTermFrequency
private java.lang.String[]
moreLikeFields
private float
percentTermsToMatch
private java.util.Set<?>
stopWords
-
Constructor Summary
Constructors Constructor Description MoreLikeThisQuery(java.lang.String likeText, java.lang.String[] moreLikeFields, Analyzer analyzer, java.lang.String fieldName)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(java.lang.Object other)
Override and implement query instance equivalence properly in a subclass.private boolean
equalsTo(MoreLikeThisQuery other)
Analyzer
getAnalyzer()
java.lang.String
getLikeText()
int
getMaxQueryTerms()
int
getMinDocFreq()
int
getMinTermFrequency()
java.lang.String[]
getMoreLikeFields()
float
getPercentTermsToMatch()
java.util.Set<?>
getStopWords()
int
hashCode()
Override and implement query hash code properly in a subclass.Query
rewrite(IndexReader reader)
Expert: called to re-write queries into primitive queries.void
setAnalyzer(Analyzer analyzer)
void
setLikeText(java.lang.String likeText)
void
setMaxQueryTerms(int maxQueryTerms)
void
setMinDocFreq(int minDocFreq)
void
setMinTermFrequency(int minTermFrequency)
void
setMoreLikeFields(java.lang.String[] moreLikeFields)
void
setPercentTermsToMatch(float percentTermsToMatch)
void
setStopWords(java.util.Set<?> stopWords)
java.lang.String
toString(java.lang.String field)
Prints a query to a string, withfield
assumed to be the default field and omitted.void
visit(QueryVisitor visitor)
Recurse through the query tree, visiting any child queries-
Methods inherited from class org.apache.lucene.search.Query
classHash, createWeight, sameClassAs, toString
-
-
-
-
Field Detail
-
likeText
private java.lang.String likeText
-
moreLikeFields
private java.lang.String[] moreLikeFields
-
analyzer
private Analyzer analyzer
-
fieldName
private final java.lang.String fieldName
-
percentTermsToMatch
private float percentTermsToMatch
-
minTermFrequency
private int minTermFrequency
-
maxQueryTerms
private int maxQueryTerms
-
stopWords
private java.util.Set<?> stopWords
-
minDocFreq
private int minDocFreq
-
-
Constructor Detail
-
MoreLikeThisQuery
public MoreLikeThisQuery(java.lang.String likeText, java.lang.String[] moreLikeFields, Analyzer analyzer, java.lang.String fieldName)
- Parameters:
moreLikeFields
- fields used for similarity measure
-
-
Method Detail
-
rewrite
public Query rewrite(IndexReader reader) throws java.io.IOException
Description copied from class:Query
Expert: called to re-write queries into primitive queries. For example, a PrefixQuery will be rewritten into a BooleanQuery that consists of TermQuerys.
-
toString
public java.lang.String toString(java.lang.String field)
Description copied from class:Query
Prints a query to a string, withfield
assumed to be the default field and omitted.
-
getPercentTermsToMatch
public float getPercentTermsToMatch()
-
setPercentTermsToMatch
public void setPercentTermsToMatch(float percentTermsToMatch)
-
getAnalyzer
public Analyzer getAnalyzer()
-
setAnalyzer
public void setAnalyzer(Analyzer analyzer)
-
getLikeText
public java.lang.String getLikeText()
-
setLikeText
public void setLikeText(java.lang.String likeText)
-
getMaxQueryTerms
public int getMaxQueryTerms()
-
setMaxQueryTerms
public void setMaxQueryTerms(int maxQueryTerms)
-
getMinTermFrequency
public int getMinTermFrequency()
-
setMinTermFrequency
public void setMinTermFrequency(int minTermFrequency)
-
getMoreLikeFields
public java.lang.String[] getMoreLikeFields()
-
setMoreLikeFields
public void setMoreLikeFields(java.lang.String[] moreLikeFields)
-
getStopWords
public java.util.Set<?> getStopWords()
-
setStopWords
public void setStopWords(java.util.Set<?> stopWords)
-
getMinDocFreq
public int getMinDocFreq()
-
setMinDocFreq
public void setMinDocFreq(int minDocFreq)
-
hashCode
public int hashCode()
Description copied from class:Query
Override and implement query hash code properly in a subclass. This is required so thatQueryCache
works properly.- Specified by:
hashCode
in classQuery
- See Also:
Query.equals(Object)
-
equals
public boolean equals(java.lang.Object other)
Description copied from class:Query
Override and implement query instance equivalence properly in a subclass. This is required so thatQueryCache
works properly. Typically a query will be equal to another only if it's an instance of the same class and its document-filtering properties are identical that other instance. Utility methods are provided for certain repetitive code.- Specified by:
equals
in classQuery
- See Also:
Query.sameClassAs(Object)
,Query.classHash()
-
equalsTo
private boolean equalsTo(MoreLikeThisQuery other)
-
visit
public void visit(QueryVisitor visitor)
Description copied from class:Query
Recurse through the query tree, visiting any child queries
-
-