private String getQuery(Filter filter, Object data) { Object query = filter.accept(this, data); if (query instanceof SolrQuery) { return ((SolrQuery) query).getQuery(); } throw new UnsupportedOperationException("Query operation " + filter + " is not supported."); }
@Deprecated public static String extractQueryTermFromSolrQuery(SolrParams solrQuery) { String queryFull = solrQuery instanceof SolrQuery ? ((SolrQuery) solrQuery).getQuery() : solrQuery .get(CommonParams.Q); queryFull = removeSpecialCharacters(queryFull); queryFull = removeFacetConstraints(queryFull); return queryFull.trim(); }
public static String extractQueryTermFromSolrQuery(SolrParams solrQuery) { String queryFull = solrQuery instanceof SolrQuery ? ((SolrQuery) solrQuery).getQuery() : solrQuery .get(CommonParams.Q); queryFull = removeSpecialCharacters(queryFull); queryFull = removeFacetConstraints(queryFull); return queryFull.trim(); }
public void query(final SolrQuery query) throws SolrServerException { final QueryResponse rsp = this.server.query(query); logger.info("Query: {}", query.getQuery()); logger.info("Hits: {}", rsp.getResults().getNumFound()); logger.info("Execution time: {} ms", rsp.getQTime()); logger.info(rsp.toString()); }
public void query(final SolrQuery query) throws SolrServerException { final QueryResponse rsp = this.server.query(query); logger.info("Query: {}", query.getQuery()); logger.info("Hits: {}", rsp.getResults().getNumFound()); logger.info("Execution time: {} ms", rsp.getQTime()); logger.info(rsp.toString()); }
public SolrSearchResult search(SolrQuery originalQuery) throws IntactSolrException { SolrQuery query = originalQuery.getCopy(); String[] fields = (String[]) ArrayUtils.add(FieldNames.DATA_FIELDS, "pkey"); if(query.getFields()!=null){ fields = (String[]) ArrayUtils.add(fields, query.getFields().split(",")); } query.setFields(fields); // if using a wildcard query we convert to lower case // as of http://mail-archives.apache.org/mod_mbox/lucene-solr-user/200903.mbox/%3CFD3AFB65-AEC1-40B2-A0A4-7E14A519AB05@ehatchersolutions.com%3E if (query.getQuery().contains("*")) { String[] tokens = query.getQuery().split(" "); StringBuilder sb = new StringBuilder(query.getQuery().length()); for (String token : tokens) { if (token.contains("*")) { sb.append(token.toLowerCase()); } else { sb.append(token); } sb.append(" "); } query.setQuery(sb.toString().trim()); } QueryResponse queryResponse = executeQuery(query); return new SolrSearchResult(solrServer, queryResponse); }
newQueryString = "(" + originalQuery.getQuery() + ")^10 " + suggestedQuery; Matcher originalStub = WORD_STUB.matcher(originalQuery.getQuery()); Matcher newStub = WORD_STUB.matcher(suggestedQuery); if (originalStub.find() && newStub.find() && !StringUtils.equals(originalStub.group(2), newStub.group(2))) {
private QueryResponse query(SolrQuery query, int offset, int maxRows) throws ServiceException { query.set(CommonParams.START, offset) .set(CommonParams.ROWS, maxRows) .set(CommonParams.WT, solrClient.getParser().getWriterType()); try { Instant start = Instant.now(); QueryResponse queryResponse = solrClient.query(query); LOG.info("Responded in {}ms for query {}", new Duration(start, Instant.now()).getMillis(), query.getQuery()); return queryResponse; } catch (SolrServerException | IOException e) { StringBuilder sb = new StringBuilder() .append(e.getMessage()) .append(" for generated query: ") .append(query.getQuery()); throw new ServiceException(sb.toString(), e); } }
/**************************************/ protected QueryResponse search ( SolrQuery solrQuery ) throws SolrServerException { // Set default fields to search setFields ( solrQuery ); // Format query to expand wildcard String query = formatQuery ( solrQuery.getQuery ( ) ) ; // Change all AND, OR and NOT to lower case and set it such as new query solrQuery.setQuery ( query .replaceAll ( " and ", " AND " ) .replaceAll ( " or ", " OR " ) .replaceAll ( " not ", " NOT " ) .replaceAll ( "^not ", "NOT " ) ) ; // Check if query has negative filters and if it has add a new filter query //solrQuery = checkNegativeFilter ( solrQuery ) ; // Send the query to the Solr Server and return the answer return solrServer.query ( solrQuery ) ; }
/** * Evaluates the given query only for the given resource. * * @throws SolrServerException */ public QueryResponse search(Resource resource, SolrQuery query) throws SolrServerException, IOException { // rewrite the query String idQuery = termQuery(SearchFields.URI_FIELD_NAME, SearchFields.getResourceID(resource)); query.setQuery(query.getQuery() + " AND " + idQuery); return search(query); }
/** * Evaluates the given query only for the given resource. * * @throws SolrServerException */ public QueryResponse search(Resource resource, SolrQuery query) throws SolrServerException, IOException { // rewrite the query String idQuery = termQuery(SearchFields.URI_FIELD_NAME, SearchFields.getResourceID(resource)); query.setQuery(query.getQuery() + " AND " + idQuery); return search(query); }
@Override public void deleteByQuery(Query<?> query) { Throwable error = null; try { SolrServer server = openConnection(); server.deleteByQuery(buildQuery(query).getQuery()); doCommit(server); } catch (IOException e) { error = e; } catch (SolrServerException e) { error = e; } if (error != null) { throw new DatabaseException(this, String.format( "Can't delete documents matching [%s] from Solr!", query), error); } }
+ " in 'solrconfig.xml'", e); throw new YardException("Error while performing Query on SolrServer: " + query.getQuery(), e); } else if(e instanceof IOException){ throw new YardException("Unable to access SolrServer",e);
+ " in 'solrconfig.xml'", e); throw new YardException("Error while performing Query on SolrServer: " + query.getQuery(), e); } else if(e instanceof IOException){ throw new YardException("Unable to access SolrServer",e);
public QueryLogValue(QueryException exception) { error = true; queryString = exception.getQuery().getQuery(); facetQueryString = createString(exception.getQuery().getFacetQuery()); filterQueryString = createString(exception.getQuery().getFilterQueries()); qTime = -1; results = new Long(0); }
@Test public void testMatchAllConversionWithNoConstraints() throws Exception { Filter filter = mock(Filter.class); OakSolrConfiguration configuration = mock(OakSolrConfiguration.class); QueryIndex.IndexPlan plan = mock(QueryIndex.IndexPlan.class); SolrQuery solrQuery = FilterQueryParser.getQuery(filter, plan, configuration); assertNotNull(solrQuery); assertEquals("*:*", solrQuery.getQuery()); }
solrQueryResponse.getFacetCategoryList(), solrQueryResponse.getFilterQueriesActual(), solrQueryResponse.getSolrQuery().getQuery() );
final String stringquery = solrQuery.getQuery(); final String filters = org.springframework.util.StringUtils.arrayToDelimitedString(solrQuery.getFilterQueries(), "");
if(e instanceof SolrServerException){ throw new YardException("Error while performing query on the SolrServer (query: " + query.getQuery()+")!", e); } else if(e instanceof IOException){ throw new YardException("Unable to access SolrServer",e);
if(e instanceof SolrServerException){ throw new YardException("Error while performing query on the SolrServer (query: " + query.getQuery()+")!", e); } else if(e instanceof IOException){ throw new YardException("Unable to access SolrServer",e);