'Recursively walks the children from the given path to find the maximum modification time'

def recursive_mtime(self, path):

    try:
        (data, stat) = self.client.get(path)
        children = self.client.get_children(path)
        if ((children is not None) and (len(children) > 0)):
            for child in children:
                new_path = '/'.join([path.rstrip('/'), child])
            return max(stat.mtime, self.recursive_mtime(new_path))
        else:
            return stat.mtime
    except NoNodeError:
        raise KeyNotFound(('The    key    %s    was    not    found    in    Zookeeper' % path))
