class ZookeeperDataSource extends AbstractDataSource<String, T> {

    @Override
    public void close() throws Exception {
        if (this.nodeCache != null) {
            this.nodeCache.getListenable().removeListener(listener);
            this.nodeCache.close();
        }
        if (this.zkClient != null) {
            this.zkClient.close();
        }
        pool.shutdown();
    }

    public  ZookeeperDataSource(final String serverAddr, final String path, Converter<String, T> parser);
    public  ZookeeperDataSource(final String serverAddr, final String groupId, final String dataId,
                               Converter<String, T> parser);
    public  ZookeeperDataSource(final String serverAddr, final List<AuthInfo> authInfos, final String groupId, final String dataId,
                               Converter<String, T> parser);

}