def aget_children(self, path, watcher=None, handler=None):
    register = False
    get = False
    self._children_lock.acquire()
    if watcher:
      register = path not in self._children_watches
      self._children_watches.setdefault(path, []).append(watcher)
    if handler:
      get = path not in self._children_handlers
      self._children_handlers.setdefault(path, []).append(handler)
    self._children_lock.release()
    if register or get:
      if register:
        w = self._children_watcher
      else:
        w = None
      # We use a lambda here so we can make sure that the path gets appended
      # to the args. This allows us to multiplex the call.
      h = (lambda zh, rc, data: self._children_handler(zh, rc, data, path))
      # FIXME(error handling)
      logging.debug('Performing a get_children against %s', path)
      zookeeper.aget_children(self._zookeeper, path, w, h)
Handles the user clicking the 'Open...' button.
dataset/ETHPy150Open liquidgecka/twitcher/twitcher/zkwrapper.py/ZKWrapper.aget_children--crossover with--dataset/ETHPy150Open enthought/traitsui/examples/demo/Standard_Editors/File_Dialog/File_Open.py/FileDialogDemo._open_changed