@Override public SearchResponse search(SearchRequest searchRequest) throws RestException { try { if (searchRequest.getIndices() == null || searchRequest.getIndices().isEmpty()) { List<String> indices = getDefaultIndices(); // metaalerts should be included by default in search requests indices.add(METAALERT_TYPE); searchRequest.setIndices(indices); } if (searchRequest.getFacetFields() != null && searchRequest.getFacetFields().isEmpty()) { searchRequest.setFacetFields(getDefaultFacetFields()); } return dao.search(searchRequest); } catch(InvalidSearchException ise) { throw new RestException(ise.getMessage(), ise); } }
Map<String, FieldType> commonColumnMetadata; try { commonColumnMetadata = columnMetadataDao.getColumnMetadata(searchRequest.getIndices()); } catch (IOException e) { throw new InvalidSearchException(String.format( "Could not get common column metadata for indices %s", Arrays.toString(searchRequest.getIndices().toArray())));
for(String index : searchRequest.getIndices()) { String i = null; for(String storedIdx : BACKING_STORE.keySet()) {
protected SolrQuery buildSearchRequest( SearchRequest searchRequest, String fieldList) throws IOException, SolrServerException { SolrQuery query = new SolrQuery() .setStart(searchRequest.getFrom()) .setRows(searchRequest.getSize()) .setQuery(searchRequest.getQuery()); // handle sort fields for (SortField sortField : searchRequest.getSort()) { query.addSort(sortField.getField(), getSolrSortOrder(sortField.getSortOrder())); } // handle search fields List<String> fields = searchRequest.getFields(); if (fieldList == null) { fieldList = "*"; if (fields != null) { fieldList = StringUtils.join(fields, ","); } } query.set("fl", fieldList); //handle facet fields List<String> facetFields = searchRequest.getFacetFields(); if (facetFields != null) { facetFields.forEach(query::addFacetField); } query.set("collection", getCollections(searchRequest.getIndices())); return query; }
meta = columnMetadataDao.getColumnMetadata(searchRequest.getIndices()); } catch(IOException e) { throw new InvalidSearchException("Unable to get column metadata", e); String[] indices = wildcardIndices(searchRequest.getIndices()); if (LOG.isDebugEnabled()) { LOG.debug("Built Elasticsearch request; indices={}, request={}", indices, searchBuilder.toString());