This is an automated email from the ASF dual-hosted git repository.

oleewere pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ambari-infra.git


The following commit(s) were added to refs/heads/master by this push:
     new e59866b  AMBARI-24838 - Infra Manager: zookeper connection string (#12)
e59866b is described below

commit e59866b3fc9bd568d01867dc1c091322268a7b4f
Author: kasakrisz <[email protected]>
AuthorDate: Mon Oct 29 17:03:22 2018 +0100

    AMBARI-24838 - Infra Manager: zookeper connection string (#12)
    
    * AMBARI-24838 - Infra Manager: zookeper connection string
    
    * AMBARI-24838 - Infra Manager: zookeper connection string - improve code 
readability
---
 .../java/org/apache/ambari/infra/job/SolrDAOBase.java  | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

diff --git 
a/ambari-infra-manager/src/main/java/org/apache/ambari/infra/job/SolrDAOBase.java
 
b/ambari-infra-manager/src/main/java/org/apache/ambari/infra/job/SolrDAOBase.java
index 3ac5b05..e6f2c2f 100644
--- 
a/ambari-infra-manager/src/main/java/org/apache/ambari/infra/job/SolrDAOBase.java
+++ 
b/ambari-infra-manager/src/main/java/org/apache/ambari/infra/job/SolrDAOBase.java
@@ -18,14 +18,19 @@
  */
 package org.apache.ambari.infra.job;
 
+import java.io.IOException;
+import java.io.UncheckedIOException;
+import java.net.InetSocketAddress;
+import java.util.List;
+import java.util.Optional;
+import java.util.stream.Collectors;
+
 import org.apache.solr.client.solrj.SolrServerException;
 import org.apache.solr.client.solrj.impl.CloudSolrClient;
+import org.apache.zookeeper.client.ConnectStringParser;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.io.IOException;
-import java.io.UncheckedIOException;
-
 public abstract class SolrDAOBase {
   private static final Logger LOG = LoggerFactory.getLogger(SolrDAOBase.class);
 
@@ -57,7 +62,12 @@ public abstract class SolrDAOBase {
   }
 
   protected CloudSolrClient createClient() {
-    CloudSolrClient client = new 
CloudSolrClient.Builder().withZkHost(zooKeeperConnectionString).build();
+    ConnectStringParser connectStringParser = new 
ConnectStringParser(zooKeeperConnectionString);
+    List<String> zkHosts = connectStringParser.getServerAddresses().stream()
+            .map(InetSocketAddress::toString)
+            .collect(Collectors.toList());
+    CloudSolrClient client = new CloudSolrClient.Builder(
+            zkHosts, 
Optional.ofNullable(connectStringParser.getChrootPath())).build();
     client.setDefaultCollection(defaultCollection);
     return client;
   }

Reply via email to