source: vlo/branches/vlo-3.0/vlo-web-app/src/main/java/eu/clarin/cmdi/vlo/service/impl/SolrDocumentServiceImpl.java @ 4626

Last change on this file since 4626 was 4626, checked in by Twan Goosen, 10 years ago
  • Created loadable/detachable model for a SolrDocument?. Document service now registered on VloWicketApplication? so that model can use it without needing injection or a reference.
  • Added method to document service interface to get a document by id, to be implemented
File size: 2.1 KB
Line 
1/*
2 * Copyright (C) 2014 CLARIN
3 *
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
16 */
17package eu.clarin.cmdi.vlo.service.impl;
18
19import eu.clarin.cmdi.vlo.pojo.QueryFacetsSelection;
20import eu.clarin.cmdi.vlo.service.SearchResultsDao;
21import eu.clarin.cmdi.vlo.service.SolrDocumentQueryFactory;
22import eu.clarin.cmdi.vlo.service.SolrDocumentService;
23import java.util.List;
24import org.apache.solr.client.solrj.SolrQuery;
25import org.apache.solr.common.SolrDocument;
26
27/**
28 *
29 * @author twagoo
30 */
31public class SolrDocumentServiceImpl implements SolrDocumentService {
32
33    private final SearchResultsDao searchResultsDao;
34    private final SolrDocumentQueryFactory queryFatory;
35
36    public SolrDocumentServiceImpl(SearchResultsDao searchResultsDao, SolrDocumentQueryFactory queryFatory) {
37        this.searchResultsDao = searchResultsDao;
38        this.queryFatory = queryFatory;
39    }
40
41    @Override
42    public SolrDocument getDocument(String docId) {
43        throw new UnsupportedOperationException("Not supported yet.");
44    }
45
46    @Override
47    public List<SolrDocument> getDocuments(QueryFacetsSelection selection, int first, int count) {
48        SolrQuery query = queryFatory.createDocumentQuery(selection,first, count);
49        return searchResultsDao.getDocuments(query);
50    }
51
52    @Override
53    public long getDocumentCount(QueryFacetsSelection selection) {
54        SolrQuery query = queryFatory.createDocumentQuery(selection,0,0);
55        return searchResultsDao.getDocuments(query).getNumFound();
56    }
57
58}
Note: See TracBrowser for help on using the repository browser.