From e2024a441d25b22a127f56b4a80168a563b3942e Mon Sep 17 00:00:00 2001 From: yidadi <1056027797@qq.com> Date: Thu, 15 Aug 2019 09:30:45 +0800 Subject: [PATCH] Optimizing and reusing code --- .../nacos/NacosPropertySourceRepository.java | 6 ++-- .../client/NacosPropertySourceBuilder.java | 33 ++++++++++--------- .../cloud/nacos/ribbon/NacosServerList.java | 3 +- 3 files changed, 21 insertions(+), 21 deletions(-) diff --git a/spring-cloud-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosPropertySourceRepository.java b/spring-cloud-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosPropertySourceRepository.java index ea011b002..f7937336a 100644 --- a/spring-cloud-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosPropertySourceRepository.java +++ b/spring-cloud-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosPropertySourceRepository.java @@ -16,11 +16,11 @@ package com.alibaba.cloud.nacos; -import java.util.ArrayList; import java.util.List; import java.util.concurrent.ConcurrentHashMap; import com.alibaba.cloud.nacos.client.NacosPropertySource; +import com.google.common.collect.Lists; /** * @author xiaojing @@ -34,9 +34,7 @@ public class NacosPropertySourceRepository { * @return all nacos properties from application context */ public static List getAll() { - List result = new ArrayList<>(); - result.addAll(NACOS_PROPERTY_SOURCE_REPOSITORY.values()); - return result; + return Lists.newArrayList(NACOS_PROPERTY_SOURCE_REPOSITORY.values()); } public static void collectNacosPropertySources( diff --git a/spring-cloud-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/client/NacosPropertySourceBuilder.java b/spring-cloud-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/client/NacosPropertySourceBuilder.java index e10c9a30c..c2f8123ba 100644 --- a/spring-cloud-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/client/NacosPropertySourceBuilder.java +++ b/spring-cloud-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/client/NacosPropertySourceBuilder.java @@ -83,23 +83,24 @@ public class NacosPropertySourceBuilder { String data = null; try { data = configService.getConfig(dataId, group, timeout); - if (!StringUtils.isEmpty(data)) { - log.info(String.format("Loading nacos data, dataId: '%s', group: '%s'", - dataId, group)); - - if (fileExtension.equalsIgnoreCase("properties")) { - Properties properties = new Properties(); - - properties.load(new StringReader(data)); - return properties; - } - else if (fileExtension.equalsIgnoreCase("yaml") - || fileExtension.equalsIgnoreCase("yml")) { - YamlPropertiesFactoryBean yamlFactory = new YamlPropertiesFactoryBean(); - yamlFactory.setResources(new ByteArrayResource(data.getBytes())); - return yamlFactory.getObject(); - } + if (StringUtils.isEmpty(data)) { + return EMPTY_PROPERTIES; + } + + log.info(String.format("Loading nacos data, dataId: '%s', group: '%s'", + dataId, group)); + if (fileExtension.equalsIgnoreCase("properties")) { + Properties properties = new Properties(); + + properties.load(new StringReader(data)); + return properties; + } + else if (fileExtension.equalsIgnoreCase("yaml") + || fileExtension.equalsIgnoreCase("yml")) { + YamlPropertiesFactoryBean yamlFactory = new YamlPropertiesFactoryBean(); + yamlFactory.setResources(new ByteArrayResource(data.getBytes())); + return yamlFactory.getObject(); } } catch (NacosException e) { diff --git a/spring-cloud-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/ribbon/NacosServerList.java b/spring-cloud-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/ribbon/NacosServerList.java index 7da981a31..fcb4ef4b0 100644 --- a/spring-cloud-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/ribbon/NacosServerList.java +++ b/spring-cloud-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/ribbon/NacosServerList.java @@ -22,6 +22,7 @@ import java.util.List; import com.alibaba.cloud.nacos.NacosDiscoveryProperties; import com.alibaba.nacos.api.naming.pojo.Instance; +import com.alibaba.nacos.client.naming.utils.CollectionUtils; import com.netflix.client.config.IClientConfig; import com.netflix.loadbalancer.AbstractServerList; @@ -64,7 +65,7 @@ public class NacosServerList extends AbstractServerList { private List instancesToServerList(List instances) { List result = new ArrayList<>(); - if (null == instances) { + if (CollectionUtils.isEmpty(instances)) { return result; } for (Instance instance : instances) {