AbstractStreamCommands.java 文件源码

java
阅读 27 收藏 0 点赞 0 评论 0

项目:spring-cloud-dataflow 作者:
protected Map<String, String> getDeploymentProperties(@CliOption(key = {
        PROPERTIES_OPTION }, help = "the properties for this deployment") String deploymentProperties,
        @CliOption(key = {
                PROPERTIES_FILE_OPTION }, help = "the properties for this deployment (as a File)") File propertiesFile,
        int which) throws IOException {
    Map<String, String> propertiesToUse;
    switch (which) {
    case 0:
        propertiesToUse = DeploymentPropertiesUtils.parse(deploymentProperties);
        break;
    case 1:
        String extension = FilenameUtils.getExtension(propertiesFile.getName());
        Properties props = null;
        if (extension.equals("yaml") || extension.equals("yml")) {
            YamlPropertiesFactoryBean yamlPropertiesFactoryBean = new YamlPropertiesFactoryBean();
            yamlPropertiesFactoryBean.setResources(new FileSystemResource(propertiesFile));
            yamlPropertiesFactoryBean.afterPropertiesSet();
            props = yamlPropertiesFactoryBean.getObject();
        }
        else {
            props = new Properties();
            try (FileInputStream fis = new FileInputStream(propertiesFile)) {
                props.load(fis);
            }
        }
        propertiesToUse = DeploymentPropertiesUtils.convert(props);
        break;
    case -1: // Neither option specified
        propertiesToUse = new HashMap<>(1);
        break;
    default:
        throw new AssertionError();
    }
    return propertiesToUse;
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号