diff options
author | Joshua Harlow <harlowja@gmail.com> | 2014-08-31 01:20:39 -0700 |
---|---|---|
committer | Joshua Harlow <harlowja@gmail.com> | 2014-08-31 01:20:39 -0700 |
commit | bfaebd551d20aba5c2587b9a51344e369b4e02e5 (patch) | |
tree | df0fba31c339ed7bd899f54abd68261829618eed | |
parent | 4b1fc0f50c9fc0f9f866bfc79aeabd3d68f964e8 (diff) | |
download | zake-bfaebd551d20aba5c2587b9a51344e369b4e02e5.tar.gz |
Decided to revert that last change and keep the existing logic
-rw-r--r-- | zake/fake_client.py | 44 |
1 files changed, 20 insertions, 24 deletions
diff --git a/zake/fake_client.py b/zake/fake_client.py index 09bd308..b5162e7 100644 --- a/zake/fake_client.py +++ b/zake/fake_client.py @@ -237,19 +237,17 @@ class FakeClient(object): return utils.dispatch_async(self.handler, self.get, path, watch=watch) def start(self, timeout=None): - started = False - with self._open_close_lock: - if not self._connected: - self._connected = True - started = True - if started: - with self._watches_lock: - self._child_watches.clear() - self._data_watches.clear() - self.storage.attach(self) - self.handler.start() - self._partial_client.session_id = int(uuid.uuid4()) - self._fire_state_change(k_states.KazooState.CONNECTED) + if not self._connected: + with self._open_close_lock: + if not self._connected: + self._connected = True + with self._watches_lock: + self._child_watches.clear() + self._data_watches.clear() + self.storage.attach(self) + self.handler.start() + self._partial_client.session_id = int(uuid.uuid4()) + self._fire_state_change(k_states.KazooState.CONNECTED) def restart(self): with self._open_close_lock: @@ -387,17 +385,15 @@ class FakeClient(object): return utils.dispatch_async(self.handler, self.ensure_path, path) def close(self, close_handler=True): - closed = False - with self._open_close_lock: - if self._connected: - self._connected = False - closed = True - if closed: - self.storage.purge(self) - self._fire_state_change(k_states.KazooState.LOST) - if self._own_handler and close_handler: - self.handler.stop() - self._partial_client.session_id = None + if self._connected: + with self._open_close_lock: + if self._connected: + self._connected = False + self.storage.purge(self) + self._fire_state_change(k_states.KazooState.LOST) + if self._own_handler and close_handler: + self.handler.stop() + self._partial_client.session_id = None class _PartialClient(object): |