Revision 55643
Added by Katerina Iatropoulou almost 5 years ago
SolrResultSetFactory.java | ||
---|---|---|
5 | 5 |
import gr.uoa.di.driver.enabling.resultset.ResultSet; |
6 | 6 |
import gr.uoa.di.driver.enabling.resultset.ResultSetFactory; |
7 | 7 |
import org.apache.log4j.Logger; |
8 |
import org.apache.solr.client.solrj.impl.CloudSolrServer;
|
|
8 |
import org.apache.solr.client.solrj.impl.CloudSolrClient;
|
|
9 | 9 |
|
10 |
import java.util.Arrays; |
|
10 | 11 |
import java.util.HashMap; |
11 | 12 |
import java.util.Map; |
12 | 13 |
|
... | ... | |
16 | 17 |
public class SolrResultSetFactory implements ResultSetFactory { |
17 | 18 |
|
18 | 19 |
private Logger logger = Logger.getLogger(getClass()); |
20 |
private Map<String, CloudSolrClient> clients = new HashMap<String, CloudSolrClient>(); |
|
19 | 21 |
|
20 |
private Map<String, CloudSolrServer> clients = new HashMap<String, CloudSolrServer>(); |
|
21 |
|
|
22 |
//private static int Rsets = 0; |
|
23 |
|
|
24 | 22 |
@Override |
25 | 23 |
public ResultSet<String> createResultSet(EPR epr) { |
26 | 24 |
try { |
27 | 25 |
|
28 |
CloudSolrServer solrClient = null;
|
|
26 |
String[] zkservers= epr.getAddress().split(",");
|
|
29 | 27 |
|
28 |
CloudSolrClient solrClient; |
|
29 |
|
|
30 | 30 |
synchronized (clients) { |
31 | 31 |
solrClient = clients.get(epr.getAddress()); |
32 | 32 |
} |
33 | 33 |
if (solrClient == null) { |
34 |
solrClient = new CloudSolrServer(epr.getAddress());
|
|
34 |
solrClient = new CloudSolrClient.Builder().withZkHost(Arrays.asList(zkservers)).build();
|
|
35 | 35 |
|
36 | 36 |
clients.put(epr.getAddress(), solrClient); |
37 | 37 |
} |
38 | 38 |
|
39 |
logger.debug("Address " + epr.getAddress()); |
|
40 |
//Rsets++; |
|
41 |
//System.out.println("Created Results sets " + Rsets); |
|
42 |
return new SolrResultSet(epr, solrClient); |
|
39 |
ResultSet<String> solrResultSets = new SolrResultSet(epr, solrClient); |
|
43 | 40 |
|
41 |
return solrResultSets; |
|
42 |
|
|
44 | 43 |
} catch (Exception e) { |
45 | 44 |
logger.error("Error creating solr client", e); |
46 | 45 |
} |
47 | 46 |
|
47 |
logger.debug("NOT HERE!"); |
|
48 | 48 |
return null; |
49 | 49 |
} |
50 | 50 |
|
Also available in: Unified diff
merge uoa-search solr7 branch 50700:55641 into trunk