Example usage for org.apache.solr.client.solrj SolrQuery setRows

List of usage examples for org.apache.solr.client.solrj SolrQuery setRows

Introduction

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

Prototype

public SolrQuery setRows(Integer rows) 

Source Link

Usage

From source file:de.fatalix.bookery.bl.solr.SolrHandler.java

License:Open Source License

public List<BookEntry> getMobiFormat(String bookID) throws SolrServerException {
    SolrServer solr = null;/*www  . j  a  v a 2 s.  c om*/
    try {
        solr = bookeryService.getSolrConnection();
    } catch (IOException ex) {
        throw new SolrServerException(ex.getMessage());
    }
    SolrQuery query = new SolrQuery();
    query.setQuery("id:" + bookID);
    query.setRows(1);
    query.setFields("id,mobi");
    QueryResponse rsp = solr.query(query);
    return rsp.getBeans(BookEntry.class);
}

From source file:de.fatalix.bookery.bl.solr.SolrHandler.java

License:Open Source License

public long checkSolr() throws SolrServerException, IOException {
    SolrServer solr = bookeryService.getSolrConnection();
    SolrQuery query = new SolrQuery();
    query.setQuery("*:*");
    query.setRows(1);
    QueryResponse rsp = solr.query(query);

    return rsp.getResults().getNumFound();
}

From source file:de.fatalix.bookery.bl.WatchListService.java

License:Open Source License

public List<BookEntry> getAllBooks(List<WatchList> watchList) throws SolrServerException {
    if (watchList.isEmpty()) {
        return Collections.EMPTY_LIST;
    }//from w  w w.ja  v a2 s.  c o m
    String searchString = "id:(";
    for (WatchList watchListItem : watchList) {
        searchString = searchString + "\"" + watchListItem.getBookId() + "\",";
    }
    searchString = searchString.substring(0, searchString.length() - 1) + ")";

    SolrQuery query = new SolrQuery();
    query.setRows(20);
    query.setStart(0);
    query.setQuery(searchString);
    query.setSort(SolrQuery.SortClause.asc("author"));
    query.setFields(SolrSearchUtil.DEFAULT_FIELDS);

    return bookService.searchBooks(query).getBeans(BookEntry.class);

}

From source file:de.fatalix.bookery.bl.WatchListService.java

License:Open Source License

public SolrQuery getSolrQuery(List<WatchList> watchList) {
    if (watchList.isEmpty()) {
        return null;
    }//from   w ww. ja va 2 s  . c  o m
    String searchString = "id:(";
    for (WatchList watchListItem : watchList) {
        searchString = searchString + "\"" + watchListItem.getBookId() + "\",";
    }
    searchString = searchString.substring(0, searchString.length() - 1) + ")";

    SolrQuery query = new SolrQuery();
    query.setRows(20);
    query.setStart(0);
    query.setQuery(searchString);
    query.setSort(SolrQuery.SortClause.asc("author"));
    query.setFields(SolrSearchUtil.DEFAULT_FIELDS);
    return query;
}

From source file:de.fatalix.bookery.view.home.HomeView.java

License:Open Source License

@Override
public void enter(ViewChangeListener.ViewChangeEvent event) {
    try {//from ww w .  j a v  a  2  s. c o  m
        bookCount.setValue("Aktuell sind " + presenter.getBookCount() + " Bcher in der Bookery");

        String searchString = SolrSearchUtil.generateSearchString("");

        SolrQuery query = new SolrQuery();
        query.setRows(6);
        query.setStart(0);
        query.setQuery(searchString);
        query.setSort(SolrQuery.SortClause.desc("likes"));
        query.setFields(SolrSearchUtil.DEFAULT_FIELDS);

        QueryResponse response = presenter.searchBooks(query);
        mostLikedLane.loadLane("Beliebteste Bcher", response.getBeans(BookEntry.class),
                SearchView.id + "/likes");

        query.setSort(SolrQuery.SortClause.desc("downloadcount"));
        response = presenter.searchBooks(query);
        mostLoadedLane.loadLane("Meist geladene Bcher", response.getBeans(BookEntry.class),
                SearchView.id + "/downloads");

        searchString = SolrSearchUtil
                .addNewBooksSearchString(SecurityUtils.getSubject().getPrincipal().toString(), searchString);
        query.setQuery(searchString);
        query.setSort(SolrQuery.SortClause.asc("author"));
        response = presenter.searchBooks(query);
        newBooksLane.loadLane("Neue Bcher", response.getBeans(BookEntry.class),
                SearchView.id + "/auhtor/true");

        query = presenter.getWatchListQuery(SecurityUtils.getSubject().getPrincipal().toString());
        if (query != null) {
            query.setRows(6);
            response = presenter.searchBooks(query);
            watchListLane.loadLane("Deine Merkliste", response.getBeans(BookEntry.class), WatchListView.id);
        } else {
            watchListLane.loadLane("Deine Merkliste", Collections.EMPTY_LIST, WatchListView.id);
        }

    } catch (SolrServerException ex) {
        logger.error(ex, ex);
    }
}

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;
        }//  ww w .  j a v  a  2  s  .  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);//www .j av a 2s. 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 SolrDocument getHierarchyNode(String id) {
    SolrQuery parentQuery = new SolrQuery(ID + ":\"" + id + "\"");
    parentQuery.setRows(1);
    try {//from   w w  w  .j  a  v  a 2  s. c om
        QueryResponse response = this.solrServer.query(parentQuery);
        SolrDocumentList results = response.getResults();
        if (results.size() > 1) {
            LOG.error("Found more than 1 parent for the node with id {}", id);
            throw new NodeStoreException("Found more than 1 parent for the node with id " + id);
        } else if (results.isEmpty()) {
            return null;
        } else {
            SolrDocument document = results.get(0);
            return document;
        }
    } 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 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());
    }/*from  w  ww .ja va2  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);/*from   w  ww .  ja  v a2s .c  o m*/
    childQuery.setRows(1);

    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);
    }
}