Example usage for org.apache.solr.client.solrj.response QueryResponse QueryResponse

List of usage examples for org.apache.solr.client.solrj.response QueryResponse QueryResponse

Introduction

In this page you can find the example usage for org.apache.solr.client.solrj.response QueryResponse QueryResponse.

Prototype

public QueryResponse(NamedList<Object> res, SolrClient solrClient) 

Source Link

Document

Utility constructor to set the solrServer and namedList

Usage

From source file:fr.hoteia.qalingo.core.solr.service.impl.CategorySolrServiceImpl.java

License:Apache License

/**
  * /*from  w w w  .  j a va 2 s .c  om*/
  */
public CategoryResponseBean searchCategory() throws SolrServerException, IOException {

    SolrQuery solrQuery = new SolrQuery();
    solrQuery.setQuery("*");
    solrQuery.setFacet(true);
    solrQuery.setFacetMinCount(1);
    solrQuery.setFacetLimit(8);
    solrQuery.addFacetField("name");
    solrQuery.addFacetField("code");

    SolrRequest request = new QueryRequest(solrQuery, METHOD.POST);
    request.setPath(getRequestPath());
    QueryResponse response = new QueryResponse(solrServer.request(request), solrServer);
    List<CategorySolr> productSolrList = response.getBeans(CategorySolr.class);
    List<FacetField> productSolrFacetFieldList = response.getFacetFields();

    CategoryResponseBean categoryResponseBean = new CategoryResponseBean();
    categoryResponseBean.setCategorySolrList(productSolrList);
    categoryResponseBean.setCategorySolrFacetFieldList(productSolrFacetFieldList);

    return categoryResponseBean;
}

From source file:fr.hoteia.qalingo.core.solr.service.impl.CustomerSolrServiceImpl.java

License:Apache License

/**
  * /* www  .ja  v  a2  s. c om*/
  */
public CustomerResponseBean searchCustomer() throws SolrServerException, IOException {

    SolrQuery solrQuery = new SolrQuery();
    solrQuery.setQuery("*");
    solrQuery.setFacet(true);
    solrQuery.setFacetMinCount(1);
    solrQuery.setFacetLimit(8);
    solrQuery.addFacetField("lastname");

    SolrRequest request = new QueryRequest(solrQuery, METHOD.POST);
    request.setPath(getRequestPath());
    QueryResponse response = new QueryResponse(solrServer.request(request), solrServer);
    List<CustomerSolr> customerSolrList = response.getBeans(CustomerSolr.class);
    List<FacetField> customerSolrFacetFieldList = response.getFacetFields();

    CustomerResponseBean customerResponseBean = new CustomerResponseBean();
    customerResponseBean.setCustomerSolrList(customerSolrList);
    customerResponseBean.setCustomerSolrFacetFieldList(customerSolrFacetFieldList);

    return customerResponseBean;
}

From source file:fr.hoteia.qalingo.core.solr.service.impl.ProductSolrServiceImpl.java

License:Apache License

/**
  * /*from  w  w  w  . ja va2 s  . c o  m*/
  */
public ProductResponseBean searchProduct() throws SolrServerException, IOException {

    SolrQuery solrQuery = new SolrQuery();
    solrQuery.setQuery("*");
    solrQuery.setFacet(true);
    solrQuery.setFacetMinCount(1);
    solrQuery.setFacetLimit(8);
    solrQuery.addFacetField("name");
    solrQuery.addFacetField("code");

    SolrRequest request = new QueryRequest(solrQuery, METHOD.POST);
    request.setPath(getRequestPath());
    QueryResponse response = new QueryResponse(solrServer.request(request), solrServer);
    List<ProductSkuSolr> productSkuSolrList = response.getBeans(ProductSkuSolr.class);
    List<FacetField> productSolrFacetFieldList = response.getFacetFields();

    ProductResponseBean productResponseBean = new ProductResponseBean();
    productResponseBean.setProductSolrList(productSkuSolrList);
    productResponseBean.setProductSolrFacetFieldList(productSolrFacetFieldList);

    return productResponseBean;
}

From source file:fr.hoteia.qalingo.core.solr.service.impl.StoreSolrServiceImpl.java

License:Apache License

/**
  * //from  w  w  w .j  a  v  a 2 s  . co  m
  */
public StoreResponseBean searchStore() throws SolrServerException, IOException {

    SolrQuery solrQuery = new SolrQuery();
    solrQuery.setQuery("*");
    solrQuery.setFacet(true);
    solrQuery.setFacetMinCount(1);
    solrQuery.setFacetLimit(8);
    solrQuery.addFacetField("businessname");

    SolrRequest request = new QueryRequest(solrQuery, METHOD.POST);
    request.setPath(getRequestPath());
    QueryResponse response = new QueryResponse(solrServer.request(request), solrServer);
    List<StoreSolr> storeSolrList = response.getBeans(StoreSolr.class);
    List<FacetField> storeSolrFacetFieldList = response.getFacetFields();

    StoreResponseBean storeResponseBean = new StoreResponseBean();
    storeResponseBean.setStoreSolrList(storeSolrList);
    storeResponseBean.setStoreSolrFacetFieldList(storeSolrFacetFieldList);

    return storeResponseBean;
}

From source file:net.yacy.cora.federate.solr.connector.RemoteSolrConnector.java

License:Open Source License

@Override
public QueryResponse getResponseByParams(ModifiableSolrParams params) throws IOException {
    // during the solr query we set the thread name to the query string to get more debugging info in thread dumps
    String q = params.get(CommonParams.Q);
    String fq = params.get(CommonParams.FQ);
    String threadname = Thread.currentThread().getName();
    if (q != null)
        Thread.currentThread().setName("solr query: q = " + q + (fq == null ? "" : ", fq = " + fq));

    QueryRequest request = new QueryRequest(params);
    ResponseParser responseParser = useBinaryResponseWriter ? new BinaryResponseParser()
            : new XMLResponseParser();
    request.setResponseParser(responseParser);
    long t = System.currentTimeMillis();
    NamedList<Object> result = null;
    try {// ww  w.j  av a 2  s  . com
        result = this.server.request(request);
    } catch (final Throwable e) {
        //ConcurrentLog.logException(e);
        throw new IOException(e.getMessage());
        /*
        Log.logException(e);
        server = instance.getServer(this.corename);
        super.init(server);
        try {
        result = server.request(request);
        } catch (final Throwable e1) {
        throw new IOException(e1.getMessage());
        }
        */
    }
    QueryResponse response = new QueryResponse(result, this.server);
    response.setElapsedTime(System.currentTimeMillis() - t);

    if (q != null)
        Thread.currentThread().setName(threadname);
    return response;
}

From source file:org.hoteia.qalingo.core.solr.service.CatalogCategorySolrService.java

License:Apache License

public CatalogCategoryResponseBean searchCatalogCategory(String searchBy, String searchText, String facetField)
        throws SolrServerException, IOException {
    SolrQuery solrQuery = new SolrQuery();
    solrQuery.setParam("rows", ROWS_DEFAULT_VALUE);

    if (StringUtils.isEmpty(searchBy)) {
        throw new IllegalArgumentException("SearchBy field can not be Empty or Blank!");
    }/*from   w  w  w  . ja  va  2 s.c  o  m*/

    if (StringUtils.isEmpty(searchText)) {
        solrQuery.setQuery(searchBy + ":*");
    } else {
        solrQuery.setQuery(searchBy + ":" + searchText + "*");
    }

    if (StringUtils.isNotEmpty(facetField)) {
        solrQuery.setFacet(true);
        solrQuery.setFacetMinCount(1);
        solrQuery.setFacetLimit(8);
        solrQuery.addFacetField(facetField);
    }

    logger.debug("QueryRequest solrQuery: " + solrQuery);

    SolrRequest request = new QueryRequest(solrQuery, METHOD.POST);

    QueryResponse response = new QueryResponse(catalogCategorySolrServer.request(request),
            catalogCategorySolrServer);

    logger.debug("QueryResponse Obj: " + response.toString());

    List<CatalogCategorySolr> solrList = response.getBeans(CatalogCategorySolr.class);
    CatalogCategoryResponseBean catalogCategoryResponseBean = new CatalogCategoryResponseBean();
    catalogCategoryResponseBean.setCatalogCategorySolrList(solrList);

    if (StringUtils.isNotEmpty(facetField)) {
        List<FacetField> solrFacetFieldList = response.getFacetFields();
        catalogCategoryResponseBean.setCatalogCategorySolrFacetFieldList(solrFacetFieldList);
    }

    return catalogCategoryResponseBean;
}

From source file:org.hoteia.qalingo.core.solr.service.CatalogCategorySolrService.java

License:Apache License

public CatalogCategoryResponseBean searchCatalogCategory() throws SolrServerException, IOException {
    SolrQuery solrQuery = new SolrQuery();
    solrQuery.setParam("rows", ROWS_DEFAULT_VALUE);

    solrQuery.setQuery("*");
    solrQuery.setFacet(true);/*from  ww  w  .j  a va  2 s .c  o  m*/
    solrQuery.setFacetMinCount(1);
    solrQuery.setFacetLimit(8);
    solrQuery.addFacetField("code");

    logger.debug("QueryRequest solrQuery: " + solrQuery);

    SolrRequest request = new QueryRequest(solrQuery, METHOD.POST);

    QueryResponse response = new QueryResponse(catalogCategorySolrServer.request(request),
            catalogCategorySolrServer);

    logger.debug("QueryResponse Obj: " + response.toString());

    List<CatalogCategorySolr> solrList = response.getBeans(CatalogCategorySolr.class);
    List<FacetField> solrFacetFieldList = response.getFacetFields();

    CatalogCategoryResponseBean catalogCategoryResponseBean = new CatalogCategoryResponseBean();
    catalogCategoryResponseBean.setCatalogCategorySolrList(solrList);
    catalogCategoryResponseBean.setCatalogCategorySolrFacetFieldList(solrFacetFieldList);
    return catalogCategoryResponseBean;
}

From source file:org.hoteia.qalingo.core.solr.service.CompanySolrService.java

License:Apache License

public CompanyResponseBean searchCompany(final String searchQuery, final List<String> facetFields,
        final List<String> cities, final List<String> countries, final SolrParam solrParam)
        throws SolrServerException, IOException {
    SolrQuery solrQuery = new SolrQuery();

    if (solrParam != null) {
        if (solrParam.get("rows") != null) {
            solrQuery.setParam("rows", (String) solrParam.get("rows"));
        } else {// w  ww  . j  a v a 2s.c o  m
            solrQuery.setParam("rows", getMaxResult());
        }

        if (solrParam.get("sortField") != null) {
            SortField sortField = (SortField) solrParam.get("sortField");
            for (Iterator<String> iterator = sortField.keySet().iterator(); iterator.hasNext();) {
                String field = (String) iterator.next();
                solrQuery.addSortField(field, sortField.get(field));
            }
        }
    }

    if (StringUtils.isEmpty(searchQuery)) {
        throw new IllegalArgumentException("SearchQuery field can not be Empty or Blank!");
    }
    solrQuery.setQuery(searchQuery);

    if (facetFields != null && facetFields.size() > 0) {
        solrQuery.setFacet(true);
        solrQuery.setFacetMinCount(1);
        for (String facetField : facetFields) {
            solrQuery.addFacetField(facetField);
        }
    }

    if (cities != null && cities.size() > 0) {
        StringBuilder fq = new StringBuilder("city:(");
        for (int i = 0; i < cities.size(); i++) {
            String city = cities.get(i);
            fq.append('"' + city + '"');
            if (i < cities.size() - 1) {
                fq.append(" OR ");
            }
        }
        fq.append(")");
        solrQuery.addFilterQuery(fq.toString());
    }
    if (countries != null && countries.size() > 0) {
        StringBuilder fq = new StringBuilder("countryCode:(");
        for (int i = 0; i < countries.size(); i++) {
            String country = countries.get(i);
            fq.append('"' + country + '"');
            if (i < countries.size() - 1) {
                fq.append(" OR ");
            }
        }
        fq.append(")");
        solrQuery.addFilterQuery(fq.toString());
    }

    logger.debug("QueryRequest solrQuery: " + solrQuery);

    SolrRequest request = new QueryRequest(solrQuery, METHOD.POST);

    QueryResponse response = new QueryResponse(companySolrServer.request(request), companySolrServer);

    logger.debug("QueryResponse Obj: " + response.toString());

    List<CompanySolr> solrList = response.getBeans(CompanySolr.class);
    CompanyResponseBean companyResponseBean = new CompanyResponseBean();
    companyResponseBean.setCompanySolrList(solrList);

    if (facetFields != null && facetFields.size() > 0) {
        List<FacetField> solrFacetFieldList = response.getFacetFields();
        companyResponseBean.setCompanySolrFacetFieldList(solrFacetFieldList);
    }
    return companyResponseBean;
}

From source file:org.hoteia.qalingo.core.solr.service.CompanySolrService.java

License:Apache License

@Deprecated
public CompanyResponseBean searchCompany(String searchBy, String searchText, List<String> facetFields,
        List<String> cities, List<String> countries) throws SolrServerException, IOException {
    SolrQuery solrQuery = new SolrQuery();
    solrQuery.setParam("rows", getMaxResult());

    if (StringUtils.isEmpty(searchBy)) {
        throw new IllegalArgumentException("SearchBy field can not be Empty or Blank!");
    }/*from ww  w  .j  a  va2s .co m*/

    if (StringUtils.isEmpty(searchText)) {
        solrQuery.setQuery(searchBy + ":*");
    } else {
        solrQuery.setQuery(searchBy + ":" + searchText + "*");
    }

    if (facetFields != null && facetFields.size() > 0) {
        solrQuery.setFacet(true);
        solrQuery.setFacetMinCount(1);
        for (String facetField : facetFields) {
            solrQuery.addFacetField(facetField);
        }
    }

    if (cities != null && cities.size() > 0) {
        StringBuilder fq = new StringBuilder("city:(");
        for (int i = 0; i < cities.size(); i++) {
            String city = cities.get(i);
            fq.append('"' + city + '"');
            if (i < cities.size() - 1) {
                fq.append(" OR ");
            }
        }
        fq.append(")");
        solrQuery.addFilterQuery(fq.toString());
    }
    if (countries != null && countries.size() > 0) {
        StringBuilder fq = new StringBuilder("countryCode:(");
        for (int i = 0; i < countries.size(); i++) {
            String country = countries.get(i);
            fq.append('"' + country + '"');
            if (i < countries.size() - 1) {
                fq.append(" OR ");
            }
        }
        fq.append(")");
        solrQuery.addFilterQuery(fq.toString());
    }

    logger.debug("QueryRequest solrQuery: " + solrQuery);

    SolrRequest request = new QueryRequest(solrQuery, METHOD.POST);

    QueryResponse response = new QueryResponse(companySolrServer.request(request), companySolrServer);

    logger.debug("QueryResponse Obj: " + response.toString());

    List<CompanySolr> solrList = response.getBeans(CompanySolr.class);
    CompanyResponseBean companyResponseBean = new CompanyResponseBean();
    companyResponseBean.setCompanySolrList(solrList);

    if (facetFields != null && facetFields.size() > 0) {
        List<FacetField> solrFacetFieldList = response.getFacetFields();
        companyResponseBean.setCompanySolrFacetFieldList(solrFacetFieldList);
    }
    return companyResponseBean;
}

From source file:org.hoteia.qalingo.core.solr.service.CompanySolrService.java

License:Apache License

@Deprecated
public CompanyResponseBean searchCompany() throws SolrServerException, IOException {
    SolrQuery solrQuery = new SolrQuery();
    solrQuery.setParam("rows", getMaxResult());

    solrQuery.setQuery("*");
    solrQuery.setFacet(true);/*from  w w w  .  j a v  a 2 s. c  om*/
    solrQuery.setFacetMinCount(1);
    solrQuery.addFacetField("name");

    logger.debug("QueryRequest solrQuery: " + solrQuery);

    SolrRequest request = new QueryRequest(solrQuery, METHOD.POST);

    QueryResponse response = new QueryResponse(companySolrServer.request(request), companySolrServer);

    logger.debug("QueryResponse Obj: " + response.toString());

    List<CompanySolr> solrList = response.getBeans(CompanySolr.class);
    List<FacetField> solrFacetFieldList = response.getFacetFields();
    CompanyResponseBean companyResponseBean = new CompanyResponseBean();
    companyResponseBean.setCompanySolrList(solrList);
    companyResponseBean.setCompanySolrFacetFieldList(solrFacetFieldList);
    return companyResponseBean;
}