1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.mycore.solr.index.handlers;
20
21 import java.io.IOException;
22
23 import org.apache.logging.log4j.LogManager;
24 import org.apache.logging.log4j.Logger;
25 import org.apache.solr.client.solrj.SolrServerException;
26 import org.apache.solr.client.solrj.response.UpdateResponse;
27 import org.mycore.solr.index.statistic.MCRSolrIndexStatistic;
28 import org.mycore.solr.index.statistic.MCRSolrIndexStatisticCollector;
29
30
31
32
33
34 public class MCRSolrOptimizeIndexHandler extends MCRSolrAbstractIndexHandler {
35 private static final Logger LOGGER = LogManager.getLogger(MCRSolrOptimizeIndexHandler.class);
36
37 @Override
38 public void index() throws IOException, SolrServerException {
39 LOGGER.info("Sending optimize request to solr");
40 UpdateResponse response = getSolrClient().optimize();
41 LOGGER.info("Optimize was {}({}ms)", (response.getStatus() == 0 ? "successful." : "UNSUCCESSFUL!"),
42 response.getElapsedTime());
43 }
44
45 @Override
46 public MCRSolrIndexStatistic getStatistic() {
47 return MCRSolrIndexStatisticCollector.OPERATIONS;
48 }
49
50 @Override
51 public String toString() {
52 return "optimize index";
53 }
54
55 }