@Override public void copy(Hits hits) { setDocs(hits.getDocs()); setLength(hits.getLength()); setQuery(hits.getQuery()); setQuerySuggestions(hits.getQuerySuggestions()); setQueryTerms(hits.getQueryTerms()); setScores(hits.getScores()); setSearchTime(hits.getSearchTime()); setSnippets(hits.getSnippets()); setSpellCheckResults(hits.getSpellCheckResults()); setStart(hits.getStart()); }
public void setScores(Float[] scores) { float[] primScores = new float[scores.length]; for (int i = 0; i < scores.length; i++) { primScores[i] = scores[i].floatValue(); } setScores(primScores); }
private Hits _getHits() { Hits hits = new HitsImpl(); hits.setCollatedSpellCheckResult(StringPool.BLANK); hits.setDocs(new Document[0]); hits.setLength(0); hits.setQuery(new StringQuery(StringPool.BLANK)); hits.setQuerySuggestions(new String[0]); hits.setQueryTerms(new String[0]); hits.setLength(0); hits.setScores(new float[0]); hits.setSearchTime(0); hits.setSnippets(new String[0]); hits.setSpellCheckResults(_spellCheckResults); hits.setStart(0); return hits; }
@Override public Hits search(SearchContext searchContext) { QueryConfig queryConfig = searchContext.getQueryConfig(); if (!queryConfig.isAllFieldsSelected()) { queryConfig.setSelectedFieldNames( getSelectedFieldNames(queryConfig.getSelectedFieldNames())); } int end = searchContext.getEnd(); int start = searchContext.getStart(); if ((end == QueryUtil.ALL_POS) && (start == QueryUtil.ALL_POS)) { Hits hits = getHits(searchContext); if (!isGroupAdmin(searchContext)) { filterHits(hits, searchContext); } return hits; } if ((start < 0) || (start > end)) { return new HitsImpl(); } if (isGroupAdmin(searchContext)) { return getHits(searchContext); } SlidingWindowSearcher slidingWindowSearcher = new SlidingWindowSearcher(); return slidingWindowSearcher.search(start, end, searchContext); }
@Override protected Hits doSearch(SearchContext searchContext) throws SearchException { String keywords = StringUtil.trim(searchContext.getKeywords()); if (Validator.isBlank(keywords) && !GetterUtil.getBoolean( searchContext.getAttribute( SearchContextAttributes.ATTRIBUTE_KEY_EMPTY_SEARCH))) { return new HitsImpl(); } try { searchContext.setSearchEngineId(getSearchEngineId()); BooleanFilter booleanFilter = new BooleanFilter(); booleanFilter.addRequiredTerm( Field.COMPANY_ID, searchContext.getCompanyId()); Query query = _getFinalQuery( createFullQuery(booleanFilter, searchContext)); QueryConfig queryConfig = searchContext.getQueryConfig(); query.setQueryConfig(queryConfig); return _indexSearcherHelper.search(searchContext, query); } catch (Exception e) { throw new SearchException(e); } }