SchemaField keyField = rb.req.getSearcher().getSchema().getUniqueKeyField(); if (null != keyField) if (!returnFields.contains(keyField)) rb.req.getSearcher().getReader().document(docIds.get(0), selector);
if (!(((SolrIndexReader) rb.req.getSearcher().getIndexReader()).getWrappedReader() instanceof lucandra.IndexReader)) return false; throw new IOException("Missing core name"); IndexReader reader = (IndexReader) ((SolrIndexReader) rb.req.getSearcher().getIndexReader()).getWrappedReader(); IndexReader reader = (IndexReader) ((SolrIndexReader) rb.req.getSearcher().getIndexReader()) .getWrappedReader();
public SimpleFacets(SolrQueryRequest req, DocSet docs, SolrParams params, ResponseBuilder rb) { this.req = req; this.searcher = req.getSearcher(); this.base = this.docs = docs; this.params = params; this.rb = rb; }
@Override public SolrIndexSearcher getSearcher() { return sreq.getSearcher(); } };
@Override public SolrIndexSearcher getSearcher() { return sreq.getSearcher(); } };
public SimpleStats(SolrQueryRequest req, DocSet docs, SolrParams params) { this.req = req; this.searcher = req.getSearcher(); this.docs = docs; this.params = params; }
@Override public SolrIndexSearcher getSearcher() { return request.getSearcher(); }
@Override public SolrIndexSearcher getSearcher() { return request.getSearcher(); }
public JointCounts(SolrQueryRequest req, DocSet docs, int minCount, int limit, String[] fields) { super(req, docs, req.getParams()); this.searcher = req.getSearcher(); this.docs = docs; this.minCount = minCount; this.limit = limit; this.fields = fields; }
/*** public static void clearNCache() { SolrQueryRequest req = req(); req.getSearcher().getnCache().clear(); // OFF-HEAP req.close(); }***/ public static void clearQueryCache() { SolrQueryRequest req = req(); req.getSearcher(); req.close(); }
@Override public void handleRequestBody(SolrQueryRequest req, SolrQueryResponse rsp) throws Exception { SolrIndexSearcher searcher = req.getSearcher(); AtomicReader reader = searcher.getAtomicReader(); Set<String> fieldNames = new TreeSet<String>(); for (FieldInfo fieldInfo : reader.getFieldInfos()) { if (!ignoredFields.contains(fieldInfo.name)) { fieldNames.add(fieldInfo.name); } } rsp.add("fields", fieldNames); rsp.setHttpCaching(false); }
/** * {@inheritDoc} */ public CollapseCollector createCollapseCollector(SolrQueryRequest request) { SolrParams params = request.getParams(); boolean includeDocCount = params.getBool(CollapseParams.COLLAPSE_INFO_DOC, true); return includeDocCount ? new DocumentCountCollapseCollector(request.getSearcher()) : null; }
/** Returns a dictionary to be used when building the spell-checker index. * Override the method for custom dictionary */ protected Dictionary getDictionary(SolrQueryRequest req) { float threshold; try { threshold = req.getParams().getFloat(THRESHOLD, DEFAULT_DICTIONARY_THRESHOLD); } catch (NumberFormatException e) { throw new RuntimeException("Threshold must be a valid positive float", e); } IndexReader indexReader = req.getSearcher().getReader(); return new HighFrequencyDictionary(indexReader, termSourceField, threshold); }
/** * Returns an new collapse collector instance that creates aggregate statictics if the collapse.aggregate paramter * is set. * * @param request The specified request * @return an new collapse collector instance if the collapse.aggregate parameter is set properly */ public CollapseCollector createCollapseCollector(SolrQueryRequest request) { String aggregateParameterValue = request.getParams().get(CollapseParams.COLLAPSE_AGGREGATE); if (aggregateParameterValue == null) { return null; } Map<AggregateField, AggregateFunction> aggregateFunctions = resolveAggregateFunctions(aggregateParameterValue); return new AggregateCollapseCollector(aggregateFunctions, request.getSearcher()); }
private DocSet getDocSet(ResponseBuilder rb, String buildQuery) throws SyntaxError, IOException { SolrParams params = rb.req.getParams(); String defType = params.get(QueryParsing.DEFTYPE, QParserPlugin.DEFAULT_QTYPE); QParser parser = QParser.getParser(buildQuery, defType, rb.req); Query query = parser.getQuery(); return rb.req.getSearcher().getDocSet(query); }
/** * {@inheritDoc} */ public CollapseCollector createCollapseCollector(SolrQueryRequest request) { SolrParams params = request.getParams(); String collapseField = params.required().get(CollapseParams.COLLAPSE_FIELD); boolean includeFieldValueCount = params.getBool(CollapseParams.COLLAPSE_INFO_COUNT, true); return includeFieldValueCount ? new FieldValueCountCollapseCollector(request.getSearcher(), collapseField) : null; }
/** * Return a QueryScorer suitable for this Query and field. * @param query The current query * @param fieldName The name of the field * @param request The SolrQueryRequest */ private Scorer getQueryScorer(Query query, String fieldName, SolrQueryRequest request) { boolean reqFieldMatch = request.getParams().getFieldBool(fieldName, HighlightParams.FIELD_MATCH, false); if (reqFieldMatch) { return new QueryTermScorer(query, request.getSearcher().getReader(), fieldName); } else { return new QueryTermScorer(query); } }
public void writeDocs(boolean includeScore, Set<String> fields) throws IOException { SolrIndexSearcher searcher = request.getSearcher(); DocIterator iterator = ids.iterator(); int sz = ids.size(); includeScore = includeScore && ids.hasScores(); for (int i=0; i<sz; i++) { int id = iterator.nextDoc(); Document doc = searcher.doc(id, fields); writeDoc(null, doc, fields, (includeScore ? iterator.score() : 0.0f), includeScore); } } }, fields );
@Override public void process(ResponseBuilder rb) throws IOException { SolrParams p = rb.req.getParams(); if( p.getBool( MoreLikeThisParams.MLT, false ) ) { SolrIndexSearcher searcher = rb.req.getSearcher(); MoreLikeThisHandler.MoreLikeThisHelper mlt = new MoreLikeThisHandler.MoreLikeThisHelper( p, searcher ); int mltcount = p.getInt( MoreLikeThisParams.DOC_COUNT, 5 ); NamedList<DocList> sim = mlt.getMoreLikeThese( rb.getResults().docList, mltcount, rb.getFieldFlags() ); // TODO ???? add this directly to the response? rb.rsp.add( "moreLikeThis", sim ); } }
@Override @SuppressWarnings("unchecked") public void prepare(ResponseBuilder rb) throws IOException { SolrParams params = rb.req.getParams(); if (!params.getBool(COMPONENT_NAME, false)) { return; } SolrSpellChecker spellChecker = getSpellChecker(params); if (params.getBool(SPELLCHECK_BUILD, false)) { spellChecker.build(rb.req.getCore(), rb.req.getSearcher()); rb.rsp.add("command", "build"); } else if (params.getBool(SPELLCHECK_RELOAD, false)) { spellChecker.reload(); rb.rsp.add("command", "reload"); } }