@Override protected void doSubscribe(Node node, NotifyListener listener) { List<NodeType> listenNodeTypes = node.getListenNodeTypes(); if (CollectionUtils.isEmpty(listenNodeTypes)) { return; } for (NodeType listenNodeType : listenNodeTypes) { String listenNodePath = NodeRegistryUtils.getNodeTypePath(clusterName, listenNodeType); ChildListener zkListener = addZkListener(node, listener); // 为自己关注的 节点 添加监听 List<String> children = zkClient.addChildListener(listenNodePath, zkListener); if (CollectionUtils.isNotEmpty(children)) { List<Node> listenedNodes = new ArrayList<Node>(); for (String child : children) { Node listenedNode = NodeRegistryUtils.parse(listenNodePath + "/" + child); listenedNodes.add(listenedNode); } notify(NotifyEvent.ADD, listenedNodes, listener); cachedChildrenNodeMap.put(listenNodePath, children); } } }
@Override protected void doSubscribe(Node node, NotifyListener listener) { List<NodeType> listenNodeTypes = node.getListenNodeTypes(); if (CollectionUtils.isEmpty(listenNodeTypes)) { return; } for (NodeType listenNodeType : listenNodeTypes) { String listenNodePath = NodeRegistryUtils.getNodeTypePath(clusterName, listenNodeType); ChildListener zkListener = addZkListener(node, listener); // 为自己关注的 节点 添加监听 List<String> children = zkClient.addChildListener(listenNodePath, zkListener); if (CollectionUtils.isNotEmpty(children)) { List<Node> listenedNodes = new ArrayList<Node>(); for (String child : children) { Node listenedNode = NodeRegistryUtils.parse(listenNodePath + "/" + child); listenedNodes.add(listenedNode); } notify(NotifyEvent.ADD, listenedNodes, listener); cachedChildrenNodeMap.put(listenNodePath, children); } } }
@Override protected void doSubscribe(Node node, NotifyListener listener) { List<NodeType> listenNodeTypes = node.getListenNodeTypes(); if (CollectionUtils.isEmpty(listenNodeTypes)) { return; } for (NodeType listenNodeType : listenNodeTypes) { String listenNodePath = NodeRegistryUtils.getNodeTypePath(clusterName, listenNodeType); ChildListener zkListener = addZkListener(node, listener); // 为自己关注的 节点 添加监听 List<String> children = zkClient.addChildListener(listenNodePath, zkListener); if (CollectionUtils.isNotEmpty(children)) { List<Node> listenedNodes = new ArrayList<Node>(); for (String child : children) { Node listenedNode = NodeRegistryUtils.parse(listenNodePath + "/" + child); listenedNodes.add(listenedNode); } notify(NotifyEvent.ADD, listenedNodes, listener); cachedChildrenNodeMap.put(listenNodePath, children); } } }