package com.baidu.disconf.web.service.config.service.impl; import java.util.List; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baidu.disconf.core.common.constants.Constants; import com.baidu.disconf.core.common.constants.DisConfigTypeEnum; import com.baidu.disconf.core.common.json.ValueVo; import com.baidu.disconf.web.service.config.bo.Config; import com.baidu.disconf.web.service.config.dao.ConfigDao; import com.baidu.disconf.web.service.config.service.ConfigFetchMgr; import com.baidu.disconf.web.service.config.utils.ConfigUtils; /** * @author knightliao */ @Service public class ConfigFetchMgrImpl implements ConfigFetchMgr { protected static final Logger LOG = LoggerFactory.getLogger(ConfigFetchMgrImpl.class); @Autowired private ConfigDao configDao; /** * 根据详细参数获取配置 */ @Override public Config getConfByParameter(Long appId, Long envId, String version, String key, DisConfigTypeEnum disConfigTypeEnum) { return configDao.getByParameter(appId, envId, version, key, disConfigTypeEnum); } /** * 根据详细参数获取配置返回 */ public ValueVo getConfItemByParameter(Long appId, Long envId, String version, String key) { Config config = configDao.getByParameter(appId, envId, version, key, DisConfigTypeEnum.ITEM); if (config == null) { return ConfigUtils.getErrorVo("cannot find this config"); } ValueVo valueVo = new ValueVo(); valueVo.setValue(config.getValue()); valueVo.setStatus(Constants.OK); return valueVo; } /** * 根据详细参数获取配置列表返回 */ public List<Config> getConfListByParameter(Long appId, Long envId, String version, Boolean hasValue) { return configDao.getConfigList(appId, envId, version, hasValue); } }