Search in sources :

Example 1 with SystemConfigVo

use of com.vip.saturn.job.console.domain.SystemConfigVo in project Saturn by vipshop.

the class SystemConfigController method genSystemConfigInfo.

private Map<String, List<SystemConfigVo>> genSystemConfigInfo(Map<String, List<JobConfigMeta>> jobConfigGroups, List<SystemConfig> systemConfigs) {
    Map<String, SystemConfig> systemConfigMap = convertList2Map(systemConfigs);
    Map<String, List<SystemConfigVo>> jobConfigDisplayInfoMap = Maps.newHashMap();
    for (Map.Entry<String, List<JobConfigMeta>> group : jobConfigGroups.entrySet()) {
        List<JobConfigMeta> jobConfigMetas = group.getValue();
        List<SystemConfigVo> jobConfigVos = Lists.newArrayListWithCapacity(jobConfigMetas.size());
        for (JobConfigMeta configMeta : jobConfigMetas) {
            SystemConfig systemConfig = systemConfigMap.get(configMeta.getName());
            String value = systemConfig != null ? systemConfig.getValue() : null;
            jobConfigVos.add(new SystemConfigVo(configMeta.getName(), value, configMeta.getDesc_zh()));
        }
        jobConfigDisplayInfoMap.put(group.getKey(), jobConfigVos);
    }
    return jobConfigDisplayInfoMap;
}
Also used : SystemConfig(com.vip.saturn.job.console.mybatis.entity.SystemConfig) JobConfigMeta(com.vip.saturn.job.console.domain.JobConfigMeta) List(java.util.List) HashMap(java.util.HashMap) Map(java.util.Map) SystemConfigVo(com.vip.saturn.job.console.domain.SystemConfigVo)

Example 2 with SystemConfigVo

use of com.vip.saturn.job.console.domain.SystemConfigVo in project Saturn by vipshop.

the class ConsoleConfigController method genSystemConfigInfo.

/**
 * 根据Yaml定义,返回作业配置。
 *
 * @param jobConfigGroups 来自yaml定义的配置展现分类定义
 * @param systemConfigs 数据库的系统配置项
 * @return 配置分组与配置信息map
 */
private Map<String, List<SystemConfigVo>> genSystemConfigInfo(Map<String, List<JobConfigMeta>> jobConfigGroups, List<SystemConfig> systemConfigs) {
    Map<String, SystemConfig> systemConfigMap = convertList2Map(systemConfigs);
    Map<String, List<SystemConfigVo>> jobConfigDisplayInfoMap = Maps.newHashMap();
    Set<String> categorizedConfigKeySet = Sets.newHashSet();
    for (Map.Entry<String, List<JobConfigMeta>> group : jobConfigGroups.entrySet()) {
        List<JobConfigMeta> jobConfigMetas = group.getValue();
        List<SystemConfigVo> jobConfigVos = Lists.newArrayListWithCapacity(jobConfigMetas.size());
        for (JobConfigMeta configMeta : jobConfigMetas) {
            String configName = configMeta.getName();
            SystemConfig systemConfig = systemConfigMap.get(configName);
            String value = systemConfig != null ? systemConfig.getValue() : null;
            jobConfigVos.add(new SystemConfigVo(configName, value, configMeta.getDesc_zh()));
            categorizedConfigKeySet.add(configName);
        }
        jobConfigDisplayInfoMap.put(group.getKey(), jobConfigVos);
    }
    // 将所有没有在yaml定义的配置放到Others组别
    if (categorizedConfigKeySet.size() != systemConfigs.size()) {
        List<SystemConfigVo> unCategorizedJobConfigVos = getUncategorizedSystemConfigs(systemConfigs, categorizedConfigKeySet);
        jobConfigDisplayInfoMap.put("other_configs", unCategorizedJobConfigVos);
    }
    return jobConfigDisplayInfoMap;
}
Also used : SystemConfig(com.vip.saturn.job.console.mybatis.entity.SystemConfig) JobConfigMeta(com.vip.saturn.job.console.domain.JobConfigMeta) SystemConfigVo(com.vip.saturn.job.console.domain.SystemConfigVo)

Example 3 with SystemConfigVo

use of com.vip.saturn.job.console.domain.SystemConfigVo in project Saturn by vipshop.

the class ConsoleConfigController method getUncategorizedSystemConfigs.

private List<SystemConfigVo> getUncategorizedSystemConfigs(List<SystemConfig> systemConfigList, Set<String> configKeySet) {
    List<SystemConfigVo> unCategorizedJobConfigVos = Lists.newArrayList();
    for (SystemConfig systemConfig : systemConfigList) {
        String property = systemConfig.getProperty();
        if (configKeySet.contains(property)) {
            continue;
        }
        unCategorizedJobConfigVos.add(new SystemConfigVo(property, systemConfig.getValue(), ""));
    }
    return unCategorizedJobConfigVos;
}
Also used : SystemConfig(com.vip.saturn.job.console.mybatis.entity.SystemConfig) SystemConfigVo(com.vip.saturn.job.console.domain.SystemConfigVo)

Aggregations

SystemConfigVo (com.vip.saturn.job.console.domain.SystemConfigVo)3 SystemConfig (com.vip.saturn.job.console.mybatis.entity.SystemConfig)3 JobConfigMeta (com.vip.saturn.job.console.domain.JobConfigMeta)2 HashMap (java.util.HashMap)1 List (java.util.List)1 Map (java.util.Map)1