From 13e509679db051f3bfd1d662b4d0dbcc8e67cd95 Mon Sep 17 00:00:00 2001 From: xianlaioy Date: Mon, 9 Sep 2019 17:55:02 +0800 Subject: [PATCH 1/4] =?UTF-8?q?style:=20Modifiers=20should=20be=20declared?= =?UTF-8?q?=20in=20the=20correct=20order;Map=20init=20=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=E5=A4=A7=E5=B0=8F=20=E9=81=BF=E5=85=8D=E6=89=A9=E5=AE=B9?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/config/listener/AbstractSharedListener.java | 5 +++-- .../nacos/config/server/model/app/ApplicationInfo.java | 4 ++-- .../nacos/config/server/service/AggrWhitelist.java | 10 +++++----- .../com/alibaba/nacos/config/server/utils/MD5.java | 9 ++++----- 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/api/src/main/java/com/alibaba/nacos/api/config/listener/AbstractSharedListener.java b/api/src/main/java/com/alibaba/nacos/api/config/listener/AbstractSharedListener.java index 8fa30bd6236..788be8504fd 100644 --- a/api/src/main/java/com/alibaba/nacos/api/config/listener/AbstractSharedListener.java +++ b/api/src/main/java/com/alibaba/nacos/api/config/listener/AbstractSharedListener.java @@ -24,16 +24,17 @@ */ @SuppressWarnings("PMD.AbstractClassShouldStartWithAbstractNamingRule") public abstract class AbstractSharedListener implements Listener { + private volatile String dataId; private volatile String group; - final public void fillContext(String dataId, String group) { + public final void fillContext(String dataId, String group) { this.dataId = dataId; this.group = group; } @Override - final public void receiveConfigInfo(String configInfo) { + public final void receiveConfigInfo(String configInfo) { innerReceive(dataId, group, configInfo); } diff --git a/config/src/main/java/com/alibaba/nacos/config/server/model/app/ApplicationInfo.java b/config/src/main/java/com/alibaba/nacos/config/server/model/app/ApplicationInfo.java index 0322ac18495..50d1759fb5d 100644 --- a/config/src/main/java/com/alibaba/nacos/config/server/model/app/ApplicationInfo.java +++ b/config/src/main/java/com/alibaba/nacos/config/server/model/app/ApplicationInfo.java @@ -24,8 +24,8 @@ */ public class ApplicationInfo { - private static final long LOCK_EXPIRE_DURATION = 30 * 1000; - private static final long RECENTLY_DURATION = 24 * 60 * 60 * 1000; + private static final long LOCK_EXPIRE_DURATION = 30 * 1000L; + private static final long RECENTLY_DURATION = 24 * 60 * 60 * 1000L; private String appName; diff --git a/config/src/main/java/com/alibaba/nacos/config/server/service/AggrWhitelist.java b/config/src/main/java/com/alibaba/nacos/config/server/service/AggrWhitelist.java index da725496c95..7629515b5fb 100644 --- a/config/src/main/java/com/alibaba/nacos/config/server/service/AggrWhitelist.java +++ b/config/src/main/java/com/alibaba/nacos/config/server/service/AggrWhitelist.java @@ -37,10 +37,12 @@ @Service public class AggrWhitelist { + public static final String AGGRIDS_METADATA = "com.alibaba.nacos.metadata.aggrIDs"; + /** * 判断指定的dataId是否在聚合dataId白名单。 */ - static public boolean isAggrDataId(String dataId) { + public static boolean isAggrDataId(String dataId) { if (null == dataId) { throw new IllegalArgumentException(); } @@ -56,7 +58,7 @@ static public boolean isAggrDataId(String dataId) { /** * 传入内容,重新加载聚合白名单 */ - static public void load(String content) { + public static void load(String content) { if (StringUtils.isBlank(content)) { fatalLog.error("aggr dataId whitelist is blank."); return; @@ -83,14 +85,12 @@ static void compile(List whitelist) { AGGR_DATAID_WHITELIST.set(list); } - static public List getWhiteList() { + public static List getWhiteList() { return AGGR_DATAID_WHITELIST.get(); } // ======================= - static public final String AGGRIDS_METADATA = "com.alibaba.nacos.metadata.aggrIDs"; - static final AtomicReference> AGGR_DATAID_WHITELIST = new AtomicReference>( new ArrayList()); } diff --git a/config/src/main/java/com/alibaba/nacos/config/server/utils/MD5.java b/config/src/main/java/com/alibaba/nacos/config/server/utils/MD5.java index 3f4c1f26943..abaab367e57 100644 --- a/config/src/main/java/com/alibaba/nacos/config/server/utils/MD5.java +++ b/config/src/main/java/com/alibaba/nacos/config/server/utils/MD5.java @@ -16,10 +16,9 @@ package com.alibaba.nacos.config.server.utils; import com.alibaba.nacos.config.server.constant.Constants; - +import com.google.common.collect.Maps; import java.io.UnsupportedEncodingException; import java.security.MessageDigest; -import java.util.HashMap; import java.util.Map; import java.util.concurrent.locks.ReentrantLock; @@ -31,10 +30,10 @@ @SuppressWarnings("PMD.ClassNamingShouldBeCamelRule") public class MD5 { private static char[] digits = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}; - private final static int DIGITS_COUNT = 16; - private final static int DIGITS_CHAR_SIZE = 32; + private static final int DIGITS_COUNT = 16; + private static final int DIGITS_CHAR_SIZE = 32; - private static Map rDigits = new HashMap(16); + private static Map rDigits = Maps.newHashMapWithExpectedSize(16) static { for (int i = 0; i < digits.length; ++i) { From 7b5c6e92734d61d83d4d791e9fb82fed35668346 Mon Sep 17 00:00:00 2001 From: xianlaioy Date: Mon, 9 Sep 2019 17:56:14 +0800 Subject: [PATCH 2/4] =?UTF-8?q?style:=20Modifiers=20should=20be=20declared?= =?UTF-8?q?=20in=20the=20correct=20order;Map=20init=20=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=E5=A4=A7=E5=B0=8F=20=E9=81=BF=E5=85=8D=E6=89=A9=E5=AE=B9?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/alibaba/nacos/config/server/utils/MD5.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/src/main/java/com/alibaba/nacos/config/server/utils/MD5.java b/config/src/main/java/com/alibaba/nacos/config/server/utils/MD5.java index abaab367e57..1459f681b68 100644 --- a/config/src/main/java/com/alibaba/nacos/config/server/utils/MD5.java +++ b/config/src/main/java/com/alibaba/nacos/config/server/utils/MD5.java @@ -33,7 +33,7 @@ public class MD5 { private static final int DIGITS_COUNT = 16; private static final int DIGITS_CHAR_SIZE = 32; - private static Map rDigits = Maps.newHashMapWithExpectedSize(16) + private static Map rDigits = Maps.newHashMapWithExpectedSize(16); static { for (int i = 0; i < digits.length; ++i) { From 08e69a0b2183554c8923f9f04c6b9b739a1681a6 Mon Sep 17 00:00:00 2001 From: xianlaioy Date: Mon, 9 Sep 2019 20:15:19 +0800 Subject: [PATCH 3/4] =?UTF-8?q?refactor:=20=E5=B1=80=E9=83=A8=E5=8F=98?= =?UTF-8?q?=E9=87=8F=E6=98=AF=E7=BA=BF=E7=A8=8B=E5=AE=89=E5=85=A8=E7=9A=84?= =?UTF-8?q?=EF=BC=9B=20=20=20=20=20=20=20=20=20=20=20urlPattern=E6=94=B9?= =?UTF-8?q?=E6=88=90static=20final=EF=BC=9B=20=20=20=20=20=20=20=20=20=20?= =?UTF-8?q?=20GroupKey=E9=87=8D=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../nacos/client/config/common/GroupKey.java | 31 +++++++--------- .../service/LocalDataSourceServiceImpl.java | 2 +- .../nacos/config/server/utils/GroupKey.java | 35 ++++++++----------- .../config/server/utils/RegexParser.java | 2 +- .../nacos/config/server/utils/TimeUtils.java | 2 +- .../config/server/utils/TimeoutUtils.java | 2 +- .../config/server/utils/UrlAnalysisUtils.java | 4 +-- .../nacos/test/naming/RandomUtils.java | 8 ++--- 8 files changed, 38 insertions(+), 48 deletions(-) diff --git a/client/src/main/java/com/alibaba/nacos/client/config/common/GroupKey.java b/client/src/main/java/com/alibaba/nacos/client/config/common/GroupKey.java index 5b246516292..2f7d527efb0 100644 --- a/client/src/main/java/com/alibaba/nacos/client/config/common/GroupKey.java +++ b/client/src/main/java/com/alibaba/nacos/client/config/common/GroupKey.java @@ -24,33 +24,28 @@ */ public class GroupKey { - static public String getKey(String dataId, String group) { - StringBuilder sb = new StringBuilder(); - urlEncode(dataId, sb); - sb.append('+'); - urlEncode(group, sb); - return sb.toString(); + public static String getKey(String dataId, String group) { + return doGetKey(dataId, group, ""); + } + + public static String getKeyTenant(String dataId, String group, String tenant) { + return doGetKey(dataId, group, tenant); + } + + public static String getKey(String dataId, String group, String datumStr) { + return doGetKey(dataId, group, datumStr); } - static public String getKeyTenant(String dataId, String group, String tenant) { + private static String doGetKey(String dataId, String group, String datumStr) { StringBuilder sb = new StringBuilder(); urlEncode(dataId, sb); sb.append('+'); urlEncode(group, sb); - if (StringUtils.isNotEmpty(tenant)) { + if (StringUtils.isNotEmpty(datumStr)) { sb.append('+'); - urlEncode(tenant, sb); + urlEncode(datumStr, sb); } - return sb.toString(); - } - static public String getKey(String dataId, String group, String datumStr) { - StringBuilder sb = new StringBuilder(); - urlEncode(dataId, sb); - sb.append('+'); - urlEncode(group, sb); - sb.append('+'); - urlEncode(datumStr, sb); return sb.toString(); } diff --git a/config/src/main/java/com/alibaba/nacos/config/server/service/LocalDataSourceServiceImpl.java b/config/src/main/java/com/alibaba/nacos/config/server/service/LocalDataSourceServiceImpl.java index a45f08618b5..0786ed4bbe1 100644 --- a/config/src/main/java/com/alibaba/nacos/config/server/service/LocalDataSourceServiceImpl.java +++ b/config/src/main/java/com/alibaba/nacos/config/server/service/LocalDataSourceServiceImpl.java @@ -157,7 +157,7 @@ private List loadSql(String sqlFile) throws Exception { sqlFileIn = new FileInputStream(file); } - StringBuffer sqlSb = new StringBuffer(); + StringBuilder sqlSb = new StringBuilder(); byte[] buff = new byte[1024]; int byteRead = 0; while ((byteRead = sqlFileIn.read(buff)) != -1) { diff --git a/config/src/main/java/com/alibaba/nacos/config/server/utils/GroupKey.java b/config/src/main/java/com/alibaba/nacos/config/server/utils/GroupKey.java index 6227812eab5..4b10b19460d 100644 --- a/config/src/main/java/com/alibaba/nacos/config/server/utils/GroupKey.java +++ b/config/src/main/java/com/alibaba/nacos/config/server/utils/GroupKey.java @@ -22,37 +22,32 @@ */ public class GroupKey { - static public String getKey(String dataId, String group) { - StringBuilder sb = new StringBuilder(); - urlEncode(dataId, sb); - sb.append('+'); - urlEncode(group, sb); - return sb.toString(); + public static String getKey(String dataId, String group) { + return doGetKey(dataId, group, ""); + } + + public static String getKeyTenant(String dataId, String group, String tenant) { + return doGetKey(dataId, group, tenant); + } + + public static String getKey(String dataId, String group, String datumStr) { + return doGetKey(dataId, group, datumStr); } - static public String getKeyTenant(String dataId, String group, String tenant) { + private static String doGetKey(String dataId, String group, String datumStr) { StringBuilder sb = new StringBuilder(); urlEncode(dataId, sb); sb.append('+'); urlEncode(group, sb); - if (StringUtils.isNotEmpty(tenant)) { + if (StringUtils.isNotEmpty(datumStr)) { sb.append('+'); - urlEncode(tenant, sb); + urlEncode(datumStr, sb); } - return sb.toString(); - } - static public String getKey(String dataId, String group, String datumStr) { - StringBuilder sb = new StringBuilder(); - urlEncode(dataId, sb); - sb.append('+'); - urlEncode(group, sb); - sb.append('+'); - urlEncode(datumStr, sb); return sb.toString(); } - static public String[] parseKey(String groupKey) { + public static String[] parseKey(String groupKey) { StringBuilder sb = new StringBuilder(); String dataId = null; String group = null; @@ -97,7 +92,7 @@ static public String[] parseKey(String groupKey) { } } - return new String[] {dataId, group, tenant}; + return new String[]{dataId, group, tenant}; } /** diff --git a/config/src/main/java/com/alibaba/nacos/config/server/utils/RegexParser.java b/config/src/main/java/com/alibaba/nacos/config/server/utils/RegexParser.java index f181d165281..e581c1a4c24 100644 --- a/config/src/main/java/com/alibaba/nacos/config/server/utils/RegexParser.java +++ b/config/src/main/java/com/alibaba/nacos/config/server/utils/RegexParser.java @@ -37,7 +37,7 @@ static public String regexFormat(String regex) { if (regex == null) { throw new NullPointerException("regex string can't be null"); } - StringBuffer result = new StringBuffer(); + StringBuilder result = new StringBuilder(); result.append("^"); for (int i = 0; i < regex.length(); i++) { char ch = regex.charAt(i); diff --git a/config/src/main/java/com/alibaba/nacos/config/server/utils/TimeUtils.java b/config/src/main/java/com/alibaba/nacos/config/server/utils/TimeUtils.java index 6990c4cdff1..e76b8b5c489 100644 --- a/config/src/main/java/com/alibaba/nacos/config/server/utils/TimeUtils.java +++ b/config/src/main/java/com/alibaba/nacos/config/server/utils/TimeUtils.java @@ -33,7 +33,7 @@ public static Timestamp getCurrentTime() { return new Timestamp(date.getTime()); } - static public String getCurrentTimeStr() { + public static String getCurrentTimeStr() { Calendar c = Calendar.getInstance(); c.setTime(new Date()); FastDateFormat format = FastDateFormat.getInstance("yyyy-MM-dd HH:mm:ss"); diff --git a/config/src/main/java/com/alibaba/nacos/config/server/utils/TimeoutUtils.java b/config/src/main/java/com/alibaba/nacos/config/server/utils/TimeoutUtils.java index 62f9253a34d..ee637842358 100644 --- a/config/src/main/java/com/alibaba/nacos/config/server/utils/TimeoutUtils.java +++ b/config/src/main/java/com/alibaba/nacos/config/server/utils/TimeoutUtils.java @@ -59,7 +59,7 @@ public synchronized void initLastResetTime() { /** * 累计总的时间 * - * @param timeout + * @param time */ public void addTotalTime(long time) { totalTime.addAndGet(time); diff --git a/config/src/main/java/com/alibaba/nacos/config/server/utils/UrlAnalysisUtils.java b/config/src/main/java/com/alibaba/nacos/config/server/utils/UrlAnalysisUtils.java index f02eb994a6c..47a1dfeb978 100644 --- a/config/src/main/java/com/alibaba/nacos/config/server/utils/UrlAnalysisUtils.java +++ b/config/src/main/java/com/alibaba/nacos/config/server/utils/UrlAnalysisUtils.java @@ -27,7 +27,7 @@ */ public class UrlAnalysisUtils { - private static Pattern urlPattern = Pattern.compile("^(\\w+://)?([\\w\\.]+:)(\\d*)?(\\??.*)"); + private static final Pattern URL_PATTERN = Pattern.compile("^(\\w+://)?([\\w\\.]+:)(\\d*)?(\\??.*)"); public static String getContentIdentity(String content) { @@ -35,7 +35,7 @@ public static String getContentIdentity(String content) { return null; } - Matcher matcher = urlPattern.matcher(content); + Matcher matcher = URL_PATTERN.matcher(content); StringBuilder buf = new StringBuilder(); if (matcher.find()) { String scheme = matcher.group(1); diff --git a/test/src/test/java/com/alibaba/nacos/test/naming/RandomUtils.java b/test/src/test/java/com/alibaba/nacos/test/naming/RandomUtils.java index c93afb0cd6d..cc2079e109e 100644 --- a/test/src/test/java/com/alibaba/nacos/test/naming/RandomUtils.java +++ b/test/src/test/java/com/alibaba/nacos/test/naming/RandomUtils.java @@ -27,6 +27,7 @@ public class RandomUtils { private static Random rd = new Random(); private static int UNICODE_START = 19968; private static int UNICODE_END = 40864; + private static final String STRING_POOL = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; private RandomUtils() { } @@ -132,13 +133,12 @@ public static String getStringWithNumAndCha(int n) { } public static String getRandomString(int length) { - StringBuffer buffer = new StringBuffer("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"); - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); Random random = new Random(); - int range = buffer.length(); + int range = STRING_POOL.length(); for(int i = 0; i < length; ++i) { - sb.append(buffer.charAt(random.nextInt(range))); + sb.append(STRING_POOL.charAt(random.nextInt(range))); } return sb.toString(); From 4e6d8b67a27e8d49657f0ef974778a7991e005b4 Mon Sep 17 00:00:00 2001 From: xianlaioy Date: Mon, 9 Sep 2019 20:42:48 +0800 Subject: [PATCH 4/4] =?UTF-8?q?refactor:=20IO=E6=94=B9=E6=88=90try=20resou?= =?UTF-8?q?rce=E3=80=82instanceList=E5=BE=AA=E7=8E=AF=E7=9B=B4=E6=8E=A5?= =?UTF-8?q?=E6=94=B9=E6=88=90addAll?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/alibaba/nacos/core/utils/SystemUtils.java | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/core/src/main/java/com/alibaba/nacos/core/utils/SystemUtils.java b/core/src/main/java/com/alibaba/nacos/core/utils/SystemUtils.java index b732e8ccca5..28754b3e66d 100644 --- a/core/src/main/java/com/alibaba/nacos/core/utils/SystemUtils.java +++ b/core/src/main/java/com/alibaba/nacos/core/utils/SystemUtils.java @@ -121,11 +121,8 @@ private static String getClusterConfFilePath() { public static List readClusterConf() throws IOException { List instanceList = new ArrayList(); - Reader reader = null; - - try { - reader = new InputStreamReader(new FileInputStream(new File(CLUSTER_CONF_FILE_PATH)), - StandardCharsets.UTF_8); + try(Reader reader = new InputStreamReader(new FileInputStream(new File(CLUSTER_CONF_FILE_PATH)), + StandardCharsets.UTF_8)) { List lines = IoUtils.readLines(reader); String comment = "#"; for (String line : lines) { @@ -142,19 +139,13 @@ public static List readClusterConf() throws IOException { int multiIndex = instance.indexOf(Constants.COMMA_DIVISION); if (multiIndex > 0) { // support the format: ip1:port,ip2:port # multi inline - for (String ins : instance.split(Constants.COMMA_DIVISION)) { - instanceList.add(ins); - } + instanceList.addAll(Arrays.asList(instance.split(Constants.COMMA_DIVISION))); } else { //support the format: 192.168.71.52:8848 instanceList.add(instance); } } return instanceList; - } finally { - if (reader != null) { - reader.close(); - } } }