diff options
Diffstat (limited to 'tooz')
-rw-r--r-- | tooz/drivers/zake.py | 37 | ||||
-rw-r--r-- | tooz/drivers/zookeeper.py | 6 |
2 files changed, 9 insertions, 34 deletions
diff --git a/tooz/drivers/zake.py b/tooz/drivers/zake.py index 5ca244e..deb4430 100644 --- a/tooz/drivers/zake.py +++ b/tooz/drivers/zake.py @@ -17,11 +17,10 @@ from __future__ import absolute_import from zake import fake_client from zake import fake_storage -import tooz from tooz.drivers import zookeeper -class ZakeDriver(zookeeper.BaseZooKeeperDriver): +class ZakeDriver(zookeeper.KazooDriver): """The driver using the Zake client which mimic a fake Kazoo client without the need of real ZooKeeper servers. """ @@ -30,34 +29,6 @@ class ZakeDriver(zookeeper.BaseZooKeeperDriver): fake_storage = fake_storage.FakeStorage( fake_client.k_threading.SequentialThreadingHandler()) - def __init__(self, member_id, parsed_url, options): - super(ZakeDriver, self).__init__(member_id, parsed_url, options) - self._coord = fake_client.FakeClient(storage=self.fake_storage) - - @staticmethod - def watch_join_group(group_id, callback): - raise tooz.NotImplemented - - @staticmethod - def unwatch_join_group(group_id, callback): - raise tooz.NotImplemented - - @staticmethod - def watch_leave_group(group_id, callback): - raise tooz.NotImplemented - - @staticmethod - def unwatch_leave_group(group_id, callback): - raise tooz.NotImplemented - - @staticmethod - def watch_elected_as_leader(group_id, callback): - raise tooz.NotImplemented - - @staticmethod - def unwatch_elected_as_leader(group_id, callback): - raise tooz.NotImplemented - - @staticmethod - def run_watchers(): - raise tooz.NotImplemented + @classmethod + def _make_client(cls, parsed_url, options): + return fake_client.FakeClient(storage=cls.fake_storage) diff --git a/tooz/drivers/zookeeper.py b/tooz/drivers/zookeeper.py index 7ea8e58..9b110e1 100644 --- a/tooz/drivers/zookeeper.py +++ b/tooz/drivers/zookeeper.py @@ -207,9 +207,13 @@ class KazooDriver(BaseZooKeeperDriver): def __init__(self, member_id, parsed_url, options): super(KazooDriver, self).__init__(member_id, parsed_url, options) - self._coord = client.KazooClient(hosts=parsed_url.netloc) + self._coord = self._make_client(parsed_url, options) self._member_id = member_id + @classmethod + def _make_client(cls, parsed_url, options): + return client.KazooClient(hosts=parsed_url.netloc) + def _watch_group(self, group_id): get_members_req = self.get_members(group_id) |