Here is my first stab at it. Thoughts? Question:
new PayloadTermQuery(new Term(nv[0].substring(1), nv[1]), new AveragePayloadFunction(), false) How do I handle the "false" ? It means boolean includeSpanScore @Override public Query parse() throws SyntaxError { if (qstr == null || qstr.length() == 0) return null; //BooleanQuery q = new BooleanQuery(); BooleanQuery.Builder q = new BooleanQuery.Builder(); q.setDisableCoord(true); if (qstr.length() > 1 && qstr.startsWith("\"") && qstr.endsWith("\"")) { qstr = qstr.substring(1,qstr.length()-1); } String[] nvps = StringUtils.split(qstr, " "); for (int i = 0; i < nvps.length; i++) { String[] nv = StringUtils.split(nvps[i], ":"); if (nv.length > 1) { if (nv[0].startsWith("+")) { SpanTermQuery sq = new SpanTermQuery(new Term(nv[0].substring(1), nv[1])); PayloadScoreQuery psq = new PayloadScoreQuery(sq, new AveragePayloadFunction()); q.add(psq, Occur.MUST); //q.add(new PayloadTermQuery(new Term(nv[0].substring(1), nv[1]), new AveragePayloadFunction(), false), Occur.MUST); } else { //q.add(new PayloadTermQuery(new Term(nv[0], nv[1]), new AveragePayloadFunction(), false), Occur.SHOULD); SpanTermQuery sq = new SpanTermQuery(new Term(nv[0], nv[1])); PayloadScoreQuery psq = new PayloadScoreQuery(sq, new AveragePayloadFunction()); q.add(psq, Occur.SHOULD); } } } // return q; return q.build(); } On Sun, Oct 18, 2015 at 4:46 PM, William Bell <billnb...@gmail.com> wrote: > Wondering how to change my payload based on example: > > https://lucidworks.com/blog/2014/06/13/end-to-end-payload-example-in-solr/ > > PayloadTermQuery and BooleanQuery are deprecated in 5.3.x > > @Override > public Query parse() throws SyntaxError { > > if (qstr == null || qstr.length() == 0) return null; > BooleanQuery q = new BooleanQuery(); > if (qstr.length() > 1 && qstr.startsWith("\"") && qstr.endsWith("\"")) { > qstr = qstr.substring(1,qstr.length()-1); > } > String[] nvps = StringUtils.split(qstr, " "); > for (int i = 0; i < nvps.length; i++) { > String[] nv = StringUtils.split(nvps[i], ":"); > if (nv.length > 1) { > if (nv[0].startsWith("+")) { > q.add(new PayloadTermQuery(new Term(nv[0].substring(1), nv[1]), > new AveragePayloadFunction(), false), Occur.MUST); > } else { > q.add(new PayloadTermQuery(new Term(nv[0], nv[1]), > new AveragePayloadFunction(), false), Occur.SHOULD); > } > } > } > return q; > } > > > -- > Bill Bell > billnb...@gmail.com > cell 720-256-8076 > -- Bill Bell billnb...@gmail.com cell 720-256-8076