[FOR 5771 config common/filter/http] improve the code quality of nacos-client. (#5979)
* [code quality] [nacos-client] [common/filter/http] simple the judge logic, constant export, chinese javadoc translate * [code quality] [nacos-client] [common/filter/http] remove unused import
This commit is contained in:
parent
4cbc6a4960
commit
23bd92b36f
@ -34,4 +34,6 @@ public class ConfigConstants {
|
|||||||
public static final String CONFIG_TYPE = "configType";
|
public static final String CONFIG_TYPE = "configType";
|
||||||
|
|
||||||
public static final String ENCRYPTED_DATA_KEY = "encryptedDataKey";
|
public static final String ENCRYPTED_DATA_KEY = "encryptedDataKey";
|
||||||
|
|
||||||
|
public static final String TYPE = "type";
|
||||||
}
|
}
|
||||||
|
@ -25,6 +25,16 @@ import com.alibaba.nacos.common.utils.StringUtils;
|
|||||||
*/
|
*/
|
||||||
public class GroupKey {
|
public class GroupKey {
|
||||||
|
|
||||||
|
private static final char PLUS = '+';
|
||||||
|
|
||||||
|
private static final char PERCENT = '%';
|
||||||
|
|
||||||
|
private static final char TWO = '2';
|
||||||
|
|
||||||
|
private static final char B = 'B';
|
||||||
|
|
||||||
|
private static final char FIVE = '5';
|
||||||
|
|
||||||
public static String getKey(String dataId, String group) {
|
public static String getKey(String dataId, String group) {
|
||||||
return getKey(dataId, group, "");
|
return getKey(dataId, group, "");
|
||||||
}
|
}
|
||||||
@ -46,10 +56,10 @@ public class GroupKey {
|
|||||||
}
|
}
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
urlEncode(dataId, sb);
|
urlEncode(dataId, sb);
|
||||||
sb.append('+');
|
sb.append(PLUS);
|
||||||
urlEncode(group, sb);
|
urlEncode(group, sb);
|
||||||
if (StringUtils.isNotEmpty(datumStr)) {
|
if (StringUtils.isNotEmpty(datumStr)) {
|
||||||
sb.append('+');
|
sb.append(PLUS);
|
||||||
urlEncode(datumStr, sb);
|
urlEncode(datumStr, sb);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -70,7 +80,7 @@ public class GroupKey {
|
|||||||
|
|
||||||
for (int i = 0; i < groupKey.length(); ++i) {
|
for (int i = 0; i < groupKey.length(); ++i) {
|
||||||
char c = groupKey.charAt(i);
|
char c = groupKey.charAt(i);
|
||||||
if ('+' == c) {
|
if (PLUS == c) {
|
||||||
if (null == dataId) {
|
if (null == dataId) {
|
||||||
dataId = sb.toString();
|
dataId = sb.toString();
|
||||||
sb.setLength(0);
|
sb.setLength(0);
|
||||||
@ -80,13 +90,13 @@ public class GroupKey {
|
|||||||
} else {
|
} else {
|
||||||
throw new IllegalArgumentException("invalid groupkey:" + groupKey);
|
throw new IllegalArgumentException("invalid groupkey:" + groupKey);
|
||||||
}
|
}
|
||||||
} else if ('%' == c) {
|
} else if (PERCENT == c) {
|
||||||
char next = groupKey.charAt(++i);
|
char next = groupKey.charAt(++i);
|
||||||
char nextnext = groupKey.charAt(++i);
|
char nextnext = groupKey.charAt(++i);
|
||||||
if ('2' == next && 'B' == nextnext) {
|
if (TWO == next && B == nextnext) {
|
||||||
sb.append('+');
|
sb.append(PLUS);
|
||||||
} else if ('2' == next && '5' == nextnext) {
|
} else if (TWO == next && FIVE == nextnext) {
|
||||||
sb.append('%');
|
sb.append(PERCENT);
|
||||||
} else {
|
} else {
|
||||||
throw new IllegalArgumentException("invalid groupkey:" + groupKey);
|
throw new IllegalArgumentException("invalid groupkey:" + groupKey);
|
||||||
}
|
}
|
||||||
@ -116,9 +126,9 @@ public class GroupKey {
|
|||||||
static void urlEncode(String str, StringBuilder sb) {
|
static void urlEncode(String str, StringBuilder sb) {
|
||||||
for (int idx = 0; idx < str.length(); ++idx) {
|
for (int idx = 0; idx < str.length(); ++idx) {
|
||||||
char c = str.charAt(idx);
|
char c = str.charAt(idx);
|
||||||
if ('+' == c) {
|
if (PLUS == c) {
|
||||||
sb.append("%2B");
|
sb.append("%2B");
|
||||||
} else if ('%' == c) {
|
} else if (PERCENT == c) {
|
||||||
sb.append("%25");
|
sb.append("%25");
|
||||||
} else {
|
} else {
|
||||||
sb.append(c);
|
sb.append(c);
|
||||||
|
@ -51,7 +51,7 @@ public class ConfigFilterChainManager implements IConfigFilterChain {
|
|||||||
* @return this
|
* @return this
|
||||||
*/
|
*/
|
||||||
public synchronized ConfigFilterChainManager addFilter(IConfigFilter filter) {
|
public synchronized ConfigFilterChainManager addFilter(IConfigFilter filter) {
|
||||||
// 根据order大小顺序插入
|
// ordered by order value
|
||||||
int i = 0;
|
int i = 0;
|
||||||
while (i < this.filters.size()) {
|
while (i < this.filters.size()) {
|
||||||
IConfigFilter currentValue = this.filters.get(i);
|
IConfigFilter currentValue = this.filters.get(i);
|
||||||
|
@ -26,6 +26,7 @@ import static com.alibaba.nacos.client.config.common.ConfigConstants.CONTENT;
|
|||||||
import static com.alibaba.nacos.client.config.common.ConfigConstants.DATA_ID;
|
import static com.alibaba.nacos.client.config.common.ConfigConstants.DATA_ID;
|
||||||
import static com.alibaba.nacos.client.config.common.ConfigConstants.GROUP;
|
import static com.alibaba.nacos.client.config.common.ConfigConstants.GROUP;
|
||||||
import static com.alibaba.nacos.client.config.common.ConfigConstants.TENANT;
|
import static com.alibaba.nacos.client.config.common.ConfigConstants.TENANT;
|
||||||
|
import static com.alibaba.nacos.client.config.common.ConfigConstants.TYPE;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Config Request.
|
* Config Request.
|
||||||
@ -71,11 +72,11 @@ public class ConfigRequest implements IConfigRequest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public String getType() {
|
public String getType() {
|
||||||
return (String) param.get("type");
|
return (String) param.get(TYPE);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setType(String type) {
|
public void setType(String type) {
|
||||||
param.put("type", type);
|
param.put(TYPE, type);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -21,7 +21,6 @@ import com.alibaba.nacos.client.monitor.MetricsMonitor;
|
|||||||
import com.alibaba.nacos.common.http.HttpRestResult;
|
import com.alibaba.nacos.common.http.HttpRestResult;
|
||||||
import io.prometheus.client.Histogram;
|
import io.prometheus.client.Histogram;
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -31,6 +30,14 @@ import java.util.Map;
|
|||||||
*/
|
*/
|
||||||
public class MetricsHttpAgent implements HttpAgent {
|
public class MetricsHttpAgent implements HttpAgent {
|
||||||
|
|
||||||
|
private static final String GET = "GET";
|
||||||
|
|
||||||
|
private static final String POST = "POST";
|
||||||
|
|
||||||
|
private static final String DELETE = "DELETE";
|
||||||
|
|
||||||
|
private static final String DEFAULT_CODE = "NA";
|
||||||
|
|
||||||
private final HttpAgent httpAgent;
|
private final HttpAgent httpAgent;
|
||||||
|
|
||||||
public MetricsHttpAgent(HttpAgent httpAgent) {
|
public MetricsHttpAgent(HttpAgent httpAgent) {
|
||||||
@ -45,12 +52,10 @@ public class MetricsHttpAgent implements HttpAgent {
|
|||||||
@Override
|
@Override
|
||||||
public HttpRestResult<String> httpGet(String path, Map<String, String> headers, Map<String, String> paramValues,
|
public HttpRestResult<String> httpGet(String path, Map<String, String> headers, Map<String, String> paramValues,
|
||||||
String encode, long readTimeoutMs) throws Exception {
|
String encode, long readTimeoutMs) throws Exception {
|
||||||
Histogram.Timer timer = MetricsMonitor.getConfigRequestMonitor("GET", path, "NA");
|
Histogram.Timer timer = MetricsMonitor.getConfigRequestMonitor(GET, path, DEFAULT_CODE);
|
||||||
HttpRestResult<String> result;
|
HttpRestResult<String> result;
|
||||||
try {
|
try {
|
||||||
result = httpAgent.httpGet(path, headers, paramValues, encode, readTimeoutMs);
|
result = httpAgent.httpGet(path, headers, paramValues, encode, readTimeoutMs);
|
||||||
} catch (IOException e) {
|
|
||||||
throw e;
|
|
||||||
} finally {
|
} finally {
|
||||||
timer.observeDuration();
|
timer.observeDuration();
|
||||||
}
|
}
|
||||||
@ -61,12 +66,10 @@ public class MetricsHttpAgent implements HttpAgent {
|
|||||||
@Override
|
@Override
|
||||||
public HttpRestResult<String> httpPost(String path, Map<String, String> headers, Map<String, String> paramValues,
|
public HttpRestResult<String> httpPost(String path, Map<String, String> headers, Map<String, String> paramValues,
|
||||||
String encode, long readTimeoutMs) throws Exception {
|
String encode, long readTimeoutMs) throws Exception {
|
||||||
Histogram.Timer timer = MetricsMonitor.getConfigRequestMonitor("POST", path, "NA");
|
Histogram.Timer timer = MetricsMonitor.getConfigRequestMonitor(POST, path, DEFAULT_CODE);
|
||||||
HttpRestResult<String> result;
|
HttpRestResult<String> result;
|
||||||
try {
|
try {
|
||||||
result = httpAgent.httpPost(path, headers, paramValues, encode, readTimeoutMs);
|
result = httpAgent.httpPost(path, headers, paramValues, encode, readTimeoutMs);
|
||||||
} catch (IOException e) {
|
|
||||||
throw e;
|
|
||||||
} finally {
|
} finally {
|
||||||
timer.observeDuration();
|
timer.observeDuration();
|
||||||
}
|
}
|
||||||
@ -77,12 +80,10 @@ public class MetricsHttpAgent implements HttpAgent {
|
|||||||
@Override
|
@Override
|
||||||
public HttpRestResult<String> httpDelete(String path, Map<String, String> headers, Map<String, String> paramValues,
|
public HttpRestResult<String> httpDelete(String path, Map<String, String> headers, Map<String, String> paramValues,
|
||||||
String encode, long readTimeoutMs) throws Exception {
|
String encode, long readTimeoutMs) throws Exception {
|
||||||
Histogram.Timer timer = MetricsMonitor.getConfigRequestMonitor("DELETE", path, "NA");
|
Histogram.Timer timer = MetricsMonitor.getConfigRequestMonitor(DELETE, path, DEFAULT_CODE);
|
||||||
HttpRestResult<String> result;
|
HttpRestResult<String> result;
|
||||||
try {
|
try {
|
||||||
result = httpAgent.httpDelete(path, headers, paramValues, encode, readTimeoutMs);
|
result = httpAgent.httpDelete(path, headers, paramValues, encode, readTimeoutMs);
|
||||||
} catch (IOException e) {
|
|
||||||
throw e;
|
|
||||||
} finally {
|
} finally {
|
||||||
timer.observeDuration();
|
timer.observeDuration();
|
||||||
}
|
}
|
||||||
|
@ -49,6 +49,16 @@ public class ServerHttpAgent implements HttpAgent {
|
|||||||
private static final NacosRestTemplate NACOS_RESTTEMPLATE = ConfigHttpClientManager.getInstance()
|
private static final NacosRestTemplate NACOS_RESTTEMPLATE = ConfigHttpClientManager.getInstance()
|
||||||
.getNacosRestTemplate();
|
.getNacosRestTemplate();
|
||||||
|
|
||||||
|
private String accessKey;
|
||||||
|
|
||||||
|
private String secretKey;
|
||||||
|
|
||||||
|
private String encode;
|
||||||
|
|
||||||
|
private int maxRetry = 3;
|
||||||
|
|
||||||
|
final ServerListManager serverListMgr;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public HttpRestResult<String> httpGet(String path, Map<String, String> headers, Map<String, String> paramValues,
|
public HttpRestResult<String> httpGet(String path, Map<String, String> headers, Map<String, String> paramValues,
|
||||||
String encode, long readTimeoutMs) throws Exception {
|
String encode, long readTimeoutMs) throws Exception {
|
||||||
@ -272,15 +282,4 @@ public class ServerHttpAgent implements HttpAgent {
|
|||||||
SpasAdapter.freeCredentialInstance();
|
SpasAdapter.freeCredentialInstance();
|
||||||
LOGGER.info("{} do shutdown stop", className);
|
LOGGER.info("{} do shutdown stop", className);
|
||||||
}
|
}
|
||||||
|
|
||||||
private String accessKey;
|
|
||||||
|
|
||||||
private String secretKey;
|
|
||||||
|
|
||||||
private String encode;
|
|
||||||
|
|
||||||
private int maxRetry = 3;
|
|
||||||
|
|
||||||
final ServerListManager serverListMgr;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user