List of usage examples for org.apache.solr.client.solrj SolrQuery setRows
public SolrQuery setRows(Integer rows)
From source file:bamboo.trove.rule.RuleChangeUpdateManager.java
License:Apache License
private SolrQuery createQuery(String query) { SolrQuery q = new SolrQuery("*:*"); // TODO: Should we add a request handler to the solr cluster to get metrics // on the volume and/or performance of these searches in their own bucket? q.setFilterQueries(query);// w w w . j ava2s .co m q.setFields(SOLR_FIELDS); q.setSort(SortClause.asc(SolrEnum.ID.toString())); q.setRows(solrReadSize); return q; }
From source file:cn.edu.pku.lib.dataverse.SolrSearchServiceBean.java
public long getDatasetCount() throws SearchException { SolrQuery solrQuery = new SolrQuery(); solrQuery.setQuery("*:*"); solrQuery.setFilterQueries(SearchFields.TYPE + ":datasets", SearchFields.PUBLICATION_STATUS + ":Published"); solrQuery.setStart(0);// ww w.j a va 2 s. co m solrQuery.setRows(0); QueryResponse queryResponse = null; try { queryResponse = solrServer.query(solrQuery); return queryResponse.getResults().getNumFound(); } catch (HttpSolrServer.RemoteSolrException | SolrServerException ex) { logger.log(Level.INFO, null, ex); throw new SearchException("Internal Dataverse Search Engine Error", ex); } }
From source file:cn.edu.pku.lib.dataverse.SolrSearchServiceBean.java
public long getDataverseCount() throws SearchException { SolrQuery solrQuery = new SolrQuery(); solrQuery.setQuery("*:*"); solrQuery.setFilterQueries(SearchFields.TYPE + ":dataverses", SearchFields.PUBLICATION_STATUS + ":Published"); solrQuery.setStart(0);//from ww w .j ava 2 s .c om solrQuery.setRows(0); QueryResponse queryResponse = null; try { queryResponse = solrServer.query(solrQuery); return queryResponse.getResults().getNumFound(); } catch (HttpSolrServer.RemoteSolrException | SolrServerException ex) { logger.log(Level.INFO, null, ex); throw new SearchException("Internal Dataverse Search Engine Error", ex); } }
From source file:cn.edu.pku.lib.dataverse.SolrSearchServiceBean.java
public SolrSearchResult searchDataverseByName(String query, Locale locale) throws SearchException { boolean isZh = locale.getLanguage().equals("zh"); SolrQuery solrQuery = new SolrQuery(); StringBuilder queryStr = new StringBuilder(); query = ClientUtils.escapeQueryChars(query); queryStr.append("("); queryStr.append(SearchFields.NAME);/*from w w w . j a v a 2 s . c o m*/ queryStr.append(":"); queryStr.append(query); queryStr.append(" OR "); queryStr.append(SearchFields.NAME_ZH); queryStr.append(":"); queryStr.append(query); queryStr.append(")"); solrQuery.setQuery(queryStr.toString()); solrQuery.setFilterQueries(SearchFields.TYPE + ":dataverses", SearchFields.PUBLICATION_STATUS + ":Published"); if (isZh) { solrQuery.setFields(SearchFields.ENTITY_ID, SearchFields.NAME_ZH, SearchFields.DATAVERSE_AFFILIATION_ZH, SearchFields.DESCRIPTION_ZH); } else { solrQuery.setFields(SearchFields.ENTITY_ID, SearchFields.NAME, SearchFields.DATAVERSE_AFFILIATION, SearchFields.DESCRIPTION); } logger.log(Level.INFO, "Solr query:{0}", solrQuery); solrQuery.setRows(100); QueryResponse queryResponse = null; SolrSearchResult result = new SolrSearchResult(); try { queryResponse = solrServer.query(solrQuery); } catch (HttpSolrServer.RemoteSolrException ex) { logger.log(Level.INFO, null, ex); result.setTotal(0); result.setResults(Collections.EMPTY_LIST); return result; } catch (SolrServerException ex) { throw new SearchException("Internal Dataverse Search Engine Error", ex); } SolrDocumentList docs = queryResponse.getResults(); docs.getNumFound(); Iterator<SolrDocument> iter = docs.iterator(); List<Dataverse> dataverses = new ArrayList<>(); while (iter.hasNext()) { SolrDocument solrDocument = iter.next(); Dataverse dataverse = new Dataverse(); if (isZh) { dataverse.setId((Long) solrDocument.getFieldValue(SearchFields.ENTITY_ID)); dataverse.setNameZh((String) solrDocument.getFieldValue(SearchFields.NAME_ZH)); dataverse.setAffiliationZh( (String) solrDocument.getFieldValue(SearchFields.DATAVERSE_AFFILIATION_ZH)); dataverse.setDescriptionZh((String) solrDocument.getFieldValue(SearchFields.DESCRIPTION_ZH)); } else { dataverse.setId((Long) solrDocument.getFieldValue(SearchFields.ENTITY_ID)); dataverse.setName((String) solrDocument.getFieldValue(SearchFields.NAME)); dataverse.setAffiliation((String) solrDocument.getFieldValue(SearchFields.DATAVERSE_AFFILIATION)); dataverse.setDescription((String) solrDocument.getFieldValue(SearchFields.DESCRIPTION)); } dataverses.add(dataverse); } result.setResults(dataverses); result.setTotal((int) docs.getNumFound()); return result; }
From source file:com.aboutdata.service.bean.SearchServiceImpl.java
/** * ? /*from w w w .j av a2s .co m*/ * * @param keyword * @param pageable * @return */ @Override public Page<PhotosModel> search(String keyword, Pageable pageable) { SolrQuery query = new SolrQuery(); query.setQuery("tags:(" + keyword + ") OR title:(" + keyword + ")"); try { //? query.setStart((pageable.getPageNumber() - 1) * pageable.getPageSize()); query.setRows(pageable.getPageSize()); //? QueryResponse rsp = solrServer.query(query); //? SolrDocumentList docs = rsp.getResults(); List<PhotosModel> models = new ArrayList<PhotosModel>(); for (SolrDocument solrDocument : docs) { String id = solrDocument.getFieldValue("id").toString(); String title = solrDocument.getFieldValue("title").toString(); String large = solrDocument.getFieldValue("large").toString(); String medium = solrDocument.getFieldValue("medium").toString(); String thumbnail = solrDocument.getFieldValue("thumbnail").toString(); String source = solrDocument.getFieldValue("source").toString(); String member_id = solrDocument.getFieldValue("member_id").toString(); String member_User_name = solrDocument.getFieldValue("member_name").toString(); //?? ??idusername MemberModel member = new MemberModel(); member.setId(member_id); member.setUsername(member_User_name); String wallhaven = solrDocument.getFieldValue("wallhaven").toString(); String create_date = solrDocument.getFieldValue("create_date").toString(); String modify_date = solrDocument.getFieldValue("modify_date").toString(); String tags = solrDocument.getFieldValue("tags").toString(); Set<Tag> tagSet = tagService.getTagsFromString(tags); PhotosModel model = new PhotosModel(); model.setId(id); model.setTitle(title); model.setLarge(large); model.setMedium(medium); model.setThumbnail(thumbnail); model.setSource(source); model.setWallhaven(wallhaven); //model.setCreateDate(new Date()); // model.setModifyDate(new DateTime(modify_date).toDate()); model.setMember(member); //?tag List<TagModel> tagList = TagDTO.getTagModelsDTO(tagSet); model.setTags(tagList); models.add(model); } Page<PhotosModel> result = new PageImpl<PhotosModel>(models, pageable, docs.getNumFound()); return result; } catch (SolrServerException ex) { logger.error("build index error {}", ex); } return null; }
From source file:com.bindez.nlp.extract.ngram.corpus.ExtractWord.java
public List<String> query() throws SolrServerException { List<String> result = new ArrayList<String>(); server = new MyanmarCorpusSolrServer().getSolrServer(); SolrQuery query = new SolrQuery(); query.setQuery("*:*"); //query.add("fl","fl:totaltermfreq(content,"+word+")"); query.setRows(Integer.MAX_VALUE); QueryResponse response = server.query(query); SolrDocumentList results = response.getResults(); long numFound = results.getNumFound(); System.out.println(numFound); for (SolrDocument result1 : results) { String word = result1.getFieldValue("id").toString(); result.add(word);/*from w w w. j av a 2 s. c o m*/ } return result; }
From source file:com.buddycloud.channeldirectory.search.rsm.SolrRSMUtils.java
License:Apache License
public static void preprocess(SolrQuery query, RSM rsm) throws IllegalArgumentException { String after = rsm.getAfter(); String before = rsm.getBefore(); int initialIndex = rsm.getIndex(); int lastIndex = -1; if (after != null) { initialIndex = Integer.valueOf(after); }/* ww w .j av a 2 s . com*/ if (before != null && !before.isEmpty()) { lastIndex = Integer.valueOf(before) - 2; } if (rsm.getMax() != null) { if (before != null) { initialIndex = lastIndex - rsm.getMax() + 1; } else { lastIndex = initialIndex + rsm.getMax() - 1; } } if (lastIndex >= 0) { query.setStart(initialIndex); query.setRows(lastIndex - initialIndex + 1); } rsm.setIndex(initialIndex); rsm.setFirst(String.valueOf(initialIndex + 1)); rsm.setLast(String.valueOf(lastIndex + 1)); }
From source file:com.databasepreservation.visualization.utils.SolrUtils.java
public static <T extends Serializable> IndexResult<T> find(SolrClient index, Class<T> classToRetrieve, Filter filter, Sorter sorter, Sublist sublist, Facets facets) throws GenericException, RequestNotValidException { IndexResult<T> ret;/*w w w .jav a2s . co m*/ SolrQuery query = new SolrQuery(); query.setQuery(parseFilter(filter)); query.setSorts(parseSorter(sorter)); query.setStart(sublist.getFirstElementIndex()); query.setRows(sublist.getMaximumElementCount()); parseAndConfigureFacets(facets, query); try { QueryResponse response = index.query(getIndexName(classToRetrieve), query); ret = queryResponseToIndexResult(response, classToRetrieve, facets); } catch (SolrServerException | IOException | org.apache.solr.client.solrj.impl.HttpSolrClient.RemoteSolrException e) { String message = e.getMessage(); String bodytag = "<body>"; if (message != null && message.contains(bodytag)) { message = message.substring(message.indexOf(bodytag) + bodytag.length(), message.indexOf("</body>")); message = message.replaceAll("\\<[^>]*?>", ""); } throw new GenericException("Could not query index, message: " + message, e); } return ret; }
From source file:com.databasepreservation.visualization.utils.SolrUtils.java
public static <T extends Serializable> IndexResult<T> find(SolrClient index, Class<T> classToRetrieve, Filter filter, Sorter sorter, Sublist sublist, Facets facets, RodaUser user, boolean showInactive) throws GenericException, RequestNotValidException { IndexResult<T> ret;/*from ww w. java 2s . c om*/ SolrQuery query = new SolrQuery(); query.setQuery(parseFilter(filter)); query.setSorts(parseSorter(sorter)); query.setStart(sublist.getFirstElementIndex()); query.setRows(sublist.getMaximumElementCount()); parseAndConfigureFacets(facets, query); if (hasPermissionFilters(classToRetrieve)) { query.addFilterQuery(getFilterQueries(user, showInactive)); } try { QueryResponse response = index.query(getIndexName(classToRetrieve), query); ret = queryResponseToIndexResult(response, classToRetrieve, facets); } catch (SolrServerException | IOException e) { throw new GenericException("Could not query index", e); } return ret; }
From source file:com.databasepreservation.visualization.utils.SolrUtils.java
public static <T extends Serializable> IndexResult<T> find(SolrClient index, Class<T> classToRetrieve, String tableUUID, Filter filter, Sorter sorter, Sublist sublist, Facets facets) throws GenericException, RequestNotValidException { IndexResult<T> ret;//from w ww . j a va 2 s . co m SolrQuery query = new SolrQuery(); query.setQuery(parseFilter(filter)); query.setSorts(parseSorter(sorter)); query.setStart(sublist.getFirstElementIndex()); query.setRows(sublist.getMaximumElementCount()); parseAndConfigureFacets(facets, query); try { QueryResponse response = index.query(getTableCollectionName(tableUUID), query); ret = queryResponseToIndexResult(response, classToRetrieve, facets); } catch (SolrServerException | IOException e) { throw new GenericException("Could not query index", e); } return ret; }