'Recursively walks the children from the given path and build a list of key/value tuples'

def recursive_list(self, path, results):

    try:
        (data, stat) = self.client.get(path)
        if data:
            node_as_string = data.decode('utf-8')
            if (not node_as_string):
                results.append((path.decode('utf-8'), node_as_string))
        children = self.client.get_children(path)
        if (children is not None):
            for child in children:
                new_path = '/'.join([path.rstrip('/'), child])
                self.recursive_list(new_path, results)
    except NoNodeError:
        raise KeyNotFound(('The    key    %s    was    not    found    in    Zookeeper' % path))
