From 9036f3b7726674f2f7170e1f3c5db6a447b74912 Mon Sep 17 00:00:00 2001 From: shtyrnyaev Date: Thu, 30 May 2019 15:24:22 +0300 Subject: [PATCH] add private method __getHost for setup default port to 9092 issues - 870 --- pykafka/client.py | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/pykafka/client.py b/pykafka/client.py index 193e00f79..a94934422 100644 --- a/pykafka/client.py +++ b/pykafka/client.py @@ -131,7 +131,7 @@ def __init__(self, raise ImportError('use_greenlets can only be used when gevent is installed.') self._handler = GEventHandler() if use_greenlets else ThreadingHandler() self.cluster = Cluster( - hosts, + hosts if not ':' in hosts else '{}:{}'.format(hosts, '9092'), self._handler, socket_timeout_ms=self._socket_timeout_ms, offsets_channel_socket_timeout_ms=self._offsets_channel_socket_timeout_ms, @@ -148,7 +148,7 @@ def __repr__(self): module=self.__class__.__module__, name=self.__class__.__name__, id_=hex(id(self)), - hosts=self._seed_hosts, + hosts=self.__getHost(self._seed_hosts), ) def update_cluster(self): @@ -158,3 +158,23 @@ def update_cluster(self): with current metadata from the cluster. """ self.cluster.update() + + def __getHost(self, host): + """ + Private method for setup default port + :param host: + :return: string with hosts 'host:port,host:port.....' + """ + hosts = host.split(',') + resp = '' + + for item in range(len(hosts)): + if ':' in item: + resp += hosts[item] + else: + resp += '{}:{}'.format(hosts[item], '9092') + + if len(hosts) > item-1: + resp += ',' + + return resp