List of usage examples for org.apache.solr.client.solrj SolrQuery setStart
public SolrQuery setStart(Integer start)
From source file:de.fatalix.bookery.view.search.SearchView.java
License:Open Source License
@Override public void enter(ViewChangeListener.ViewChangeEvent event) { SolrQuery.SortClause sortClause = SolrQuery.SortClause.asc("author"); String searchString = SolrSearchUtil.generateSearchString(appHeader.getSearchText()); String[] params = event.getParameters().split("/"); if (params.length > 0) { String sortParameter = params[0]; switch (sortParameter) { case "author": sortClause = SolrQuery.SortClause.asc("author"); break; case "likes": sortClause = SolrQuery.SortClause.desc("likes"); break; case "downloads": sortClause = SolrQuery.SortClause.desc("downloadcount"); break; }//from ww w .ja v a2s. c o m if (params.length > 1) { String viewer = SecurityUtils.getSubject().getPrincipal().toString(); searchString = SolrSearchUtil.addNewBooksSearchString(viewer, searchString); } } SolrQuery query = new SolrQuery(); query.setRows(20); query.setStart(0); query.setQuery(searchString); query.setSort(sortClause); query.setFields(SolrSearchUtil.DEFAULT_FIELDS); searchLayout.searchBooks(query, true); }
From source file:de.fhg.iais.cortex.nodestore.searcher.NodeSearcherImpl.java
License:Apache License
@Override public SolrDocumentList getHierarchyNodes(String ingestId, String providerId) { StringBuilder querySb = new StringBuilder(INGEST_ID + ":\"" + ingestId + "\" AND " + PROVIDER_ID + ":"); if ("*".equals(providerId)) { querySb.append(providerId);/*from w w w . j a va2 s. c o m*/ } else { querySb.append("\"" + providerId + "\""); } SolrQuery query = new SolrQuery(querySb.toString()); query.setSort(SortClause.create(POSITION, SolrQuery.ORDER.asc)); query.setStart(0); query.setRows(Integer.MAX_VALUE); try { QueryResponse response = this.solrServer.query(query); return response.getResults(); } catch (SolrServerException e) { throw new NodeStoreException( "Could not retrieve nodes for ingest " + ingestId + " and provider " + providerId, e); } }
From source file:de.fhg.iais.cortex.nodestore.searcher.NodeSearcherImpl.java
License:Apache License
@Override public SolrDocumentList getHierarchyChildren(String id, Query filterQuery) { SolrQuery childQuery = new SolrQuery(PARENT + ":\"" + id + "\""); if (!Strings.isNullOrEmpty(filterQuery.getQuery()) && !filterQuery.getQuery().equals(Query.ALL_QUERY)) { childQuery.addFilterQuery(filterQuery.getQuery()); }//www . j av a 2 s . c o m childQuery.setStart(filterQuery.getOffset()); childQuery.setRows(filterQuery.getRows()); childQuery.setSort(SortClause.create(POSITION, SolrQuery.ORDER.asc)); try { QueryResponse response = this.solrServer.query(childQuery); return response.getResults(); } catch (SolrServerException e) { throw new NodeStoreException("Could not retrieve the node with id " + id, e); } }
From source file:de.fhg.iais.cortex.nodestore.searcher.NodeSearcherImpl.java
License:Apache License
@Override public long hasChildren(String id) { SolrQuery childQuery = new SolrQuery(PARENT + ":\"" + id + "\""); childQuery.setStart(0); childQuery.setRows(1);/*from w w w . ja va2 s . c o m*/ try { QueryResponse response = this.solrServer.query(childQuery); return response.getResults().getNumFound(); } catch (SolrServerException e) { throw new NodeStoreException("Could not determine the number of children for the node with id " + id, e); } }
From source file:de.kp.ames.web.core.search.SearcherImpl.java
License:Open Source License
public String search(String request, String start, String limit) throws Exception { /*//from w w w . j a v a2 s . c o m * Build Apache Solr query */ JSONObject jQuery = new JSONObject(request); String term = jQuery.has(JsonConstants.J_TERM) ? jQuery.getString(JsonConstants.J_TERM) : "*"; String fp = setFacets(jQuery); SolrQuery query = new SolrQuery(); if (fp != null) query.addFilterQuery(fp); /* * Paging support from Apache Solr */ int s = Integer.valueOf(start); int r = Integer.valueOf(limit); query.setStart(s); query.setRows(r); String qs = term + " OR " + SearchConstants.TERMS_FIELD + ":" + term; query.setQuery(qs); QueryResponse response = solrProxy.executeQuery(query); SolrDocumentList docs = response.getResults(); long total = docs.getNumFound(); /* * Sort search result */ StringCollector collector = new StringCollector(); Iterator<SolrDocument> iter = docs.iterator(); while (iter.hasNext()) { int pos = -1; SolrDocument doc = iter.next(); JSONObject jDoc = new JSONObject(); /* * Identifier */ String id = (String) doc.getFieldValue(SearchConstants.S_ID); jDoc.put(JsonConstants.J_ID, id); /* * Name */ String name = (String) doc.getFieldValue(SearchConstants.S_NAME); jDoc.put(JsonConstants.J_NAME, name); /* * Source */ String source = (String) doc.getFieldValue(SearchConstants.S_FACET); pos = source.lastIndexOf(":"); jDoc.put(JsonConstants.J_FACET, source.substring(pos + 1)); /* * Description */ String desc = (String) doc.getFieldValue(SearchConstants.S_DESC); desc = (desc == null) ? FncMessages.NO_DESCRIPTION_DESC : desc; jDoc.put(JsonConstants.J_DESC, desc); collector.put(name, jDoc); } /* * Render result */ JSONArray jArray = new JSONArray(collector.values()); return renderer.createGrid(jArray, total); }
From source file:de.qaware.chronix.solr.client.stream.SolrStreamingService.java
License:Apache License
private void streamDocumentsFromSolr() { SolrQuery solrQuery = query.getCopy(); solrQuery.setRows(nrOfTimeSeriesPerBatch); solrQuery.setStart(currentDocumentCount); solrStreamingHandler.init(nrOfTimeSeriesPerBatch, currentDocumentCount); try {//from w w w . j a v a2 s.c om connection.queryAndStreamResponse(solrQuery, solrStreamingHandler); SolrDocument document; do { document = solrStreamingHandler.pool(); if (document != null) { ListenableFuture future = service .submit(new TimeSeriesConverterCaller<>(document, converter, queryStart, queryEnd)); Futures.addCallback(future, timeSeriesHandler); } } while (solrStreamingHandler.canPoll()); } catch (SolrServerException | IOException e) { LOGGER.warn("Exception while streaming the data points from Solr", e); } }
From source file:de.qaware.chronix.storage.solr.stream.SolrStreamingService.java
License:Apache License
private void initialStream(SolrQuery query, SolrClient connection) { try {/*from w ww. j a v a 2 s . c o m*/ SolrQuery solrQuery = query.getCopy(); solrQuery.setRows(nrOfTimeSeriesPerBatch); solrQuery.setStart(currentDocumentCount); solrStreamingHandler.init(nrOfTimeSeriesPerBatch, currentDocumentCount); QueryResponse response = connection.queryAndStreamResponse(solrQuery, solrStreamingHandler); nrOfAvailableTimeSeries = response.getResults().getNumFound(); queryStart = 0;//(long) response.getResponseHeader().get(ChronixSolrStorageConstants.QUERY_START_LONG); queryEnd = Long.MAX_VALUE;//(long) response.getResponseHeader().get(ChronixSolrStorageConstants.QUERY_END_LONG); needStream = false; } catch (SolrServerException | IOException e) { LOGGER.error("SolrServerException occurred while querying server.", e); } }
From source file:de.qaware.chronix.storage.solr.stream.SolrStreamingService.java
License:Apache License
private void streamNextDocumentsFromSolr() { SolrQuery solrQuery = query.getCopy(); solrQuery.setRows(nrOfTimeSeriesPerBatch); solrQuery.setStart(currentDocumentCount); solrStreamingHandler.init(nrOfTimeSeriesPerBatch, currentDocumentCount); try {/*from w w w.j ava 2s . c o m*/ connection.queryAndStreamResponse(solrQuery, solrStreamingHandler); convertStream(); } catch (SolrServerException | IOException e) { LOGGER.warn("Exception while streaming the data points from Solr", e); } }
From source file:edu.cornell.mannlib.vitro.webapp.controller.accounts.admin.ajax.ProfileAutoCompleter.java
License:Open Source License
private SolrQuery buildSolrQuery() { SolrQuery q = new SolrQuery(); q.setFields(NAME_RAW, URI);/*from www. j a v a2s . c o m*/ q.setSortField(NAME_LOWERCASE_SINGLE_VALUED, ORDER.asc); q.setFilterQueries(SolrQueryUtils.assembleConjunctiveQuery(RDFTYPE, profileTypes, OR)); q.setStart(0); q.setRows(10000); q.setQuery(searchWords.assembleQuery(NAME_UNSTEMMED, AC_NAME_STEMMED)); return q; }
From source file:edu.cornell.mannlib.vitro.webapp.controller.accounts.manageproxies.ajax.BasicProfilesGetter.java
License:Open Source License
private SolrQuery buildSolrQuery() { SolrQuery q = new SolrQuery(); q.setFields(NAME_RAW, URI);//from w w w .j a v a 2 s . c om q.setSortField(NAME_LOWERCASE_SINGLE_VALUED, ORDER.asc); q.setFilterQueries(SolrQueryUtils.assembleConjunctiveQuery(RDFTYPE, profileTypes, OR)); q.setStart(0); q.setRows(30); q.setQuery(searchWords.assembleQuery(NAME_UNSTEMMED, AC_NAME_STEMMED)); return q; }