public static byte[] getDataAndWatch(ZKWatcher zkw, String znode, Stat stat)
    throws KeeperException {
    return getDataInternal(zkw, znode, stat, true, true);
  }
Get the data at the specified znode and set a watch. Returns the data and sets a watch if the
node exists. Returns null and no watch is set if the node does not exist or there is an
exception.
@param zkw   zk reference
@param znode path of node
@param stat  object to populate the version of the znode
@return data of the specified znode, or null
@throws KeeperException if unexpected zookeeper exception
hbase-zookeeper/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java