code: private void setNodeRecrusively(ZooNode zooNode, int depth) {
          try {
              int currDepth = depth + 1;
              List<String> children = zkClient.getChildren(zooNode.getPath());
              if (CollectionUtils.isEmpty(children)) {
                  zooNode.setLeaf(true);
                  return;
              }
              for (String name : children) {
                  ZooNode node = new ZooNode(ZkPathUtil.buildPath(zooNode.getPath(), name), name);
                  if (currDepth < 2) {
                      node.setOpen(true);
                  }
                  zooNode.getChildren().add(node);
                  setNodeRecrusively(node, currDepth);
              }
          } catch (NoNodeException e) {
              LOG.warn("Zookeeper path not found" + e.getMessage(), e);
          } catch (Exception e) {
              LOG.error("Zookeeper get children error" + e.getMessage(), e);
          }
      }
docs: 递归的填充节点
  
  @param zooNode
  节点
  @param depth
  树深度