This is an automated email from the ASF dual-hosted git repository.
yiji pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-dubbo.git
The following commit(s) were added to refs/heads/master by this push:
new 383a37e replace hard coded values with constants and small refactor
(#3101)
383a37e is described below
commit 383a37e156154dca1ea7be3818ed615406f21c31
Author: Imteyaz Ahmed Khan <[email protected]>
AuthorDate: Sun Dec 30 10:30:32 2018 +0530
replace hard coded values with constants and small refactor (#3101)
* repalce hard coded values with constants and small refactor
* style issue fixed
---
.../java/org/apache/dubbo/common/Constants.java | 2 +
.../org/apache/dubbo/config/AbstractConfig.java | 6 +-
.../dubbo/config/AbstractInterfaceConfig.java | 87 +++++++++++-----------
.../apache/dubbo/config/AbstractMethodConfig.java | 8 +-
.../dubbo/config/AbstractReferenceConfig.java | 4 +-
.../org/apache/dubbo/config/ConsumerConfig.java | 4 +-
6 files changed, 56 insertions(+), 55 deletions(-)
diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/Constants.java
b/dubbo-common/src/main/java/org/apache/dubbo/common/Constants.java
index da75ebd..71cc04d 100644
--- a/dubbo-common/src/main/java/org/apache/dubbo/common/Constants.java
+++ b/dubbo-common/src/main/java/org/apache/dubbo/common/Constants.java
@@ -229,6 +229,8 @@ public class Constants {
public static final String PROTOCOL_KEY = "protocol";
+ public static final String DOBBO_PROTOCOL = DUBBO;
+
public static final String PROXY_KEY = "proxy";
public static final String WEIGHT_KEY = "weight";
diff --git
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractConfig.java
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractConfig.java
index a7b3e02..a719c74 100644
---
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractConfig.java
+++
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractConfig.java
@@ -272,7 +272,7 @@ public abstract class AbstractConfig implements
Serializable {
protected static void checkExtension(Class<?> type, String property,
String value) {
checkName(property, value);
- if (value != null && value.length() > 0
+ if (StringUtils.isNotEmpty(value)
&&
!ExtensionLoader.getExtensionLoader(type).hasExtension(value)) {
throw new IllegalStateException("No such extension " + value + "
for " + property + "/" + type.getName());
}
@@ -280,7 +280,7 @@ public abstract class AbstractConfig implements
Serializable {
protected static void checkMultiExtension(Class<?> type, String property,
String value) {
checkMultiName(property, value);
- if (value != null && value.length() > 0) {
+ if (StringUtils.isNotEmpty(value)) {
String[] values = value.split("\\s*[,]+\\s*");
for (String v : values) {
if (v.startsWith(Constants.REMOVE_VALUE_PREFIX)) {
@@ -338,7 +338,7 @@ public abstract class AbstractConfig implements
Serializable {
}
protected static void checkProperty(String property, String value, int
maxlength, Pattern pattern) {
- if (value == null || value.length() == 0) {
+ if (StringUtils.isEmpty(value)) {
return;
}
if (value.length() > maxlength) {
diff --git
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractInterfaceConfig.java
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractInterfaceConfig.java
index 6bcb775..984d452 100644
---
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractInterfaceConfig.java
+++
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractInterfaceConfig.java
@@ -20,6 +20,7 @@ import org.apache.dubbo.common.Constants;
import org.apache.dubbo.common.URL;
import org.apache.dubbo.common.Version;
import org.apache.dubbo.common.config.Environment;
+import org.apache.dubbo.common.utils.Assert;
import org.apache.dubbo.common.utils.ConfigUtils;
import org.apache.dubbo.common.utils.NetUtils;
import org.apache.dubbo.common.utils.ReflectUtils;
@@ -203,22 +204,14 @@ public abstract class AbstractInterfaceConfig extends
AbstractMethodConfig {
appendParameters(registryDataConfigurationMap, registryDataConfig);
for (RegistryConfig config : registries) {
String address = config.getAddress();
- if (address == null || address.length() == 0) {
+ if (StringUtils.isEmpty(address)) {
address = Constants.ANYHOST_VALUE;
}
- if (address.length() > 0 &&
!RegistryConfig.NO_AVAILABLE.equalsIgnoreCase(address)) {
+ if (!RegistryConfig.NO_AVAILABLE.equalsIgnoreCase(address)) {
Map<String, String> map = new HashMap<String, String>();
appendParameters(map, application);
appendParameters(map, config);
- map.put("path", RegistryService.class.getName());
- map.put("dubbo", Version.getProtocolVersion());
- map.put(Constants.TIMESTAMP_KEY,
String.valueOf(System.currentTimeMillis()));
- if (ConfigUtils.getPid() > 0) {
- map.put(Constants.PID_KEY,
String.valueOf(ConfigUtils.getPid()));
- }
- if (!map.containsKey("protocol")) {
- map.put("protocol", "dubbo");
- }
+ overrideParameters(map);
List<URL> urls = UrlUtils.parseURLs(address, map);
for (URL url : urls) {
@@ -241,7 +234,7 @@ public abstract class AbstractInterfaceConfig extends
AbstractMethodConfig {
checkMonitor();
Map<String, String> map = new HashMap<String, String>();
map.put(Constants.INTERFACE_KEY, MonitorService.class.getName());
- map.put("dubbo", Version.getProtocolVersion());
+ map.put(Constants.DOBBO_PROTOCOL, Version.getProtocolVersion());
map.put(Constants.TIMESTAMP_KEY,
String.valueOf(System.currentTimeMillis()));
if (ConfigUtils.getPid() > 0) {
map.put(Constants.PID_KEY, String.valueOf(ConfigUtils.getPid()));
@@ -266,17 +259,17 @@ public abstract class AbstractInterfaceConfig extends
AbstractMethodConfig {
if
(getExtensionLoader(MonitorFactory.class).hasExtension("logstat")) {
map.put(Constants.PROTOCOL_KEY, "logstat");
} else {
- map.put(Constants.PROTOCOL_KEY, "dubbo");
+ map.put(Constants.PROTOCOL_KEY, Constants.DOBBO_PROTOCOL);
}
}
return UrlUtils.parseURL(address, map);
} else if (Constants.REGISTRY_PROTOCOL.equals(monitor.getProtocol())
&& registryURL != null) {
- return
registryURL.setProtocol("dubbo").addParameter(Constants.PROTOCOL_KEY,
"registry").addParameterAndEncoded(Constants.REFER_KEY,
StringUtils.toQueryString(map));
+ return
registryURL.setProtocol(Constants.DOBBO_PROTOCOL).addParameter(Constants.PROTOCOL_KEY,
Constants.REGISTRY_PROTOCOL).addParameterAndEncoded(Constants.REFER_KEY,
StringUtils.toQueryString(map));
}
return null;
}
- final private URL loadMetadataReporterURL(boolean provider) {
+ private URL loadMetadataReporterURL(boolean provider) {
this.checkApplication();
String address = metadataReportConfig.getAddress();
if (address == null || address.length() == 0) {
@@ -300,9 +293,8 @@ public abstract class AbstractInterfaceConfig extends
AbstractMethodConfig {
protected void checkInterfaceAndMethods(Class<?> interfaceClass,
List<MethodConfig> methods) {
// interface cannot be null
- if (interfaceClass == null) {
- throw new IllegalStateException("interface not allow null!");
- }
+ Assert.notNull(interfaceClass, new IllegalStateException("interface
not allow null!"));
+
// to verify interfaceClass is an interface
if (!interfaceClass.isInterface()) {
throw new IllegalStateException("The interface class " +
interfaceClass + " is not a interface!");
@@ -314,16 +306,11 @@ public abstract class AbstractInterfaceConfig extends
AbstractMethodConfig {
methodBean.setServiceId(this.getId());
methodBean.refresh();
String methodName = methodBean.getName();
- if (methodName == null || methodName.length() == 0) {
+ if (StringUtils.isEmpty(methodName)) {
throw new IllegalStateException("<dubbo:method> name
attribute is required! Please check: <dubbo:service interface=\"" +
interfaceClass.getName() + "\" ... ><dubbo:method name=\"\" ...
/></<dubbo:reference>");
}
- boolean hasMethod = false;
- for (java.lang.reflect.Method method :
interfaceClass.getMethods()) {
- if (method.getName().equals(methodName)) {
- hasMethod = true;
- break;
- }
- }
+
+ boolean hasMethod =
Arrays.stream(interfaceClass.getMethods()).anyMatch(method ->
method.getName().equals(methodName));
if (!hasMethod) {
throw new IllegalStateException("The interface " +
interfaceClass.getName()
+ " not found method " + methodName);
@@ -386,6 +373,16 @@ public abstract class AbstractInterfaceConfig extends
AbstractMethodConfig {
}
}
+ private void overrideParameters(Map<String, String> map) {
+ map.put(Constants.PATH_KEY, RegistryService.class.getName());
+ map.put(Constants.DOBBO_PROTOCOL, Version.getProtocolVersion());
+ map.put(Constants.TIMESTAMP_KEY,
String.valueOf(System.currentTimeMillis()));
+ if (ConfigUtils.getPid() > 0) {
+ map.put(Constants.PID_KEY, String.valueOf(ConfigUtils.getPid()));
+ }
+ map.putIfAbsent(Constants.PROTOCOL_KEY, Constants.DOBBO_PROTOCOL);
+ }
+
private void convertRegistryIdsToRegistries() {
if (StringUtils.isEmpty(registryIds) && (registries == null ||
registries.isEmpty())) {
Set<String> configedRegistries = new HashSet<>();
@@ -468,16 +465,6 @@ public abstract class AbstractInterfaceConfig extends
AbstractMethodConfig {
/**
* @param local
- * @deprecated Replace to <code>setStub(String)</code>
- */
- @Deprecated
- public void setLocal(String local) {
- checkName("local", local);
- this.local = local;
- }
-
- /**
- * @param local
* @deprecated Replace to <code>setStub(Boolean)</code>
*/
@Deprecated
@@ -489,13 +476,18 @@ public abstract class AbstractInterfaceConfig extends
AbstractMethodConfig {
}
}
- public String getStub() {
- return stub;
+ /**
+ * @param local
+ * @deprecated Replace to <code>setStub(String)</code>
+ */
+ @Deprecated
+ public void setLocal(String local) {
+ checkName("local", local);
+ this.local = local;
}
- public void setStub(String stub) {
- checkName("stub", stub);
- this.stub = stub;
+ public String getStub() {
+ return stub;
}
public void setStub(Boolean stub) {
@@ -506,6 +498,11 @@ public abstract class AbstractInterfaceConfig extends
AbstractMethodConfig {
}
}
+ public void setStub(String stub) {
+ checkName("stub", stub);
+ this.stub = stub;
+ }
+
public String getCluster() {
return cluster;
}
@@ -609,14 +606,14 @@ public abstract class AbstractInterfaceConfig extends
AbstractMethodConfig {
return monitor;
}
- public void setMonitor(MonitorConfig monitor) {
- this.monitor = monitor;
- }
-
public void setMonitor(String monitor) {
this.monitor = new MonitorConfig(monitor);
}
+ public void setMonitor(MonitorConfig monitor) {
+ this.monitor = monitor;
+ }
+
public String getOwner() {
return owner;
}
diff --git
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractMethodConfig.java
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractMethodConfig.java
index 5f5ed77..746ac6b 100644
---
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractMethodConfig.java
+++
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractMethodConfig.java
@@ -98,7 +98,7 @@ public abstract class AbstractMethodConfig extends
AbstractConfig {
}
public void setLoadbalance(String loadbalance) {
- checkExtension(LoadBalance.class, "loadbalance", loadbalance);
+ checkExtension(LoadBalance.class, Constants.LOADBALANCE_KEY,
loadbalance);
this.loadbalance = loadbalance;
}
@@ -137,11 +137,11 @@ public abstract class AbstractMethodConfig extends
AbstractConfig {
}
if (mock.startsWith(Constants.RETURN_PREFIX) ||
mock.startsWith(Constants.THROW_PREFIX + " ")) {
- checkLength("mock", mock);
+ checkLength(Constants.MOCK_KEY, mock);
} else if (mock.startsWith(Constants.FAIL_PREFIX) ||
mock.startsWith(Constants.FORCE_PREFIX)) {
- checkNameHasSymbol("mock", mock);
+ checkNameHasSymbol(Constants.MOCK_KEY, mock);
} else {
- checkName("mock", mock);
+ checkName(Constants.MOCK_KEY, mock);
}
this.mock = mock;
}
diff --git
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractReferenceConfig.java
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractReferenceConfig.java
index 552ccf1..12af7ca 100644
---
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractReferenceConfig.java
+++
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractReferenceConfig.java
@@ -185,7 +185,7 @@ public abstract class AbstractReferenceConfig extends
AbstractInterfaceConfig {
}
public void setVersion(String version) {
- checkKey("version", version);
+ checkKey(Constants.VERSION_KEY, version);
this.version = version;
}
@@ -194,7 +194,7 @@ public abstract class AbstractReferenceConfig extends
AbstractInterfaceConfig {
}
public void setGroup(String group) {
- checkKey("group", group);
+ checkKey(Constants.GROUP_KEY, group);
this.group = group;
}
}
diff --git
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ConsumerConfig.java
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ConsumerConfig.java
index 6d592bc..4b482e7 100644
---
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ConsumerConfig.java
+++
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ConsumerConfig.java
@@ -16,6 +16,8 @@
*/
package org.apache.dubbo.config;
+import org.apache.dubbo.common.utils.StringUtils;
+
/**
* ConsumerConfig
*
@@ -48,7 +50,7 @@ public class ConsumerConfig extends AbstractReferenceConfig {
super.setTimeout(timeout);
String rmiTimeout =
System.getProperty("sun.rmi.transport.tcp.responseTimeout");
if (timeout != null && timeout > 0
- && (rmiTimeout == null || rmiTimeout.length() == 0)) {
+ && (StringUtils.isEmpty(rmiTimeout))) {
System.setProperty("sun.rmi.transport.tcp.responseTimeout",
String.valueOf(timeout));
}
}