mirror of https://github.com/apache/lucene.git
Shorten docFreq and totalTermFreq to df and ttf in TermsComponent
This commit is contained in:
parent
19bcffa036
commit
08f2de6d1a
|
@ -41,10 +41,10 @@ import java.util.regex.Pattern;
|
|||
|
||||
/**
|
||||
* Return TermEnum information, useful for things like auto suggest.
|
||||
*
|
||||
*
|
||||
* <pre class="prettyprint">
|
||||
* <searchComponent name="termsComponent" class="solr.TermsComponent"/>
|
||||
*
|
||||
*
|
||||
* <requestHandler name="/terms" class="solr.SearchHandler">
|
||||
* <lst name="defaults">
|
||||
* <bool name="terms">true</bool>
|
||||
|
@ -248,7 +248,7 @@ public class TermsComponent extends SearchComponent {
|
|||
if (sort) {
|
||||
for (CountPair<BytesRef, Integer> item : queue) {
|
||||
if (i >= limit) break;
|
||||
ft.indexedToReadable(item.key, external);
|
||||
ft.indexedToReadable(item.key, external);
|
||||
fieldTerms.add(external.toString(), item.val);
|
||||
i++;
|
||||
}
|
||||
|
@ -384,11 +384,11 @@ public class TermsComponent extends SearchComponent {
|
|||
}
|
||||
|
||||
TermsResponse termsResponse = new TermsResponse(terms);
|
||||
|
||||
|
||||
// loop though each field and add each term+freq to map
|
||||
for (String key : fieldmap.keySet()) {
|
||||
HashMap<String, TermsResponse.Term> termmap = fieldmap.get(key);
|
||||
List<TermsResponse.Term> termlist = termsResponse.getTerms(key);
|
||||
List<TermsResponse.Term> termlist = termsResponse.getTerms(key);
|
||||
|
||||
// skip this field if there are no terms
|
||||
if (termlist == null) {
|
||||
|
@ -459,8 +459,8 @@ public class TermsComponent extends SearchComponent {
|
|||
if (tc.getFrequency() >= freqmin && tc.getFrequency() <= freqmax) {
|
||||
if (includeTotalTermFreq) {
|
||||
NamedList<Number> termStats = new SimpleOrderedMap<>();
|
||||
termStats.add("docFreq", tc.getFrequency());
|
||||
termStats.add("totalTermFreq", tc.getTotalTermFreq());
|
||||
termStats.add("df", tc.getFrequency());
|
||||
termStats.add("ttf", tc.getTotalTermFreq());
|
||||
fieldterms.add(tc.getTerm(), termStats);
|
||||
} else {
|
||||
fieldterms.add(tc.getTerm(), num(tc.getFrequency()));
|
||||
|
@ -515,7 +515,7 @@ public class TermsComponent extends SearchComponent {
|
|||
}
|
||||
}
|
||||
|
||||
private static void fetchTerms(SolrIndexSearcher indexSearcher, String[] fields, String termList,
|
||||
private static void fetchTerms(SolrIndexSearcher indexSearcher, String[] fields, String termList,
|
||||
boolean includeTotalTermFreq, NamedList<Object> result) throws IOException {
|
||||
String[] splitTerms = termList.split(",");
|
||||
for (int i = 0; i < splitTerms.length; i++) {
|
||||
|
@ -547,8 +547,8 @@ public class TermsComponent extends SearchComponent {
|
|||
} else {
|
||||
long totalTermFreq = termContexts[i].totalTermFreq();
|
||||
NamedList<Long> termStats = new SimpleOrderedMap<>();
|
||||
termStats.add("docFreq", (long) docFreq);
|
||||
termStats.add("totalTermFreq", totalTermFreq);
|
||||
termStats.add("df", (long) docFreq);
|
||||
termStats.add("ttf", totalTermFreq);
|
||||
termsMap.add(outTerm, termStats);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -326,14 +326,14 @@ public class TermsComponentTest extends SolrTestCaseJ4 {
|
|||
"terms.list", "snake,spider,shark,ddddd");
|
||||
assertQ(req,
|
||||
"count(//lst[@name='standardfilt']/*)=4",
|
||||
"//lst[@name='standardfilt']/lst[@name='ddddd']/long[@name='docFreq'][.='4']",
|
||||
"//lst[@name='standardfilt']/lst[@name='ddddd']/long[@name='totalTermFreq'][.='4']",
|
||||
"//lst[@name='standardfilt']/lst[@name='shark']/long[@name='docFreq'][.='2']",
|
||||
"//lst[@name='standardfilt']/lst[@name='shark']/long[@name='totalTermFreq'][.='2']",
|
||||
"//lst[@name='standardfilt']/lst[@name='snake']/long[@name='docFreq'][.='3']",
|
||||
"//lst[@name='standardfilt']/lst[@name='snake']/long[@name='totalTermFreq'][.='3']",
|
||||
"//lst[@name='standardfilt']/lst[@name='spider']/long[@name='docFreq'][.='1']",
|
||||
"//lst[@name='standardfilt']/lst[@name='spider']/long[@name='totalTermFreq'][.='1']");
|
||||
"//lst[@name='standardfilt']/lst[@name='ddddd']/long[@name='df'][.='4']",
|
||||
"//lst[@name='standardfilt']/lst[@name='ddddd']/long[@name='ttf'][.='4']",
|
||||
"//lst[@name='standardfilt']/lst[@name='shark']/long[@name='df'][.='2']",
|
||||
"//lst[@name='standardfilt']/lst[@name='shark']/long[@name='ttf'][.='2']",
|
||||
"//lst[@name='standardfilt']/lst[@name='snake']/long[@name='df'][.='3']",
|
||||
"//lst[@name='standardfilt']/lst[@name='snake']/long[@name='ttf'][.='3']",
|
||||
"//lst[@name='standardfilt']/lst[@name='spider']/long[@name='df'][.='1']",
|
||||
"//lst[@name='standardfilt']/lst[@name='spider']/long[@name='ttf'][.='1']");
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -347,8 +347,8 @@ public class TermsComponentTest extends SolrTestCaseJ4 {
|
|||
"terms.list", "boo,snake");
|
||||
assertQ(req,
|
||||
"count(//lst[@name='standardfilt']/*)=1",
|
||||
"//lst[@name='standardfilt']/lst[@name='snake']/long[@name='docFreq'][.='3']",
|
||||
"//lst[@name='standardfilt']/lst[@name='snake']/long[@name='totalTermFreq'][.='3']");
|
||||
"//lst[@name='standardfilt']/lst[@name='snake']/long[@name='df'][.='3']",
|
||||
"//lst[@name='standardfilt']/lst[@name='snake']/long[@name='ttf'][.='3']");
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -364,18 +364,18 @@ public class TermsComponentTest extends SolrTestCaseJ4 {
|
|||
assertQ(req,
|
||||
"count(//lst[@name='lowerfilt']/*)=3",
|
||||
"count(//lst[@name='standardfilt']/*)=3",
|
||||
"//lst[@name='lowerfilt']/lst[@name='a']/long[@name='docFreq'][.='2']",
|
||||
"//lst[@name='lowerfilt']/lst[@name='a']/long[@name='totalTermFreq'][.='2']",
|
||||
"//lst[@name='lowerfilt']/lst[@name='aa']/long[@name='docFreq'][.='1']",
|
||||
"//lst[@name='lowerfilt']/lst[@name='aa']/long[@name='totalTermFreq'][.='1']",
|
||||
"//lst[@name='lowerfilt']/lst[@name='aaa']/long[@name='docFreq'][.='1']",
|
||||
"//lst[@name='lowerfilt']/lst[@name='aaa']/long[@name='totalTermFreq'][.='1']",
|
||||
"//lst[@name='standardfilt']/lst[@name='a']/long[@name='docFreq'][.='1']",
|
||||
"//lst[@name='standardfilt']/lst[@name='a']/long[@name='totalTermFreq'][.='1']",
|
||||
"//lst[@name='standardfilt']/lst[@name='aa']/long[@name='docFreq'][.='1']",
|
||||
"//lst[@name='standardfilt']/lst[@name='aa']/long[@name='totalTermFreq'][.='1']",
|
||||
"//lst[@name='standardfilt']/lst[@name='aaa']/long[@name='docFreq'][.='1']",
|
||||
"//lst[@name='standardfilt']/lst[@name='aaa']/long[@name='totalTermFreq'][.='1']");
|
||||
"//lst[@name='lowerfilt']/lst[@name='a']/long[@name='df'][.='2']",
|
||||
"//lst[@name='lowerfilt']/lst[@name='a']/long[@name='ttf'][.='2']",
|
||||
"//lst[@name='lowerfilt']/lst[@name='aa']/long[@name='df'][.='1']",
|
||||
"//lst[@name='lowerfilt']/lst[@name='aa']/long[@name='ttf'][.='1']",
|
||||
"//lst[@name='lowerfilt']/lst[@name='aaa']/long[@name='df'][.='1']",
|
||||
"//lst[@name='lowerfilt']/lst[@name='aaa']/long[@name='ttf'][.='1']",
|
||||
"//lst[@name='standardfilt']/lst[@name='a']/long[@name='df'][.='1']",
|
||||
"//lst[@name='standardfilt']/lst[@name='a']/long[@name='ttf'][.='1']",
|
||||
"//lst[@name='standardfilt']/lst[@name='aa']/long[@name='df'][.='1']",
|
||||
"//lst[@name='standardfilt']/lst[@name='aa']/long[@name='ttf'][.='1']",
|
||||
"//lst[@name='standardfilt']/lst[@name='aaa']/long[@name='df'][.='1']",
|
||||
"//lst[@name='standardfilt']/lst[@name='aaa']/long[@name='ttf'][.='1']");
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
package org.apache.solr.client.solrj.response;
|
||||
|
||||
import org.apache.solr.common.util.NamedList;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
@ -41,7 +42,7 @@ public class TermsResponse {
|
|||
if (val instanceof NamedList) {
|
||||
@SuppressWarnings("unchecked")
|
||||
NamedList<Number> termStats = (NamedList<Number>) val;
|
||||
t = new Term(term, termStats.get("docFreq").longValue(), termStats.get("totalTermFreq").longValue());
|
||||
t = new Term(term, termStats.get("df").longValue(), termStats.get("ttf").longValue());
|
||||
} else {
|
||||
t = new Term(term, ((Number) val).longValue());
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue