List of usage examples for org.apache.solr.spelling.suggest SolrSuggester build
public void build(SolrCore core, SolrIndexSearcher searcher) throws IOException
From source file:org.alfresco.solr.component.AsyncBuildSuggestComponent.java
License:Open Source License
/** Responsible for issuing build and rebload command to the specified {@link SolrSuggester} */ @Override/* ww w .j a v a2 s . co m*/ public void prepare(ResponseBuilder rb) throws IOException { SolrParams params = rb.req.getParams(); LOG.debug("SuggestComponent prepare with : " + params); if (!params.getBool(COMPONENT_NAME, false)) { return; } boolean buildAll = params.getBool(SUGGEST_BUILD_ALL, false); boolean reloadAll = params.getBool(SUGGEST_RELOAD_ALL, false); final Collection<SolrSuggester> querysuggesters; if (buildAll || reloadAll) { Collection<SuggesterCache> suggesterCaches = suggesters.values(); querysuggesters = new ArrayList<SolrSuggester>(suggesterCaches.size()); for (SuggesterCache cache : suggesterCaches) { querysuggesters.add(cache.get(ASYNC_CACHE_KEY)); } } else { querysuggesters = getSuggesters(params); } if (params.getBool(SUGGEST_BUILD, false) || buildAll) { for (SolrSuggester suggester : querysuggesters) { suggester.build(rb.req.getCore(), rb.req.getSearcher()); } rb.rsp.add("command", (!buildAll) ? "build" : "buildAll"); } else if (params.getBool(SUGGEST_RELOAD, false) || reloadAll) { for (SolrSuggester suggester : querysuggesters) { reloadSuggester(suggester, rb.req.getCore(), rb.req.getSearcher()); } rb.rsp.add("command", (!reloadAll) ? "reload" : "reloadAll"); } }
From source file:org.alfresco.solr.component.AsyncBuildSuggestComponent.java
License:Open Source License
private void reloadSuggester(SolrSuggester suggester, SolrCore core, SolrIndexSearcher searcher) throws IOException { File storeFile = suggester.getStoreFile(); if (storeFile == null || !storeFile.exists()) { suggester.build(core, searcher); } else {/*from ww w. jav a2 s. c o m*/ suggester.reload(core, searcher); } }