List of usage examples for org.apache.solr.client.solrj.response UpdateResponse getStatus
public int getStatus()
From source file:be.ibridge.kettle.trans.step.solrin.SolrIn.java
License:LGPL
private Value callHttpService(Row row) throws KettleException { UpdateResponse upres; try {//from w w w. j a v a2 s.c om SolrInputDocument doc = new SolrInputDocument(); logDetailed("Connecting to : [" + url + "]"); for (int i = 0; i < data.argnrs.length; i++) { doc.addField(//meta.getArgumentField()[i], meta.getArgumentParameter()[i], row.getValue(data.argnrs[i]).toString(false)); } upres = server.add(doc); // logDetailed("ADD:" + upres.getResponse()); if (upres == null) { throw new KettleException("Unable add document URL :" + url + ": null response"); } if (upres == null && (upres.getStatus() != 0)) { throw new KettleException("Unable add document URL :" + url + ":" + upres.getResponse()); } rowCount++; if (rowCount == 1000) { logDetailed("Commit ever 1000 records (hard coded)"); server.commit(); rowCount = 0; } } catch (Exception e) { throw new KettleException("Unable to get result from specified URL :" + url, e); } return new Value("0"); }
From source file:com.aboutdata.service.bean.SearchServiceImpl.java
@Override public void delete(String id) { try {/* w w w . ja va 2s . c o m*/ UpdateResponse response = solrServer.deleteById(id); logger.info("delete index status {}", response.getStatus()); } catch (SolrServerException | IOException ex) { logger.error("delete index error {}", ex); } }
From source file:com.inqool.dcap.integration.oai.harvester.SolrExternalSourcesIndexer.java
License:Apache License
public void update(ZdoModel model) throws IOException { SolrServer server = new HttpSolrServer(SOLR_EXTERNAL_SOURCES_ENDPOINT); String docId = model.get(ZdoTerms.oaiIdentifier); //First remove old doc try {/* ww w . ja va 2s . c o m*/ final UpdateResponse resp = server.deleteById(docId); if (resp.getStatus() == 0) { logger.trace("Remove request was successful for: {}", docId); } else { logger.error("Remove request has error, code: {} for pid: {}", resp.getStatus(), docId); return; } } catch (final SolrServerException | IOException e) { logger.error("Delete Exception: {}", e); throw new RuntimeException(e); } //Recursively dig to fedora and triplestore to construct whole solr document hierarchy SolrInputDocument solrInputDocument = recursivelyIndex(model); logger.trace("Created SolrInputDocument: {}", solrInputDocument); if (solrInputDocument == null) return; //this was probably a delete request, skip inserting //Then insert new docs try { logger.debug("Executing update of: {}...", store.removeTransactionFromUrl(model.getUrl())); final UpdateResponse resp = server.add(solrInputDocument); if (resp.getStatus() == 0) { logger.trace("Update request was successful for: {}", docId); } else { logger.error("Update request returned error code: {} for identifier: {}", resp.getStatus(), docId); } logger.trace("Received result from Solr request."); } catch (final SolrServerException | IOException e) { logger.error("Update exception: {}!", e); throw new RuntimeException(e); } }
From source file:com.inqool.dcap.integration.oai.harvester.SolrExternalSourcesIndexer.java
License:Apache License
public Future<UpdateResponse> remove(final String id) { logger.debug("Received request for removal of: {}", id); try {//ww w .ja v a2 s . com SolrServer server = new HttpSolrServer(SOLR_EXTERNAL_SOURCES_ENDPOINT); final UpdateResponse resp = server.deleteById(id); if (resp.getStatus() == 0) { logger.debug("Remove request was successful for: {}", id); } else { logger.error("Remove request has error, code: {} for pid: {}", resp.getStatus(), id); } return new AsyncResult<>(resp); } catch (final SolrServerException | IOException e) { logger.error("Delete Exception: {}", e); throw new RuntimeException(e); } }
From source file:com.inqool.dcap.office.indexer.indexer.SolrBulkIndexer.java
License:Apache License
public void update(ModelTreeNode data) throws IOException { dataForSuggester.clear();//from w w w . ja v a 2 s. co m SolrServer server = new HttpSolrServer(SOLR_MAIN_ENDPOINT); fetchOrgNames(); String fedoraId = store.getOnlyIdFromUrl(data.getModel().getUrl()); //First remove old doc try { //first delete children //not needed, if _root_ is indexed, children are deleted with parent final UpdateResponse resp0 = server.deleteByQuery("_root_:\"" + fedoraId + "\""); if (resp0.getStatus() == 0) { logger.debug("Remove request was successful for children of: {}", fedoraId); } else { logger.error("Remove request has error, code: {} for pid: {}", resp0.getStatus(), fedoraId); return; } //then delete the doc itself final UpdateResponse resp1 = server.deleteById(fedoraId); if (resp1.getStatus() == 0) { logger.debug("Remove request was successful for: {}", fedoraId); } else { logger.error("Remove request has error, code: {} for pid: {}", resp1.getStatus(), fedoraId); return; } //Also delete suggester data belonging to the document root SolrServer suggesterServer = new HttpSolrServer(SOLR_SUGGESTER_ENDPOINT); final UpdateResponse resp2 = suggesterServer.deleteByQuery("belongsTo:\"" + fedoraId + "\""); if (resp2.getStatus() == 0) { logger.debug("Remove request was successful for suggester data of: {}", fedoraId); } else { logger.error("Remove request for suggester data has error, code: {} for pid: {}", resp2.getStatus(), fedoraId); return; } } catch (final SolrServerException | IOException e) { logger.error("Delete Exception: {}", e); throw new RuntimeException(e); } //Recursively dig to fedora and triplestore to construct whole solr document hierarchy SolrInputDocument solrInputDocument = recursivelyIndex(data); if (solrInputDocument == null) return; //this was probably a delete request, skip inserting String solrDoc = solrInputDocument.toString(); if (solrDoc.length() > 500) { solrDoc = solrDoc.substring(0, 500); } logger.debug("Created SolrInputDocument: {}", solrDoc); //Then insert new docs try { final UpdateResponse resp = server.add(solrInputDocument); if (resp.getStatus() == 0) { logger.debug("Update request was successful for: {}", fedoraId); } else { logger.error("Update request returned error code: {} for identifier: {}", resp.getStatus(), fedoraId); } logger.debug("Received result from Solr request."); } catch (final SolrServerException | IOException e) { logger.error("Update exception: {}!", e); throw new RuntimeException(e); } //And update also suggester data try { //For data for suggester, add info what root document they belong to, so that they can be also unindexed later with the document for (SolrInputDocument solrInputDoc : dataForSuggester) { solrInputDoc.addField("belongsTo", fedoraId); } SolrServer suggesterServer = new HttpSolrServer(SOLR_SUGGESTER_ENDPOINT); final UpdateResponse resp = suggesterServer.add(dataForSuggester); if (resp.getStatus() == 0) { logger.debug("Updating solr suggester data successful."); } else { logger.error("Update request for solr suggester data returned error code: {} for identifier: {}", resp.getStatus(), fedoraId); } } catch (Exception e) { logger.error("Error updating solr sugesster data.", e); } }
From source file:com.inqool.dcap.office.indexer.indexer.SolrBulkIndexer.java
License:Apache License
public Future<UpdateResponse> remove(final String id) { logger.debug("Received request for removal of: {}", id); try {/* w w w .j a va2 s . c o m*/ SolrServer server = new HttpSolrServer(SOLR_MAIN_ENDPOINT); //first delete children //not needed, if _root_ is indexed, children are deleted with parent? //or now it doesn't work again? weird final UpdateResponse resp0 = server.deleteByQuery("_root_:\"" + id + "\""); if (resp0.getStatus() == 0) { logger.debug("Remove request was successful for children of: {}", id); } else { logger.error("Remove request has error, code: {} for pid: {}", resp0.getStatus(), id); return new AsyncResult<>(resp0); } final UpdateResponse resp1 = server.deleteById(id); if (resp1.getStatus() == 0) { logger.debug("Remove request was successful for: {}", id); } else { logger.error("Remove request has error, code: {} for pid: {}", resp1.getStatus(), id); } //Also delete suggester data belonging to the document root SolrServer suggesterServer = new HttpSolrServer(SOLR_SUGGESTER_ENDPOINT); final UpdateResponse resp2 = suggesterServer.deleteByQuery("belongsTo:\"" + id + "\""); if (resp2.getStatus() == 0) { logger.debug("Remove request was successful for suggester data of: {}", id); } else { logger.error("Remove request for suggester data has error, code: {} for pid: {}", resp2.getStatus(), id); } return new AsyncResult<>(resp1); } catch (final SolrServerException | IOException e) { logger.error("Delete Exception: {}", e); throw new RuntimeException(e); } }
From source file:com.k_joseph.apps.multisearch.solr.MultiSearchDataIndexer.java
License:Mozilla Public License
private void printFailureIfResponseIsNotZero(UpdateResponse resp) { if (resp.getStatus() != 0) { System.out.println("Some error has occurred, status is: " + resp.getStatus()); }/* w ww. j a v a2s. c o m*/ }
From source file:com.mmj.app.lucene.solr.client.SolrClient.java
License:Open Source License
/** * /*ww w. j ava2 s .c o m*/ */ public boolean addBeans(String corename, final List<?> beans) { final HttpSolrServer server = getOrCreateSolrServer(corename); Result result = exec(new Executor() { @Override public Result exec() throws SolrServerException, IOException { UpdateResponse addBeans = server.addBeans(beans); server.commit(); return new Result().setSuccess(addBeans.getStatus() == ERROR_STATUS); } }); return result.isSuccess(); }
From source file:com.mmj.app.lucene.solr.client.SolrClient.java
License:Open Source License
/** * /* w w w. j a v a 2s . c o m*/ * * @param corename * @return */ public boolean delAll(String corename) { final HttpSolrServer server = getOrCreateSolrServer(corename); Result result = exec(new Executor() { @Override public Result exec() throws SolrServerException, IOException { String query = BaseSolrQueryConvert.toAll().getQuery(); UpdateResponse deleteByQuery = server.deleteByQuery(query); server.commit(); return new Result().setSuccess(deleteByQuery.getStatus() == ERROR_STATUS); } }); return result.isSuccess(); }
From source file:com.mmj.app.lucene.solr.client.SolrClient.java
License:Open Source License
/** * /*from w w w . j a v a 2 s . co m*/ */ public boolean del(String corename, final SolrQuery solrQuery) { final HttpSolrServer server = getOrCreateSolrServer(corename); final String query = solrQuery.getQuery(); Result result = exec(new Executor() { @Override public Result exec() throws SolrServerException, IOException { UpdateResponse deleteByQuery = server.deleteByQuery(query); server.commit(); return new Result().setSuccess(deleteByQuery.getStatus() == ERROR_STATUS); } }); return result.isSuccess(); }