public static SolrAccess prepareSolrAccess() throws IOException { SolrAccess solrAccess = EasyMock.createMock(SolrAccess.class); Set<String> keys = DocumentServiceTest.PATHS_MAPPING.keySet(); for (String key : keys) { EasyMock.expect(solrAccess.getPath(key)) .andReturn(new ObjectPidsPath[] {DocumentServiceTest.PATHS_MAPPING.get(key)}) .anyTimes(); } return solrAccess; }
@Override Document dataFromSolr(String pid, SolrAccess solrAccess) throws IOException { try { PIDParser parser = new PIDParser(pid); parser.objectPid(); return solrAccess.getSolrDataDocument(parser.getObjectId()); } catch (LexerException e) { LOGGER.log(Level.SEVERE, e.getMessage(), e); return solrAccess.getSolrDataDocument(pid); } }
public List<DownloadItem> getDownloadItems() throws RecognitionException, TokenStreamException, IOException { List<DownloadItem> items = new ArrayList<DownloadOriginalViewObject.DownloadItem>(); List params = getPidsParams(); for (Object param : params) { boolean accessed = false; ObjectPidsPath[] path = solrAccess.getPath(param.toString()); for (ObjectPidsPath objectPidsPath : path) { objectPidsPath = objectPidsPath.injectRepository(); if (isActionAllowed.isActionAllowed( SecuredActions.READ.getFormalName(), param.toString(), FedoraUtils.IMG_FULL_STREAM, objectPidsPath)) { accessed = true; break; } } String dctitle = DCUtils.titleFromDC(fedoraAccess.getDC(param.toString())); items.add( new DownloadItem( dctitle, "img?uuid=" + param.toString() + "&stream=IMG_FULL&action=GETRAW&asFile=true", fedoraAccess.getKrameriusModelName(param.toString()), accessed, fedoraAccess.isImageFULLAvailable(param.toString()))); } return items; }
@Override Document dataFromSolr(String handle, SolrAccess solrAccess) throws IOException { return solrAccess.getSolrDataDocumentByHandle(handle); }