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 Analyzeranalyzerprivate java.lang.StringfieldNameprivate java.lang.StringlikeTextprivate intmaxQueryTermsprivate intminDocFreqprivate intminTermFrequencyprivate java.lang.String[]moreLikeFieldsprivate floatpercentTermsToMatchprivate 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 booleanequals(java.lang.Object other)Override and implement query instance equivalence properly in a subclass.private booleanequalsTo(MoreLikeThisQuery other)AnalyzergetAnalyzer()java.lang.StringgetLikeText()intgetMaxQueryTerms()intgetMinDocFreq()intgetMinTermFrequency()java.lang.String[]getMoreLikeFields()floatgetPercentTermsToMatch()java.util.Set<?>getStopWords()inthashCode()Override and implement query hash code properly in a subclass.Queryrewrite(IndexReader reader)Expert: called to re-write queries into primitive queries.voidsetAnalyzer(Analyzer analyzer)voidsetLikeText(java.lang.String likeText)voidsetMaxQueryTerms(int maxQueryTerms)voidsetMinDocFreq(int minDocFreq)voidsetMinTermFrequency(int minTermFrequency)voidsetMoreLikeFields(java.lang.String[] moreLikeFields)voidsetPercentTermsToMatch(float percentTermsToMatch)voidsetStopWords(java.util.Set<?> stopWords)java.lang.StringtoString(java.lang.String field)Prints a query to a string, withfieldassumed to be the default field and omitted.voidvisit(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:QueryExpert: 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:QueryPrints a query to a string, withfieldassumed 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:QueryOverride and implement query hash code properly in a subclass. This is required so thatQueryCacheworks properly.- Specified by:
hashCodein classQuery- See Also:
Query.equals(Object)
-
equals
public boolean equals(java.lang.Object other)
Description copied from class:QueryOverride and implement query instance equivalence properly in a subclass. This is required so thatQueryCacheworks 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:
equalsin classQuery- See Also:
Query.sameClassAs(Object),Query.classHash()
-
equalsTo
private boolean equalsTo(MoreLikeThisQuery other)
-
visit
public void visit(QueryVisitor visitor)
Description copied from class:QueryRecurse through the query tree, visiting any child queries
-
-