summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua Harlow <harlowja@gmail.com>2014-08-31 01:20:39 -0700
committerJoshua Harlow <harlowja@gmail.com>2014-08-31 01:20:39 -0700
commitbfaebd551d20aba5c2587b9a51344e369b4e02e5 (patch)
treedf0fba31c339ed7bd899f54abd68261829618eed
parent4b1fc0f50c9fc0f9f866bfc79aeabd3d68f964e8 (diff)
downloadzake-bfaebd551d20aba5c2587b9a51344e369b4e02e5.tar.gz
Decided to revert that last change and keep the existing logic
-rw-r--r--zake/fake_client.py44
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):