package com.baidu.disconf.web.service.zookeeper.service.impl; import java.util.List; import java.util.Map; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baidu.disconf.core.common.constants.DisConfigTypeEnum; import com.baidu.disconf.core.common.path.ZooPathMgr; import com.baidu.disconf.web.innerapi.zookeeper.ZooKeeperDriver; import com.baidu.disconf.web.service.zookeeper.config.ZooConfig; import com.baidu.disconf.web.service.zookeeper.dto.ZkDisconfData; import com.baidu.disconf.web.service.zookeeper.service.ZkDeployMgr; /** * @author liaoqiqi * @version 2014-9-11 */ @Service public class ZkDeployMgrImpl implements ZkDeployMgr { @Autowired private ZooKeeperDriver zooKeeperDriver; @Autowired private ZooConfig zooConfig; /** * 获取ZK的详细部署信息 */ @Override public String getDeployInfo(String app, String env, String version) { // 路径获取 String url = ZooPathMgr.getZooBaseUrl(zooConfig.getZookeeperUrlPrefix(), app, env, version); List<String> hostInfoList = zooKeeperDriver.getConf(url); return StringUtils.join(hostInfoList, '\n'); } /** * 获取每个配置级别的Map数据, Key是配置, Value是ZK配置数据 * * @return */ public Map<String, ZkDisconfData> getZkDisconfDataMap(String app, String env, String version) { return zooKeeperDriver.getDisconfData(app, env, version); } public ZkDisconfData getZkDisconfData(String app, String env, String version, DisConfigTypeEnum disConfigTypeEnum, String keyName) { return zooKeeperDriver.getDisconfData(app, env, version, disConfigTypeEnum, keyName); } }