From fe3d34588348122c2cb5af36541251b51d67e751 Mon Sep 17 00:00:00 2001 From: Ian Luo Date: Sun, 12 May 2019 16:33:35 +0800 Subject: [PATCH] [DUBBO-3137]: step3 - start using CommonConstants (#4030) * [DUBBO-3137]: start to use org.apache.dubbo.common.constants.CommonConstants * remove useless imports * remove useless imports * remove unused imports * remove unused imports * remove unused imports * remove unused imports * remove unused imports * use static import --- .../dubbo/rpc/cluster/Configurator.java | 4 +- .../configurator/AbstractConfigurator.java | 50 +++--- .../configurator/parser/ConfigParser.java | 4 +- .../ConsistentHashLoadBalance.java | 5 +- .../router/condition/ConditionRouter.java | 11 +- .../router/condition/config/AppRouter.java | 4 +- .../rpc/cluster/router/tag/TagRouter.java | 3 +- .../rpc/cluster/support/ClusterUtils.java | 63 +++++--- .../support/ForkingClusterInvoker.java | 5 +- .../support/MergeableClusterInvoker.java | 8 +- .../support/RegistryAwareClusterInvoker.java | 4 +- .../configurator/parser/ConfigParserTest.java | 29 ++-- .../cluster/directory/MockDirInvocation.java | 15 +- .../rpc/cluster/support/ClusterUtilsTest.java | 71 ++++---- .../support/MergeableClusterInvokerTest.java | 9 +- .../org/apache/dubbo/common/Constants.java | 151 +----------------- .../org/apache/dubbo/common/Parameters.java | 11 +- .../java/org/apache/dubbo/common/URL.java | 37 +++-- .../org/apache/dubbo/common/URLBuilder.java | 4 +- .../apache/dubbo/common/bytecode/Proxy.java | 5 +- .../common/config/ConfigurationUtils.java | 4 +- .../dubbo/common/config/Environment.java | 4 +- .../common/constants/RegistryConstants.java | 25 --- .../common/extension/ExtensionLoader.java | 17 +- .../dubbo/common/threadpool/ThreadPool.java | 7 +- .../support/AbortPolicyWithReport.java | 5 +- .../support/cached/CachedThreadPool.java | 21 ++- .../support/eager/EagerThreadPool.java | 21 ++- .../support/fixed/FixedThreadPool.java | 14 +- .../support/limited/LimitedThreadPool.java | 18 ++- .../dubbo/common/utils/ConfigUtils.java | 24 +-- .../dubbo/common/utils/ExecutorUtil.java | 9 +- .../apache/dubbo/common/utils/NetUtils.java | 18 ++- .../dubbo/common/utils/StringUtils.java | 17 +- .../apache/dubbo/common/utils/UrlUtils.java | 73 +++++---- .../common/extension/ExtensionLoaderTest.java | 12 +- .../support/cached/CachedThreadPoolTest.java | 22 +-- .../support/eager/EagerThreadPoolTest.java | 21 ++- .../support/fixed/FixedThreadPoolTest.java | 19 ++- .../limited/LimitedThreadPoolTest.java | 19 ++- .../dubbo/common/utils/CIDRUtilsTest.java | 3 - .../dubbo/common/utils/ConfigUtilsTest.java | 13 +- .../dubbo/common/utils/ExecutorUtilTest.java | 9 +- .../dubbo/common/utils/StringUtilsTest.java | 13 +- .../dubbo/common/utils/UrlUtilsTest.java | 18 ++- .../cache/support/AbstractCacheFactory.java | 5 +- .../dubbo/config/ApplicationConfigTest.java | 11 +- .../apache/dubbo/filter/LegacyInvocation.java | 18 ++- .../apache/dubbo/service/MockInvocation.java | 15 +- .../apache/dubbo/config/AbstractConfig.java | 13 +- .../dubbo/config/AbstractInterfaceConfig.java | 40 +++-- .../dubbo/config/AbstractReferenceConfig.java | 7 +- .../dubbo/config/AbstractServiceConfig.java | 7 +- .../dubbo/config/ApplicationConfig.java | 9 +- .../dubbo/config/ConfigCenterConfig.java | 12 +- .../dubbo/config/MetadataReportConfig.java | 6 +- .../org/apache/dubbo/config/MethodConfig.java | 3 +- .../apache/dubbo/config/ProtocolConfig.java | 4 +- .../apache/dubbo/config/ProviderConfig.java | 4 +- .../apache/dubbo/config/ReferenceConfig.java | 28 ++-- .../apache/dubbo/config/RegistryConfig.java | 7 +- .../apache/dubbo/config/ServiceConfig.java | 31 ++-- .../dubbo/config/context/ConfigManager.java | 2 +- .../config/AbstractInterfaceConfigTest.java | 7 +- .../dubbo/config/ApplicationConfigTest.java | 8 +- .../dubbo/config/ServiceConfigTest.java | 18 ++- .../dubbo/config/mock/MockRegistry.java | 4 +- .../dubbo/config/spring/ReferenceBean.java | 7 +- .../dubbo/config/spring/ServiceBean.java | 20 +-- .../annotation/AnnotationBeanNameBuilder.java | 8 +- .../schema/DubboBeanDefinitionParser.java | 5 +- .../config/spring/SimpleRegistryExporter.java | 5 +- .../annotation/ReferenceBeanBuilderTest.java | 1 - .../apollo/ApolloDynamicConfiguration.java | 7 +- .../consul/ConsulDynamicConfiguration.java | 2 +- .../etcd/EtcdDynamicConfiguration.java | 2 +- .../nacos/NacosDynamicConfiguration.java | 20 +-- .../NacosDynamicConfigurationFactory.java | 7 +- .../java/org/apache/dubbo/container/Main.java | 5 +- .../dubbo/cache/filter/CacheFilter.java | 19 +-- .../cache/support/AbstractCacheFactory.java | 5 +- .../dubbo/cache/support/jcache/JCache.java | 5 +- .../validation/filter/ValidationFilter.java | 3 +- .../identifier/MetadataIdentifier.java | 24 +-- .../integration/MetadataReportService.java | 26 ++- .../support/AbstractMetadataReport.java | 14 +- .../identifier/MetadataIdentifierTest.java | 16 +- .../store/test/JTestMetadataReport4Test.java | 5 +- .../support/AbstractMetadataReportTest.java | 8 +- .../store/etcd/EtcdMetadataReport.java | 14 +- .../store/etcd/EtcdMetadataReportTest.java | 19 ++- .../store/redis/RedisMetadataReport.java | 6 +- .../store/redis/RedisMetadataReportTest.java | 10 +- .../zookeeper/ZookeeperMetadataReport.java | 14 +- .../ZookeeperMetadataReportTest.java | 8 +- .../support/AbstractMonitorFactory.java | 5 +- .../dubbo/monitor/support/MonitorFilter.java | 25 ++- .../monitor/support/MonitorFilterTest.java | 8 +- .../dubbo/monitor/dubbo/DubboMonitor.java | 7 +- .../monitor/dubbo/DubboMonitorFactory.java | 2 +- .../dubbo/monitor/dubbo/MetricsFilter.java | 30 ++-- .../monitor/dubbo/MetricsFilterTest.java | 63 ++++---- .../AbstractConfiguratorListener.java | 4 +- .../integration/RegistryDirectory.java | 27 ++-- .../integration/RegistryProtocol.java | 48 ++++-- .../registry/support/AbstractRegistry.java | 8 +- .../support/AbstractRegistryFactory.java | 4 +- .../registry/support/FailbackRegistry.java | 4 +- .../dubbo/registry/consul/ConsulRegistry.java | 10 +- .../registry/dubbo/DubboRegistryFactory.java | 15 +- .../registry/dubbo/RegistryDirectoryTest.java | 26 +-- .../registry/dubbo/RegistryProtocolTest.java | 2 +- .../dubbo/SimpleRegistryExporter.java | 5 +- .../dubbo/registry/etcd/EtcdRegistry.java | 41 ++--- .../dubbo/registry/etcd/EtcdRegistryTest.java | 18 ++- .../registry/multicast/MulticastRegistry.java | 12 +- .../dubbo/registry/nacos/NacosRegistry.java | 19 ++- .../dubbo/registry/redis/RedisRegistry.java | 46 +++--- .../dubbo/registry/sofa/SofaRegistry.java | 29 ++-- .../registry/zookeeper/ZookeeperRegistry.java | 38 +++-- .../exchange/support/DefaultFuture.java | 8 +- .../support/header/HeaderExchangeChannel.java | 6 +- .../telnet/support/TelnetHandlerAdapter.java | 4 +- .../support/command/StatusTelnetHandler.java | 5 +- .../remoting/transport/AbstractClient.java | 11 +- .../remoting/transport/AbstractCodec.java | 7 +- .../remoting/transport/AbstractEndpoint.java | 10 +- .../remoting/transport/AbstractServer.java | 13 +- .../dispatcher/WrappedChannelHandler.java | 8 +- .../ConnectionOrderedChannelHandler.java | 6 +- .../dubbo/remoting/ChanelHandlerTest.java | 7 +- .../remoting/PerformanceClientCloseTest.java | 9 +- .../remoting/PerformanceClientFixedTest.java | 8 +- .../dubbo/remoting/PerformanceClientTest.java | 5 +- .../dubbo/remoting/PerformanceServerTest.java | 16 +- .../codec/DeprecatedTelnetCodec.java | 6 +- .../remoting/etcd/jetcd/JEtcdClient.java | 7 +- .../etcd/jetcd/JEtcdClientWrapper.java | 8 +- .../etcd/support/AbstractEtcdClient.java | 4 +- .../transport/grizzly/GrizzlyChannel.java | 6 +- .../transport/grizzly/GrizzlyClient.java | 8 +- .../transport/grizzly/GrizzlyServer.java | 14 +- .../remoting/http/jetty/JettyHttpServer.java | 6 +- .../http/tomcat/TomcatHttpServer.java | 6 +- .../remoting/transport/mina/MinaChannel.java | 6 +- .../remoting/transport/mina/MinaServer.java | 7 +- .../transport/netty/NettyChannel.java | 6 +- .../remoting/transport/netty/NettyServer.java | 5 +- .../transport/netty4/NettyChannel.java | 6 +- .../transport/netty4/NettyServer.java | 4 +- .../curator/CuratorZookeeperClient.java | 5 +- .../support/AbstractZookeeperTransporter.java | 7 +- .../AbstractZookeeperTransporterTest.java | 4 +- .../java/org/apache/dubbo/rpc/RpcContext.java | 6 +- .../org/apache/dubbo/rpc/RpcInvocation.java | 29 ++-- .../dubbo/rpc/filter/AccessLogFilter.java | 10 +- .../dubbo/rpc/filter/ActiveLimitFilter.java | 7 +- .../dubbo/rpc/filter/ClassLoaderFilter.java | 4 +- .../rpc/filter/ConsumerContextFilter.java | 4 +- .../dubbo/rpc/filter/ContextFilter.java | 21 ++- .../dubbo/rpc/filter/DeprecatedFilter.java | 3 +- .../apache/dubbo/rpc/filter/EchoFilter.java | 3 +- .../dubbo/rpc/filter/ExceptionFilter.java | 4 +- .../dubbo/rpc/filter/ExecuteLimitFilter.java | 3 +- .../dubbo/rpc/filter/GenericFilter.java | 3 +- .../dubbo/rpc/filter/GenericImplFilter.java | 3 +- .../dubbo/rpc/filter/TimeoutFilter.java | 4 +- .../apache/dubbo/rpc/filter/TokenFilter.java | 3 +- .../dubbo/rpc/filter/TpsLimitFilter.java | 3 +- .../dubbo/rpc/protocol/AbstractProtocol.java | 7 +- .../rpc/protocol/AbstractProxyProtocol.java | 8 +- .../rpc/protocol/ProtocolFilterWrapper.java | 5 +- .../dubbo/rpc/proxy/AbstractProxyFactory.java | 4 +- .../dubbo/rpc/support/ProtocolUtils.java | 7 +- .../rpc/filter/tps/DefaultTPSLimiterTest.java | 14 +- .../rpc/filter/tps/TpsLimitFilterTest.java | 9 +- .../dubbo/rpc/support/MockInvocation.java | 15 +- .../protocol/dubbo/CallbackServiceCodec.java | 19 ++- .../protocol/dubbo/ChannelWrappedInvoker.java | 11 +- .../dubbo/DecodeableRpcInvocation.java | 6 +- .../dubbo/rpc/protocol/dubbo/DubboCodec.java | 6 +- .../rpc/protocol/dubbo/DubboInvoker.java | 17 +- .../rpc/protocol/dubbo/DubboProtocol.java | 19 ++- .../protocol/dubbo/filter/FutureFilter.java | 3 +- .../protocol/dubbo/filter/TraceFilter.java | 4 +- .../rpc/protocol/hessian/HessianProtocol.java | 5 +- .../dubbo/rpc/protocol/http/HttpProtocol.java | 10 +- .../rpc/protocol/injvm/InjvmInvoker.java | 5 +- .../rpc/protocol/injvm/InjvmProtocolTest.java | 15 +- .../rpc/protocol/redis/RedisProtocol.java | 6 +- .../rpc/protocol/rest/BaseRestServer.java | 4 +- .../dubbo/rpc/protocol/rest/NettyServer.java | 8 +- .../dubbo/rpc/protocol/rest/RestProtocol.java | 17 +- .../dubbo/rpc/protocol/rmi/RmiProtocol.java | 3 +- .../rpc/protocol/thrift/ThriftCodec.java | 15 +- .../rpc/protocol/thrift/ThriftInvoker.java | 16 +- .../rpc/protocol/thrift/ThriftProtocol.java | 5 +- .../rpc/protocol/thrift/ThriftCodecTest.java | 13 +- .../webservice/WebServiceProtocol.java | 6 +- 199 files changed, 1500 insertions(+), 1089 deletions(-) diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/Configurator.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/Configurator.java index b85a046131..9876034844 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/Configurator.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/Configurator.java @@ -28,6 +28,8 @@ import java.util.List; import java.util.Map; import java.util.Optional; +import static org.apache.dubbo.common.constants.CommonConstants.ANYHOST_KEY; + /** * Configurator. (SPI, Prototype, ThreadSafe) * @@ -82,7 +84,7 @@ public interface Configurator extends Comparable { } Map override = new HashMap<>(url.getParameters()); //The anyhost parameter of override may be added automatically, it can't change the judgement of changing url - override.remove(Constants.ANYHOST_KEY); + override.remove(ANYHOST_KEY); if (override.size() == 0) { configurators.clear(); continue; diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/configurator/AbstractConfigurator.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/configurator/AbstractConfigurator.java index 15665a5b74..0ce3e00276 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/configurator/AbstractConfigurator.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/configurator/AbstractConfigurator.java @@ -27,6 +27,16 @@ import java.util.HashSet; import java.util.Map; import java.util.Set; +import static org.apache.dubbo.common.constants.CommonConstants.ANYHOST_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.ANY_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER; +import static org.apache.dubbo.common.constants.CommonConstants.ENABLED_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER; +import static org.apache.dubbo.common.constants.CommonConstants.SIDE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * AbstractOverrideConfigurator */ @@ -49,7 +59,7 @@ public abstract class AbstractConfigurator implements Configurator { @Override public URL configure(URL url) { // If override url is not enabled or is invalid, just return. - if (!configuratorUrl.getParameter(Constants.ENABLED_KEY, true) || configuratorUrl.getHost() == null || url == null || url.getHost() == null) { + if (!configuratorUrl.getParameter(ENABLED_KEY, true) || configuratorUrl.getHost() == null || url == null || url.getHost() == null) { return url; } /** @@ -57,11 +67,11 @@ public abstract class AbstractConfigurator implements Configurator { */ String apiVersion = configuratorUrl.getParameter(Constants.CONFIG_VERSION_KEY); if (StringUtils.isNotEmpty(apiVersion)) { - String currentSide = url.getParameter(Constants.SIDE_KEY); - String configuratorSide = configuratorUrl.getParameter(Constants.SIDE_KEY); - if (currentSide.equals(configuratorSide) && Constants.CONSUMER.equals(configuratorSide) && 0 == configuratorUrl.getPort()) { + String currentSide = url.getParameter(SIDE_KEY); + String configuratorSide = configuratorUrl.getParameter(SIDE_KEY); + if (currentSide.equals(configuratorSide) && CONSUMER.equals(configuratorSide) && 0 == configuratorUrl.getPort()) { url = configureIfMatch(NetUtils.getLocalHost(), url); - } else if (currentSide.equals(configuratorSide) && Constants.PROVIDER.equals(configuratorSide) && url.getPort() == configuratorUrl.getPort()) { + } else if (currentSide.equals(configuratorSide) && PROVIDER.equals(configuratorSide) && url.getPort() == configuratorUrl.getPort()) { url = configureIfMatch(url.getHost(), url); } } @@ -84,41 +94,41 @@ public abstract class AbstractConfigurator implements Configurator { } else {// override url don't have a port, means the ip override url specify is a consumer address or 0.0.0.0 // 1.If it is a consumer ip address, the intention is to control a specific consumer instance, it must takes effect at the consumer side, any provider received this override url should ignore; // 2.If the ip is 0.0.0.0, this override url can be used on consumer, and also can be used on provider - if (url.getParameter(Constants.SIDE_KEY, Constants.PROVIDER).equals(Constants.CONSUMER)) { + if (url.getParameter(SIDE_KEY, PROVIDER).equals(CONSUMER)) { return configureIfMatch(NetUtils.getLocalHost(), url);// NetUtils.getLocalHost is the ip address consumer registered to registry. - } else if (url.getParameter(Constants.SIDE_KEY, Constants.CONSUMER).equals(Constants.PROVIDER)) { - return configureIfMatch(Constants.ANYHOST_VALUE, url);// take effect on all providers, so address must be 0.0.0.0, otherwise it won't flow to this if branch + } else if (url.getParameter(SIDE_KEY, CONSUMER).equals(PROVIDER)) { + return configureIfMatch(ANYHOST_VALUE, url);// take effect on all providers, so address must be 0.0.0.0, otherwise it won't flow to this if branch } } return url; } private URL configureIfMatch(String host, URL url) { - if (Constants.ANYHOST_VALUE.equals(configuratorUrl.getHost()) || host.equals(configuratorUrl.getHost())) { + if (ANYHOST_VALUE.equals(configuratorUrl.getHost()) || host.equals(configuratorUrl.getHost())) { // TODO, to support wildcards String providers = configuratorUrl.getParameter(Constants.OVERRIDE_PROVIDERS_KEY); - if (StringUtils.isEmpty(providers) || providers.contains(url.getAddress()) || providers.contains(Constants.ANYHOST_VALUE)) { - String configApplication = configuratorUrl.getParameter(Constants.APPLICATION_KEY, + if (StringUtils.isEmpty(providers) || providers.contains(url.getAddress()) || providers.contains(ANYHOST_VALUE)) { + String configApplication = configuratorUrl.getParameter(APPLICATION_KEY, configuratorUrl.getUsername()); - String currentApplication = url.getParameter(Constants.APPLICATION_KEY, url.getUsername()); - if (configApplication == null || Constants.ANY_VALUE.equals(configApplication) + String currentApplication = url.getParameter(APPLICATION_KEY, url.getUsername()); + if (configApplication == null || ANY_VALUE.equals(configApplication) || configApplication.equals(currentApplication)) { Set conditionKeys = new HashSet(); conditionKeys.add(Constants.CATEGORY_KEY); conditionKeys.add(RemotingConstants.CHECK_KEY); conditionKeys.add(Constants.DYNAMIC_KEY); - conditionKeys.add(Constants.ENABLED_KEY); - conditionKeys.add(Constants.GROUP_KEY); - conditionKeys.add(Constants.VERSION_KEY); - conditionKeys.add(Constants.APPLICATION_KEY); - conditionKeys.add(Constants.SIDE_KEY); + conditionKeys.add(ENABLED_KEY); + conditionKeys.add(GROUP_KEY); + conditionKeys.add(VERSION_KEY); + conditionKeys.add(APPLICATION_KEY); + conditionKeys.add(SIDE_KEY); conditionKeys.add(Constants.CONFIG_VERSION_KEY); for (Map.Entry entry : configuratorUrl.getParameters().entrySet()) { String key = entry.getKey(); String value = entry.getValue(); - if (key.startsWith("~") || Constants.APPLICATION_KEY.equals(key) || Constants.SIDE_KEY.equals(key)) { + if (key.startsWith("~") || APPLICATION_KEY.equals(key) || SIDE_KEY.equals(key)) { conditionKeys.add(key); - if (value != null && !Constants.ANY_VALUE.equals(value) + if (value != null && !ANY_VALUE.equals(value) && !value.equals(url.getParameter(key.startsWith("~") ? key.substring(1) : key))) { return url; } diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/configurator/parser/ConfigParser.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/configurator/parser/ConfigParser.java index 76d6f2db3a..962e52f887 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/configurator/parser/ConfigParser.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/configurator/parser/ConfigParser.java @@ -31,6 +31,8 @@ import java.util.ArrayList; import java.util.List; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.ANYHOST_VALUE; + /** * Config parser */ @@ -194,7 +196,7 @@ public class ConfigParser { addresses = new ArrayList<>(); } if (addresses.size() == 0) { - addresses.add(Constants.ANYHOST_VALUE); + addresses.add(ANYHOST_VALUE); } return addresses; } diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/loadbalance/ConsistentHashLoadBalance.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/loadbalance/ConsistentHashLoadBalance.java index 75ebc8a768..b48bc4ab32 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/loadbalance/ConsistentHashLoadBalance.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/loadbalance/ConsistentHashLoadBalance.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.rpc.cluster.loadbalance; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.rpc.Invocation; import org.apache.dubbo.rpc.Invoker; @@ -31,6 +30,8 @@ import java.util.TreeMap; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; + /** * ConsistentHashLoadBalance */ @@ -78,7 +79,7 @@ public class ConsistentHashLoadBalance extends AbstractLoadBalance { this.identityHashCode = identityHashCode; URL url = invokers.get(0).getUrl(); this.replicaNumber = url.getMethodParameter(methodName, HASH_NODES, 160); - String[] index = Constants.COMMA_SPLIT_PATTERN.split(url.getMethodParameter(methodName, HASH_ARGUMENTS, "0")); + String[] index = COMMA_SPLIT_PATTERN.split(url.getMethodParameter(methodName, HASH_ARGUMENTS, "0")); argumentIndex = new int[index.length]; for (int i = 0; i < index.length; i++) { argumentIndex[i] = Integer.parseInt(index[i]); diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/condition/ConditionRouter.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/condition/ConditionRouter.java index 1cd7536a92..ab75f894d7 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/condition/ConditionRouter.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/condition/ConditionRouter.java @@ -39,6 +39,11 @@ import java.util.Set; import java.util.regex.Matcher; import java.util.regex.Pattern; +import static org.apache.dubbo.common.constants.CommonConstants.METHOD_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_KEY_PREFIX; +import static org.apache.dubbo.common.constants.CommonConstants.ENABLED_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.METHODS_KEY; + /** * ConditionRouter * @@ -63,7 +68,7 @@ public class ConditionRouter extends AbstractRouter { this.url = url; this.priority = url.getParameter(Constants.PRIORITY_KEY, 0); this.force = url.getParameter(Constants.FORCE_KEY, false); - this.enabled = url.getParameter(Constants.ENABLED_KEY, true); + this.enabled = url.getParameter(ENABLED_KEY, true); init(url.getParameterAndDecoded(Constants.RULE_KEY)); } @@ -219,7 +224,7 @@ public class ConditionRouter extends AbstractRouter { String key = matchPair.getKey(); String sampleValue; //get real invoked method name from invocation - if (invocation != null && (Constants.METHOD_KEY.equals(key) || Constants.METHODS_KEY.equals(key))) { + if (invocation != null && (METHOD_KEY.equals(key) || METHODS_KEY.equals(key))) { sampleValue = invocation.getMethodName(); } else if (Constants.ADDRESS_KEY.equals(key)) { sampleValue = url.getAddress(); @@ -228,7 +233,7 @@ public class ConditionRouter extends AbstractRouter { } else { sampleValue = sample.get(key); if (sampleValue == null) { - sampleValue = sample.get(Constants.DEFAULT_KEY_PREFIX + key); + sampleValue = sample.get(DEFAULT_KEY_PREFIX + key); } } if (sampleValue != null) { diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/condition/config/AppRouter.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/condition/config/AppRouter.java index 31a5df174c..b334e377bb 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/condition/config/AppRouter.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/condition/config/AppRouter.java @@ -16,8 +16,8 @@ */ package org.apache.dubbo.rpc.cluster.router.condition.config; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.configcenter.DynamicConfiguration; /** @@ -31,7 +31,7 @@ public class AppRouter extends ListenableRouter { private static final int APP_ROUTER_DEFAULT_PRIORITY = 150; public AppRouter(DynamicConfiguration configuration, URL url) { - super(configuration, url, url.getParameter(Constants.APPLICATION_KEY)); + super(configuration, url, url.getParameter(CommonConstants.APPLICATION_KEY)); this.priority = APP_ROUTER_DEFAULT_PRIORITY; } } diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/tag/TagRouter.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/tag/TagRouter.java index d03efca6e4..b30f3d5ed2 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/tag/TagRouter.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/tag/TagRouter.java @@ -18,6 +18,7 @@ package org.apache.dubbo.rpc.cluster.router.tag; import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; import org.apache.dubbo.common.utils.CollectionUtils; @@ -232,7 +233,7 @@ public class TagRouter extends AbstractRouter implements ConfigurationListener { Invoker invoker = invokers.get(0); URL url = invoker.getUrl(); - String providerApplication = url.getParameter(Constants.REMOTE_APPLICATION_KEY); + String providerApplication = url.getParameter(CommonConstants.REMOTE_APPLICATION_KEY); if (StringUtils.isEmpty(providerApplication)) { logger.error("TagRouter must getConfig from or subscribe to a specific application, but the application " + diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/ClusterUtils.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/ClusterUtils.java index 6c58740eb8..b45ad11d50 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/ClusterUtils.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/ClusterUtils.java @@ -26,6 +26,21 @@ import java.util.HashSet; import java.util.Map; import java.util.Set; +import static org.apache.dubbo.common.constants.CommonConstants.ALIVE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.CORE_THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_KEY_PREFIX; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.METHODS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.QUEUES_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.RELEASE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.REMOTE_APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREADPOOL_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREAD_NAME_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMESTAMP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * ClusterUtils */ @@ -42,29 +57,29 @@ public class ClusterUtils { map.putAll(remoteMap); // Remove configurations from provider, some items should be affected by provider. - map.remove(Constants.THREAD_NAME_KEY); - map.remove(Constants.DEFAULT_KEY_PREFIX + Constants.THREAD_NAME_KEY); + map.remove(THREAD_NAME_KEY); + map.remove(DEFAULT_KEY_PREFIX + THREAD_NAME_KEY); - map.remove(Constants.THREADPOOL_KEY); - map.remove(Constants.DEFAULT_KEY_PREFIX + Constants.THREADPOOL_KEY); + map.remove(THREADPOOL_KEY); + map.remove(DEFAULT_KEY_PREFIX + THREADPOOL_KEY); - map.remove(Constants.CORE_THREADS_KEY); - map.remove(Constants.DEFAULT_KEY_PREFIX + Constants.CORE_THREADS_KEY); + map.remove(CORE_THREADS_KEY); + map.remove(DEFAULT_KEY_PREFIX + CORE_THREADS_KEY); - map.remove(Constants.THREADS_KEY); - map.remove(Constants.DEFAULT_KEY_PREFIX + Constants.THREADS_KEY); + map.remove(THREADS_KEY); + map.remove(DEFAULT_KEY_PREFIX + THREADS_KEY); - map.remove(Constants.QUEUES_KEY); - map.remove(Constants.DEFAULT_KEY_PREFIX + Constants.QUEUES_KEY); + map.remove(QUEUES_KEY); + map.remove(DEFAULT_KEY_PREFIX + QUEUES_KEY); - map.remove(Constants.ALIVE_KEY); - map.remove(Constants.DEFAULT_KEY_PREFIX + Constants.ALIVE_KEY); + map.remove(ALIVE_KEY); + map.remove(DEFAULT_KEY_PREFIX + ALIVE_KEY); map.remove(RemotingConstants.TRANSPORTER_KEY); - map.remove(Constants.DEFAULT_KEY_PREFIX + RemotingConstants.TRANSPORTER_KEY); + map.remove(DEFAULT_KEY_PREFIX + RemotingConstants.TRANSPORTER_KEY); map.remove(Constants.ASYNC_KEY); - map.remove(Constants.DEFAULT_KEY_PREFIX + Constants.ASYNC_KEY); + map.remove(DEFAULT_KEY_PREFIX + Constants.ASYNC_KEY); // remove method async entry. Set methodAsyncKey = new HashSet<>(); @@ -82,28 +97,28 @@ public class ClusterUtils { // All providers come to here have been filtered by group, which means only those providers that have the exact same group value with the consumer could come to here. // So, generally, we don't need to care about the group value here. // But when comes to group merger, there is an exception, the consumer group may be '*' while the provider group can be empty or any other values. - String remoteGroup = map.get(Constants.GROUP_KEY); - String remoteRelease = map.get(Constants.RELEASE_KEY); + String remoteGroup = map.get(GROUP_KEY); + String remoteRelease = map.get(RELEASE_KEY); map.putAll(localMap); if (StringUtils.isNotEmpty(remoteGroup)) { - map.put(Constants.GROUP_KEY, remoteGroup); + map.put(GROUP_KEY, remoteGroup); } // we should always keep the Provider RELEASE_KEY not overrode by the the value on Consumer side. - map.remove(Constants.RELEASE_KEY); + map.remove(RELEASE_KEY); if (StringUtils.isNotEmpty(remoteRelease)) { - map.put(Constants.RELEASE_KEY, remoteRelease); + map.put(RELEASE_KEY, remoteRelease); } } if (remoteMap != null && remoteMap.size() > 0) { // Use version passed from provider side reserveRemoteValue(Constants.DUBBO_VERSION_KEY, map, remoteMap); - reserveRemoteValue(Constants.VERSION_KEY, map, remoteMap); - reserveRemoteValue(Constants.METHODS_KEY, map, remoteMap); - reserveRemoteValue(Constants.TIMESTAMP_KEY, map, remoteMap); + reserveRemoteValue(VERSION_KEY, map, remoteMap); + reserveRemoteValue(METHODS_KEY, map, remoteMap); + reserveRemoteValue(TIMESTAMP_KEY, map, remoteMap); reserveRemoteValue(Constants.TAG_KEY, map, remoteMap); // TODO, for compatibility consideration, we cannot simply change the value behind APPLICATION_KEY from Consumer to Provider. So just add an extra key here. // Reserve application name from provider. - map.put(Constants.REMOTE_APPLICATION_KEY, remoteMap.get(Constants.APPLICATION_KEY)); + map.put(REMOTE_APPLICATION_KEY, remoteMap.get(APPLICATION_KEY)); // Combine filters and listeners on Provider and Consumer String remoteFilter = remoteMap.get(Constants.REFERENCE_FILTER_KEY); @@ -130,4 +145,4 @@ public class ClusterUtils { } } -} \ No newline at end of file +} diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/ForkingClusterInvoker.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/ForkingClusterInvoker.java index 184a7b63df..4f84196f96 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/ForkingClusterInvoker.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/ForkingClusterInvoker.java @@ -35,6 +35,9 @@ import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * Invoke a specific number of invokers concurrently, usually used for demanding real-time operations, but need to waste more service resources. * @@ -60,7 +63,7 @@ public class ForkingClusterInvoker extends AbstractClusterInvoker { checkInvokers(invokers, invocation); final List> selected; final int forks = getUrl().getParameter(Constants.FORKS_KEY, Constants.DEFAULT_FORKS); - final int timeout = getUrl().getParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); + final int timeout = getUrl().getParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT); if (forks <= 0 || forks >= invokers.size()) { selected = invokers; } else { diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/MergeableClusterInvoker.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/MergeableClusterInvoker.java index 82a0e8a2cb..51159a99ec 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/MergeableClusterInvoker.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/MergeableClusterInvoker.java @@ -47,6 +47,10 @@ import java.util.concurrent.Executors; import java.util.concurrent.Future; import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + @SuppressWarnings("unchecked") public class MergeableClusterInvoker extends AbstractClusterInvoker { @@ -68,7 +72,7 @@ public class MergeableClusterInvoker extends AbstractClusterInvoker { return invoker.invoke(invocation); } catch (RpcException e) { if (e.isNoInvokerAvailableAfterFilter()) { - log.debug("No available provider for service" + directory.getUrl().getServiceKey() + " on group " + invoker.getUrl().getParameter(Constants.GROUP_KEY) + ", will continue to try another group."); + log.debug("No available provider for service" + directory.getUrl().getServiceKey() + " on group " + invoker.getUrl().getParameter(GROUP_KEY) + ", will continue to try another group."); } else { throw e; } @@ -101,7 +105,7 @@ public class MergeableClusterInvoker extends AbstractClusterInvoker { List resultList = new ArrayList(results.size()); - int timeout = getUrl().getMethodParameter(invocation.getMethodName(), Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); + int timeout = getUrl().getMethodParameter(invocation.getMethodName(), TIMEOUT_KEY, DEFAULT_TIMEOUT); for (Map.Entry> entry : results.entrySet()) { Future future = entry.getValue(); try { diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/RegistryAwareClusterInvoker.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/RegistryAwareClusterInvoker.java index 1d5d42b7b4..6a18cc5b35 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/RegistryAwareClusterInvoker.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/RegistryAwareClusterInvoker.java @@ -28,6 +28,8 @@ import org.apache.dubbo.rpc.cluster.LoadBalance; import java.util.List; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_KEY; + /** * */ @@ -44,7 +46,7 @@ public class RegistryAwareClusterInvoker extends AbstractClusterInvoker { public Result doInvoke(Invocation invocation, final List> invokers, LoadBalance loadbalance) throws RpcException { // First, pick the invoker (XXXClusterInvoker) that comes from the local registry, distinguish by a 'default' key. for (Invoker invoker : invokers) { - if (invoker.isAvailable() && invoker.getUrl().getParameter(Constants.REGISTRY_KEY + "." + Constants.DEFAULT_KEY, false)) { + if (invoker.isAvailable() && invoker.getUrl().getParameter(Constants.REGISTRY_KEY + "." + DEFAULT_KEY, false)) { return invoker.invoke(invocation); } } diff --git a/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/configurator/parser/ConfigParserTest.java b/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/configurator/parser/ConfigParserTest.java index 6bfe3e0c9e..e066f1cede 100644 --- a/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/configurator/parser/ConfigParserTest.java +++ b/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/configurator/parser/ConfigParserTest.java @@ -31,6 +31,11 @@ import java.io.IOException; import java.io.InputStream; import java.util.List; +import static org.apache.dubbo.common.constants.CommonConstants.APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * */ @@ -76,8 +81,8 @@ public class ConfigParserTest { Assertions.assertNotNull(urls); Assertions.assertEquals(1, urls.size()); URL url = urls.get(0); - Assertions.assertEquals("testgroup", url.getParameter(Constants.GROUP_KEY)); - Assertions.assertEquals("1.0.0", url.getParameter(Constants.VERSION_KEY)); + Assertions.assertEquals("testgroup", url.getParameter(GROUP_KEY)); + Assertions.assertEquals("1.0.0", url.getParameter(VERSION_KEY)); } } @@ -89,8 +94,8 @@ public class ConfigParserTest { Assertions.assertEquals(4, urls.size()); URL url = urls.get(0); Assertions.assertEquals("127.0.0.1", url.getAddress()); - Assertions.assertEquals(6666, url.getParameter(Constants.TIMEOUT_KEY, 0)); - Assertions.assertNotNull(url.getParameter(Constants.APPLICATION_KEY)); + Assertions.assertEquals(6666, url.getParameter(TIMEOUT_KEY, 0)); + Assertions.assertNotNull(url.getParameter(APPLICATION_KEY)); } } @@ -114,9 +119,9 @@ public class ConfigParserTest { URL url = urls.get(0); Assertions.assertEquals("127.0.0.1", url.getAddress()); Assertions.assertEquals("service1", url.getServiceInterface()); - Assertions.assertEquals(6666, url.getParameter(Constants.TIMEOUT_KEY, 0)); + Assertions.assertEquals(6666, url.getParameter(TIMEOUT_KEY, 0)); Assertions.assertEquals("random", url.getParameter(Constants.LOADBALANCE_KEY)); - Assertions.assertEquals(url.getParameter(Constants.APPLICATION_KEY), "demo-consumer"); + Assertions.assertEquals(url.getParameter(APPLICATION_KEY), "demo-consumer"); } } @@ -130,9 +135,9 @@ public class ConfigParserTest { URL url = urls.get(0); Assertions.assertEquals("127.0.0.1", url.getAddress()); Assertions.assertEquals("*", url.getServiceInterface()); - Assertions.assertEquals(6666, url.getParameter(Constants.TIMEOUT_KEY, 0)); + Assertions.assertEquals(6666, url.getParameter(TIMEOUT_KEY, 0)); Assertions.assertEquals("random", url.getParameter(Constants.LOADBALANCE_KEY)); - Assertions.assertEquals(url.getParameter(Constants.APPLICATION_KEY), "demo-consumer"); + Assertions.assertEquals(url.getParameter(APPLICATION_KEY), "demo-consumer"); } } @@ -145,9 +150,9 @@ public class ConfigParserTest { URL url = urls.get(0); Assertions.assertEquals("127.0.0.1", url.getAddress()); Assertions.assertEquals("*", url.getServiceInterface()); - Assertions.assertEquals(6666, url.getParameter(Constants.TIMEOUT_KEY, 0)); + Assertions.assertEquals(6666, url.getParameter(TIMEOUT_KEY, 0)); Assertions.assertEquals("random", url.getParameter(Constants.LOADBALANCE_KEY)); - Assertions.assertEquals(url.getParameter(Constants.APPLICATION_KEY), "demo-consumer"); + Assertions.assertEquals(url.getParameter(APPLICATION_KEY), "demo-consumer"); } } @@ -160,10 +165,10 @@ public class ConfigParserTest { URL url = urls.get(0); Assertions.assertEquals("127.0.0.1", url.getAddress()); Assertions.assertEquals("*", url.getServiceInterface()); - Assertions.assertEquals(6666, url.getParameter(Constants.TIMEOUT_KEY, 0)); + Assertions.assertEquals(6666, url.getParameter(TIMEOUT_KEY, 0)); Assertions.assertEquals("random", url.getParameter(Constants.LOADBALANCE_KEY)); Assertions.assertEquals("127.0.0.1:20880", url.getParameter(Constants.OVERRIDE_PROVIDERS_KEY)); - Assertions.assertEquals(url.getParameter(Constants.APPLICATION_KEY), "demo-consumer"); + Assertions.assertEquals(url.getParameter(APPLICATION_KEY), "demo-consumer"); } } diff --git a/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/directory/MockDirInvocation.java b/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/directory/MockDirInvocation.java index 279160e716..14a57db025 100644 --- a/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/directory/MockDirInvocation.java +++ b/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/directory/MockDirInvocation.java @@ -23,6 +23,11 @@ import org.apache.dubbo.rpc.Invoker; import java.util.HashMap; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * MockInvocation.java */ @@ -42,12 +47,12 @@ public class MockDirInvocation implements Invocation { public Map getAttachments() { Map attachments = new HashMap(); - attachments.put(Constants.PATH_KEY, "dubbo"); - attachments.put(Constants.GROUP_KEY, "dubbo"); - attachments.put(Constants.VERSION_KEY, "1.0.0"); + attachments.put(PATH_KEY, "dubbo"); + attachments.put(GROUP_KEY, "dubbo"); + attachments.put(VERSION_KEY, "1.0.0"); attachments.put(Constants.DUBBO_VERSION_KEY, "1.0.0"); attachments.put(Constants.TOKEN_KEY, "sfag"); - attachments.put(Constants.TIMEOUT_KEY, "1000"); + attachments.put(TIMEOUT_KEY, "1000"); return attachments; } @@ -63,4 +68,4 @@ public class MockDirInvocation implements Invocation { return getAttachments().get(key); } -} \ No newline at end of file +} diff --git a/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/support/ClusterUtilsTest.java b/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/support/ClusterUtilsTest.java index c010a157dc..8ee6f3a05e 100644 --- a/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/support/ClusterUtilsTest.java +++ b/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/support/ClusterUtilsTest.java @@ -18,11 +18,22 @@ package org.apache.dubbo.rpc.cluster.support; import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; - import org.apache.dubbo.common.URLBuilder; + import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; +import static org.apache.dubbo.common.constants.CommonConstants.ALIVE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.CORE_THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_KEY_PREFIX; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PID_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.QUEUES_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREADPOOL_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREAD_NAME_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + public class ClusterUtilsTest { @Test @@ -33,52 +44,52 @@ public class ClusterUtilsTest { .setPassword("password"); providerURL = URLBuilder.from(providerURL) - .addParameter(Constants.GROUP_KEY, "dubbo") - .addParameter(Constants.VERSION_KEY, "1.2.3") + .addParameter(GROUP_KEY, "dubbo") + .addParameter(VERSION_KEY, "1.2.3") .addParameter(Constants.DUBBO_VERSION_KEY, "2.3.7") - .addParameter(Constants.THREADPOOL_KEY, "fixed") - .addParameter(Constants.THREADS_KEY, Integer.MAX_VALUE) - .addParameter(Constants.THREAD_NAME_KEY, "test") - .addParameter(Constants.CORE_THREADS_KEY, Integer.MAX_VALUE) - .addParameter(Constants.QUEUES_KEY, Integer.MAX_VALUE) - .addParameter(Constants.ALIVE_KEY, Integer.MAX_VALUE) - .addParameter(Constants.DEFAULT_KEY_PREFIX + Constants.THREADS_KEY, Integer.MAX_VALUE) - .addParameter(Constants.DEFAULT_KEY_PREFIX + Constants.THREADPOOL_KEY, "fixed") - .addParameter(Constants.DEFAULT_KEY_PREFIX + Constants.CORE_THREADS_KEY, Integer.MAX_VALUE) - .addParameter(Constants.DEFAULT_KEY_PREFIX + Constants.QUEUES_KEY, Integer.MAX_VALUE) - .addParameter(Constants.DEFAULT_KEY_PREFIX + Constants.ALIVE_KEY, Integer.MAX_VALUE) - .addParameter(Constants.DEFAULT_KEY_PREFIX + Constants.THREAD_NAME_KEY, "test") + .addParameter(THREADPOOL_KEY, "fixed") + .addParameter(THREADS_KEY, Integer.MAX_VALUE) + .addParameter(THREAD_NAME_KEY, "test") + .addParameter(CORE_THREADS_KEY, Integer.MAX_VALUE) + .addParameter(QUEUES_KEY, Integer.MAX_VALUE) + .addParameter(ALIVE_KEY, Integer.MAX_VALUE) + .addParameter(DEFAULT_KEY_PREFIX + THREADS_KEY, Integer.MAX_VALUE) + .addParameter(DEFAULT_KEY_PREFIX + THREADPOOL_KEY, "fixed") + .addParameter(DEFAULT_KEY_PREFIX + CORE_THREADS_KEY, Integer.MAX_VALUE) + .addParameter(DEFAULT_KEY_PREFIX + QUEUES_KEY, Integer.MAX_VALUE) + .addParameter(DEFAULT_KEY_PREFIX + ALIVE_KEY, Integer.MAX_VALUE) + .addParameter(DEFAULT_KEY_PREFIX + THREAD_NAME_KEY, "test") .build(); URL consumerURL = new URLBuilder(Constants.DUBBO_PROTOCOL, "localhost", 55555) - .addParameter(Constants.PID_KEY, "1234") - .addParameter(Constants.THREADPOOL_KEY, "foo") + .addParameter(PID_KEY, "1234") + .addParameter(THREADPOOL_KEY, "foo") .build(); URL url = ClusterUtils.mergeUrl(providerURL, consumerURL.getParameters()); - Assertions.assertFalse(url.hasParameter(Constants.THREADS_KEY)); - Assertions.assertFalse(url.hasParameter(Constants.DEFAULT_KEY_PREFIX + Constants.THREADS_KEY)); + Assertions.assertFalse(url.hasParameter(THREADS_KEY)); + Assertions.assertFalse(url.hasParameter(DEFAULT_KEY_PREFIX + THREADS_KEY)); - Assertions.assertFalse(url.hasParameter(Constants.DEFAULT_KEY_PREFIX + Constants.THREADPOOL_KEY)); + Assertions.assertFalse(url.hasParameter(DEFAULT_KEY_PREFIX + THREADPOOL_KEY)); - Assertions.assertFalse(url.hasParameter(Constants.CORE_THREADS_KEY)); - Assertions.assertFalse(url.hasParameter(Constants.DEFAULT_KEY_PREFIX + Constants.CORE_THREADS_KEY)); + Assertions.assertFalse(url.hasParameter(CORE_THREADS_KEY)); + Assertions.assertFalse(url.hasParameter(DEFAULT_KEY_PREFIX + CORE_THREADS_KEY)); - Assertions.assertFalse(url.hasParameter(Constants.QUEUES_KEY)); - Assertions.assertFalse(url.hasParameter(Constants.DEFAULT_KEY_PREFIX + Constants.QUEUES_KEY)); + Assertions.assertFalse(url.hasParameter(QUEUES_KEY)); + Assertions.assertFalse(url.hasParameter(DEFAULT_KEY_PREFIX + QUEUES_KEY)); - Assertions.assertFalse(url.hasParameter(Constants.ALIVE_KEY)); - Assertions.assertFalse(url.hasParameter(Constants.DEFAULT_KEY_PREFIX + Constants.ALIVE_KEY)); + Assertions.assertFalse(url.hasParameter(ALIVE_KEY)); + Assertions.assertFalse(url.hasParameter(DEFAULT_KEY_PREFIX + ALIVE_KEY)); - Assertions.assertFalse(url.hasParameter(Constants.THREAD_NAME_KEY)); - Assertions.assertFalse(url.hasParameter(Constants.DEFAULT_KEY_PREFIX + Constants.THREAD_NAME_KEY)); + Assertions.assertFalse(url.hasParameter(THREAD_NAME_KEY)); + Assertions.assertFalse(url.hasParameter(DEFAULT_KEY_PREFIX + THREAD_NAME_KEY)); Assertions.assertEquals(url.getPath(), "path"); Assertions.assertEquals(url.getUsername(), "username"); Assertions.assertEquals(url.getPassword(), "password"); - Assertions.assertEquals(url.getParameter(Constants.PID_KEY), "1234"); - Assertions.assertEquals(url.getParameter(Constants.THREADPOOL_KEY), "foo"); + Assertions.assertEquals(url.getParameter(PID_KEY), "1234"); + Assertions.assertEquals(url.getParameter(THREADPOOL_KEY), "foo"); } } diff --git a/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/support/MergeableClusterInvokerTest.java b/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/support/MergeableClusterInvokerTest.java index 8a4089c904..1c3260a4fc 100644 --- a/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/support/MergeableClusterInvokerTest.java +++ b/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/support/MergeableClusterInvokerTest.java @@ -38,6 +38,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.BDDMockito.given; import static org.mockito.Mockito.mock; @@ -113,7 +114,7 @@ public class MergeableClusterInvokerTest { public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { if ("getUrl".equals(method.getName())) { - return url.addParameter(Constants.GROUP_KEY, "first"); + return url.addParameter(GROUP_KEY, "first"); } if ("getInterface".equals(method.getName())) { return MenuService.class; @@ -129,7 +130,7 @@ public class MergeableClusterInvokerTest { public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { if ("getUrl".equals(method.getName())) { - return url.addParameter(Constants.GROUP_KEY, "second"); + return url.addParameter(GROUP_KEY, "second"); } if ("getInterface".equals(method.getName())) { return MenuService.class; @@ -193,14 +194,14 @@ public class MergeableClusterInvokerTest { given(invocation.getInvoker()).willReturn(firstInvoker); given(firstInvoker.getUrl()).willReturn( - url.addParameter(Constants.GROUP_KEY, "first")); + url.addParameter(GROUP_KEY, "first")); given(firstInvoker.getInterface()).willReturn(MenuService.class); given(firstInvoker.invoke(invocation)).willReturn(new RpcResult()) ; given(firstInvoker.isAvailable()).willReturn(true); given(secondInvoker.getUrl()).willReturn( - url.addParameter(Constants.GROUP_KEY, "second")); + url.addParameter(GROUP_KEY, "second")); given(secondInvoker.getInterface()).willReturn(MenuService.class); given(secondInvoker.invoke(invocation)).willReturn(new RpcResult()) ; 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 73c1f21662..8d78190c50 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 @@ -17,157 +17,14 @@ package org.apache.dubbo.common; -import org.apache.dubbo.common.constants.RemotingConstants; - import java.util.concurrent.ExecutorService; -import java.util.regex.Pattern; + +import static org.apache.dubbo.common.constants.CommonConstants.DUBBO; /** * Constants */ public class Constants { - - // BEGIN common - public static final String DUBBO = "dubbo"; - - public static final String PROVIDER = "provider"; - - public static final String CONSUMER = "consumer"; - - public static final String APPLICATION_KEY = "application"; - - public static final String REMOTE_APPLICATION_KEY = "remote.application"; - - public static final String ENABLED_KEY = "enabled"; - - public static final String DISABLED_KEY = "disabled"; - - public static final String DUBBO_PROPERTIES_KEY = "dubbo.properties.file"; - - public static final String DEFAULT_DUBBO_PROPERTIES = "dubbo.properties"; - - public static final String ANY_VALUE = "*"; - - public static final String COMMA_SEPARATOR = ","; - - public static final Pattern COMMA_SPLIT_PATTERN = Pattern.compile("\\s*[,]+\\s*"); - - public final static String PATH_SEPARATOR = "/"; - - public final static String PROTOCOL_SEPARATOR = "://"; - - public static final String REGISTRY_SEPARATOR = "|"; - - public static final Pattern REGISTRY_SPLIT_PATTERN = Pattern.compile("\\s*[|;]+\\s*"); - - public static final String SEMICOLON_SEPARATOR = ";"; - - public static final Pattern SEMICOLON_SPLIT_PATTERN = Pattern.compile("\\s*[;]+\\s*"); - - public static final String DEFAULT_PROXY = "javassist"; - - public static final String DEFAULT_DIRECTORY = "dubbo"; - - public static final String PROTOCOL_KEY = "protocol"; - - public static final String DEFAULT_PROTOCOL = "dubbo"; - - public static final String DEFAULT_THREAD_NAME = "Dubbo"; - - public static final int DEFAULT_CORE_THREADS = 0; - - public static final int DEFAULT_THREADS = 200; - - public static final String THREADPOOL_KEY = "threadpool"; - - public static final String THREAD_NAME_KEY = "threadname"; - - public static final String CORE_THREADS_KEY = "corethreads"; - - public static final String THREADS_KEY = "threads"; - - public static final String QUEUES_KEY = "queues"; - - public static final String ALIVE_KEY = "alive"; - - public static final String DEFAULT_THREADPOOL = "limited"; - - public static final String DEFAULT_CLIENT_THREADPOOL = "cached"; - - public static final String IO_THREADS_KEY = "iothreads"; - - public static final int DEFAULT_QUEUES = 0; - - public static final int DEFAULT_ALIVE = 60 * 1000; - - public static final String TIMEOUT_KEY = "timeout"; - - public static final int DEFAULT_TIMEOUT = 1000; - - public static final String REMOVE_VALUE_PREFIX = "-"; - - public static final String PROPERTIES_CHAR_SEPERATOR = "-"; - - public static final String GROUP_CHAR_SEPERATOR = ":"; - - public static final String HIDE_KEY_PREFIX = "."; - - public static final String DEFAULT_KEY_PREFIX = "default."; - - public static final String DEFAULT_KEY = "default"; - - - /** - * Default timeout value in milliseconds for server shutdown - */ - public static final int DEFAULT_SERVER_SHUTDOWN_TIMEOUT = 10000; - - public static final String SIDE_KEY = "side"; - - public static final String PROVIDER_SIDE = "provider"; - - public static final String CONSUMER_SIDE = "consumer"; - - public static final String ANYHOST_KEY = "anyhost"; - - public static final String ANYHOST_VALUE = "0.0.0.0"; - - public static final String LOCALHOST_KEY = "localhost"; - - public static final String LOCALHOST_VALUE = "127.0.0.1"; - - public static final String METHODS_KEY = "methods"; - - public static final String METHOD_KEY = "method"; - - public static final String PID_KEY = "pid"; - - public static final String TIMESTAMP_KEY = "timestamp"; - - public static final String GROUP_KEY = "group"; - - public static final String PATH_KEY = "path"; - - public static final String INTERFACE_KEY = "interface"; - - public static final String FILE_KEY = "file"; - - public static final String DUMP_DIRECTORY = "dump.directory"; - - public static final String CLASSIFIER_KEY = "classifier"; - - public static final String VERSION_KEY = "version"; - - public static final String REVISION_KEY = "revision"; - - /** - * package version in the manifest - */ - public static final String RELEASE_KEY = "release"; - - public static final int MAX_PROXY_COUNT = 65535; - // END common - // BEGIN dubbo-remoting-api public static final String PAYLOAD_KEY = "payload"; /** @@ -791,10 +648,6 @@ public class Constants { public static final String COMPATIBLE_CONFIG_KEY = "compatible_config"; - public static final String[] DEFAULT_REGISTER_PROVIDER_KEYS = {APPLICATION_KEY, RemotingConstants.CODEC_KEY, RemotingConstants.EXCHANGER_KEY, RemotingConstants.SERIALIZATION_KEY, CLUSTER_KEY, CONNECTIONS_KEY, DEPRECATED_KEY, - GROUP_KEY, LOADBALANCE_KEY, MOCK_KEY, PATH_KEY, TIMEOUT_KEY, TOKEN_KEY, VERSION_KEY, WARMUP_KEY, WEIGHT_KEY, TIMESTAMP_KEY, DUBBO_VERSION_KEY, RELEASE_KEY}; - - public static final String[] DEFAULT_REGISTER_CONSUMER_KEYS = {APPLICATION_KEY, VERSION_KEY, GROUP_KEY, DUBBO_VERSION_KEY, RELEASE_KEY}; /** * To decide whether register center saves file synchronously, the default value is asynchronously diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/Parameters.java b/dubbo-common/src/main/java/org/apache/dubbo/common/Parameters.java index 333270c9de..90e3415ed1 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/Parameters.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/Parameters.java @@ -28,6 +28,9 @@ import java.util.Collections; import java.util.HashMap; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_KEY_PREFIX; +import static org.apache.dubbo.common.constants.CommonConstants.HIDE_KEY_PREFIX; + /** * Parameters for backward compatibility for version prior to 2.0.5 * @@ -97,13 +100,13 @@ public class Parameters { public String getParameter(String key) { String value = parameters.get(key); if (StringUtils.isEmpty(value)) { - value = parameters.get(Constants.HIDE_KEY_PREFIX + key); + value = parameters.get(HIDE_KEY_PREFIX + key); } if (StringUtils.isEmpty(value)) { - value = parameters.get(Constants.DEFAULT_KEY_PREFIX + key); + value = parameters.get(DEFAULT_KEY_PREFIX + key); } if (StringUtils.isEmpty(value)) { - value = parameters.get(Constants.HIDE_KEY_PREFIX + Constants.DEFAULT_KEY_PREFIX + key); + value = parameters.get(HIDE_KEY_PREFIX + DEFAULT_KEY_PREFIX + key); } return value; } @@ -171,7 +174,7 @@ public class Parameters { public String getMethodParameter(String method, String key) { String value = parameters.get(method + "." + key); if (StringUtils.isEmpty(value)) { - value = parameters.get(Constants.HIDE_KEY_PREFIX + method + "." + key); + value = parameters.get(HIDE_KEY_PREFIX + method + "." + key); } if (StringUtils.isEmpty(value)) { return getParameter(key); diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/URL.java b/dubbo-common/src/main/java/org/apache/dubbo/common/URL.java index e77e6ff208..c71bc9055f 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/URL.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/URL.java @@ -40,6 +40,17 @@ import java.util.Map; import java.util.TreeMap; import java.util.concurrent.ConcurrentHashMap; +import static org.apache.dubbo.common.constants.CommonConstants.ANYHOST_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.ANYHOST_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_KEY_PREFIX; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.LOCALHOST_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PROTOCOL_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * URL - Uniform Resource Locator (Immutable, ThreadSafe) *

@@ -479,7 +490,7 @@ class URL implements Serializable { public String getParameter(String key) { String value = parameters.get(key); if (StringUtils.isEmpty(value)) { - value = parameters.get(Constants.DEFAULT_KEY_PREFIX + key); + value = parameters.get(DEFAULT_KEY_PREFIX + key); } return value; } @@ -497,7 +508,7 @@ class URL implements Serializable { if (StringUtils.isEmpty(value)) { return defaultValue; } - return Constants.COMMA_SPLIT_PATTERN.split(value); + return COMMA_SPLIT_PATTERN.split(value); } public List getParameter(String key, List defaultValue) { @@ -505,7 +516,7 @@ class URL implements Serializable { if (value == null || value.length() == 0) { return defaultValue; } - String[] strArray = Constants.COMMA_SPLIT_PATTERN.split(value); + String[] strArray = COMMA_SPLIT_PATTERN.split(value); return Arrays.asList(strArray); } @@ -928,11 +939,11 @@ class URL implements Serializable { } public boolean isLocalHost() { - return NetUtils.isLocalHost(host) || getParameter(Constants.LOCALHOST_KEY, false); + return NetUtils.isLocalHost(host) || getParameter(LOCALHOST_KEY, false); } public boolean isAnyHost() { - return Constants.ANYHOST_VALUE.equals(host) || getParameter(Constants.ANYHOST_KEY, false); + return ANYHOST_VALUE.equals(host) || getParameter(ANYHOST_KEY, false); } public URL addParameterAndEncoded(String key, String value) { @@ -1123,7 +1134,7 @@ class URL implements Serializable { } public String getRawParameter(String key) { - if (Constants.PROTOCOL_KEY.equals(key)) { + if (PROTOCOL_KEY.equals(key)) { return protocol; } if (Constants.USERNAME_KEY.equals(key)) { @@ -1138,7 +1149,7 @@ class URL implements Serializable { if (Constants.PORT_KEY.equals(key)) { return String.valueOf(port); } - if (Constants.PATH_KEY.equals(key)) { + if (PATH_KEY.equals(key)) { return path; } return getParameter(key); @@ -1147,7 +1158,7 @@ class URL implements Serializable { public Map toMap() { Map map = new HashMap<>(parameters); if (protocol != null) { - map.put(Constants.PROTOCOL_KEY, protocol); + map.put(PROTOCOL_KEY, protocol); } if (username != null) { map.put(Constants.USERNAME_KEY, username); @@ -1162,7 +1173,7 @@ class URL implements Serializable { map.put(Constants.PORT_KEY, String.valueOf(port)); } if (path != null) { - map.put(Constants.PATH_KEY, path); + map.put(PATH_KEY, path); } return map; } @@ -1317,7 +1328,7 @@ class URL implements Serializable { if (inf == null) { return null; } - return buildKey(inf, getParameter(Constants.GROUP_KEY), getParameter(Constants.VERSION_KEY)); + return buildKey(inf, getParameter(GROUP_KEY), getParameter(VERSION_KEY)); } /** @@ -1329,7 +1340,7 @@ class URL implements Serializable { if (inf == null) { return null; } - return buildKey(inf, getParameter(Constants.GROUP_KEY), getParameter(Constants.VERSION_KEY)); + return buildKey(inf, getParameter(GROUP_KEY), getParameter(VERSION_KEY)); } public static String buildKey(String path, String group, String version) { @@ -1358,11 +1369,11 @@ class URL implements Serializable { } public String getServiceInterface() { - return getParameter(Constants.INTERFACE_KEY, path); + return getParameter(INTERFACE_KEY, path); } public URL setServiceInterface(String service) { - return addParameter(Constants.INTERFACE_KEY, service); + return addParameter(INTERFACE_KEY, service); } /** diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/URLBuilder.java b/dubbo-common/src/main/java/org/apache/dubbo/common/URLBuilder.java index c938737811..5c926f9438 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/URLBuilder.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/URLBuilder.java @@ -24,6 +24,8 @@ import java.util.HashMap; import java.util.Map; import java.util.Objects; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_KEY_PREFIX; + public final class URLBuilder { private String protocol; @@ -343,7 +345,7 @@ public final class URLBuilder { public String getParameter(String key) { String value = parameters.get(key); if (StringUtils.isEmpty(value)) { - value = parameters.get(Constants.DEFAULT_KEY_PREFIX + key); + value = parameters.get(DEFAULT_KEY_PREFIX + key); } return value; } diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/bytecode/Proxy.java b/dubbo-common/src/main/java/org/apache/dubbo/common/bytecode/Proxy.java index 8486e94b34..2da2818350 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/bytecode/Proxy.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/bytecode/Proxy.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.common.bytecode; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.utils.ClassUtils; import org.apache.dubbo.common.utils.ReflectUtils; @@ -34,6 +33,8 @@ import java.util.Set; import java.util.WeakHashMap; import java.util.concurrent.atomic.AtomicLong; +import static org.apache.dubbo.common.constants.CommonConstants.MAX_PROXY_COUNT; + /** * Proxy. */ @@ -73,7 +74,7 @@ public abstract class Proxy { * @return Proxy instance. */ public static Proxy getProxy(ClassLoader cl, Class... ics) { - if (ics.length > Constants.MAX_PROXY_COUNT) { + if (ics.length > MAX_PROXY_COUNT) { throw new IllegalArgumentException("interface limit exceeded"); } diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/config/ConfigurationUtils.java b/dubbo-common/src/main/java/org/apache/dubbo/common/config/ConfigurationUtils.java index e2431f20d2..a9425fafa6 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/config/ConfigurationUtils.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/config/ConfigurationUtils.java @@ -27,6 +27,8 @@ import java.util.HashMap; import java.util.Map; import java.util.Properties; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_SERVER_SHUTDOWN_TIMEOUT; + /** * Utilities for manipulating configurations from different sources */ @@ -36,7 +38,7 @@ public class ConfigurationUtils { // FIXME @SuppressWarnings("deprecation") public static int getServerShutdownTimeout() { - int timeout = Constants.DEFAULT_SERVER_SHUTDOWN_TIMEOUT; + int timeout = DEFAULT_SERVER_SHUTDOWN_TIMEOUT; Configuration configuration = Environment.getInstance().getConfiguration(); String value = StringUtils.trim(configuration.getString(Constants.SHUTDOWN_WAIT_KEY)); diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/config/Environment.java b/dubbo-common/src/main/java/org/apache/dubbo/common/config/Environment.java index 8369b997a4..b632808206 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/config/Environment.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/config/Environment.java @@ -16,7 +16,7 @@ */ package org.apache.dubbo.common.config; -import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.utils.StringUtils; import java.util.HashMap; @@ -141,7 +141,7 @@ public class Environment { if (sb.length() > 0) { return sb.toString(); } - return Constants.DUBBO; + return CommonConstants.DUBBO; } public boolean isConfigCenterFirst() { diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/constants/RegistryConstants.java b/dubbo-common/src/main/java/org/apache/dubbo/common/constants/RegistryConstants.java index 331a67c587..d8bf70139f 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/constants/RegistryConstants.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/constants/RegistryConstants.java @@ -17,26 +17,6 @@ package org.apache.dubbo.common.constants; -import static org.apache.dubbo.common.Constants.APPLICATION_KEY; -import static org.apache.dubbo.common.Constants.CLUSTER_KEY; -import static org.apache.dubbo.common.constants.RemotingConstants.CODEC_KEY; -import static org.apache.dubbo.common.Constants.CONNECTIONS_KEY; -import static org.apache.dubbo.common.Constants.DEPRECATED_KEY; -import static org.apache.dubbo.common.Constants.DUBBO_VERSION_KEY; -import static org.apache.dubbo.common.constants.RemotingConstants.EXCHANGER_KEY; -import static org.apache.dubbo.common.Constants.GROUP_KEY; -import static org.apache.dubbo.common.Constants.LOADBALANCE_KEY; -import static org.apache.dubbo.common.Constants.MOCK_KEY; -import static org.apache.dubbo.common.Constants.PATH_KEY; -import static org.apache.dubbo.common.Constants.RELEASE_KEY; -import static org.apache.dubbo.common.constants.RemotingConstants.SERIALIZATION_KEY; -import static org.apache.dubbo.common.Constants.TIMEOUT_KEY; -import static org.apache.dubbo.common.Constants.TIMESTAMP_KEY; -import static org.apache.dubbo.common.Constants.TOKEN_KEY; -import static org.apache.dubbo.common.Constants.VERSION_KEY; -import static org.apache.dubbo.common.Constants.WARMUP_KEY; -import static org.apache.dubbo.common.Constants.WEIGHT_KEY; - public interface RegistryConstants { String REGISTER_KEY = "register"; @@ -114,11 +94,6 @@ public interface RegistryConstants { String COMPATIBLE_CONFIG_KEY = "compatible_config"; - String[] DEFAULT_REGISTER_PROVIDER_KEYS = {APPLICATION_KEY, CODEC_KEY, EXCHANGER_KEY, SERIALIZATION_KEY, CLUSTER_KEY, CONNECTIONS_KEY, DEPRECATED_KEY, - GROUP_KEY, LOADBALANCE_KEY, MOCK_KEY, PATH_KEY, TIMEOUT_KEY, TOKEN_KEY, VERSION_KEY, WARMUP_KEY, WEIGHT_KEY, TIMESTAMP_KEY, DUBBO_VERSION_KEY, RELEASE_KEY}; - - String[] DEFAULT_REGISTER_CONSUMER_KEYS = {APPLICATION_KEY, VERSION_KEY, GROUP_KEY, DUBBO_VERSION_KEY, RELEASE_KEY}; - /** * To decide whether register center saves file synchronously, the default value is asynchronously */ diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/extension/ExtensionLoader.java b/dubbo-common/src/main/java/org/apache/dubbo/common/extension/ExtensionLoader.java index 9d0b46c446..18b216ddbf 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/extension/ExtensionLoader.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/extension/ExtensionLoader.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.common.extension; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.extension.support.ActivateComparator; import org.apache.dubbo.common.logger.Logger; @@ -48,6 +47,10 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; import java.util.regex.Pattern; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.REMOVE_VALUE_PREFIX; + /** * Load dubbo extensions *

    @@ -190,7 +193,7 @@ public class ExtensionLoader { */ public List getActivateExtension(URL url, String key, String group) { String value = url.getParameter(key); - return getActivateExtension(url, StringUtils.isEmpty(value) ? null : Constants.COMMA_SPLIT_PATTERN.split(value), group); + return getActivateExtension(url, StringUtils.isEmpty(value) ? null : COMMA_SPLIT_PATTERN.split(value), group); } /** @@ -205,7 +208,7 @@ public class ExtensionLoader { public List getActivateExtension(URL url, String[] values, String group) { List exts = new ArrayList<>(); List names = values == null ? new ArrayList<>(0) : Arrays.asList(values); - if (!names.contains(Constants.REMOVE_VALUE_PREFIX + Constants.DEFAULT_KEY)) { + if (!names.contains(REMOVE_VALUE_PREFIX + DEFAULT_KEY)) { getExtensionClasses(); for (Map.Entry entry : cachedActivates.entrySet()) { String name = entry.getKey(); @@ -225,7 +228,7 @@ public class ExtensionLoader { if (isMatchGroup(group, activateGroup)) { T ext = getExtension(name); if (!names.contains(name) - && !names.contains(Constants.REMOVE_VALUE_PREFIX + name) + && !names.contains(REMOVE_VALUE_PREFIX + name) && isActive(activateValue, url)) { exts.add(ext); } @@ -236,9 +239,9 @@ public class ExtensionLoader { List usrs = new ArrayList<>(); for (int i = 0; i < names.size(); i++) { String name = names.get(i); - if (!name.startsWith(Constants.REMOVE_VALUE_PREFIX) - && !names.contains(Constants.REMOVE_VALUE_PREFIX + name)) { - if (Constants.DEFAULT_KEY.equals(name)) { + if (!name.startsWith(REMOVE_VALUE_PREFIX) + && !names.contains(REMOVE_VALUE_PREFIX + name)) { + if (DEFAULT_KEY.equals(name)) { if (!usrs.isEmpty()) { exts.addAll(0, usrs); usrs.clear(); diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/ThreadPool.java b/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/ThreadPool.java index 0142dedf5e..312cd690ff 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/ThreadPool.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/ThreadPool.java @@ -16,13 +16,14 @@ */ package org.apache.dubbo.common.threadpool; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.extension.Adaptive; import org.apache.dubbo.common.extension.SPI; import java.util.concurrent.Executor; +import static org.apache.dubbo.common.constants.CommonConstants.THREADPOOL_KEY; + /** * ThreadPool */ @@ -35,7 +36,7 @@ public interface ThreadPool { * @param url URL contains thread parameter * @return thread pool */ - @Adaptive({Constants.THREADPOOL_KEY}) + @Adaptive({THREADPOOL_KEY}) Executor getExecutor(URL url); -} \ No newline at end of file +} diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/AbortPolicyWithReport.java b/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/AbortPolicyWithReport.java index cb368db895..0872b5b4d9 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/AbortPolicyWithReport.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/AbortPolicyWithReport.java @@ -26,12 +26,13 @@ import java.util.concurrent.RejectedExecutionException; import java.util.concurrent.Semaphore; import java.util.concurrent.ThreadPoolExecutor; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; import org.apache.dubbo.common.utils.JVMUtil; +import static org.apache.dubbo.common.constants.CommonConstants.DUMP_DIRECTORY; + /** * Abort Policy. * Log warn info when abort. @@ -92,7 +93,7 @@ public class AbortPolicyWithReport extends ThreadPoolExecutor.AbortPolicy { ExecutorService pool = Executors.newSingleThreadExecutor(); pool.execute(() -> { - String dumpPath = url.getParameter(Constants.DUMP_DIRECTORY, System.getProperty("user.home")); + String dumpPath = url.getParameter(DUMP_DIRECTORY, System.getProperty("user.home")); SimpleDateFormat sdf; diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/cached/CachedThreadPool.java b/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/cached/CachedThreadPool.java index 51c40742dd..6dbbced16f 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/cached/CachedThreadPool.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/cached/CachedThreadPool.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.common.threadpool.support.cached; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.threadlocal.NamedInternalThreadFactory; import org.apache.dubbo.common.threadpool.ThreadPool; @@ -28,6 +27,16 @@ import java.util.concurrent.SynchronousQueue; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.ALIVE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.CORE_THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_ALIVE; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_CORE_THREADS; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_QUEUES; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_THREAD_NAME; +import static org.apache.dubbo.common.constants.CommonConstants.QUEUES_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREAD_NAME_KEY; + /** * This thread pool is self-tuned. Thread will be recycled after idle for one minute, and new thread will be created for * the upcoming request. @@ -38,11 +47,11 @@ public class CachedThreadPool implements ThreadPool { @Override public Executor getExecutor(URL url) { - String name = url.getParameter(Constants.THREAD_NAME_KEY, Constants.DEFAULT_THREAD_NAME); - int cores = url.getParameter(Constants.CORE_THREADS_KEY, Constants.DEFAULT_CORE_THREADS); - int threads = url.getParameter(Constants.THREADS_KEY, Integer.MAX_VALUE); - int queues = url.getParameter(Constants.QUEUES_KEY, Constants.DEFAULT_QUEUES); - int alive = url.getParameter(Constants.ALIVE_KEY, Constants.DEFAULT_ALIVE); + String name = url.getParameter(THREAD_NAME_KEY, DEFAULT_THREAD_NAME); + int cores = url.getParameter(CORE_THREADS_KEY, DEFAULT_CORE_THREADS); + int threads = url.getParameter(THREADS_KEY, Integer.MAX_VALUE); + int queues = url.getParameter(QUEUES_KEY, DEFAULT_QUEUES); + int alive = url.getParameter(ALIVE_KEY, DEFAULT_ALIVE); return new ThreadPoolExecutor(cores, threads, alive, TimeUnit.MILLISECONDS, queues == 0 ? new SynchronousQueue() : (queues < 0 ? new LinkedBlockingQueue() diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/eager/EagerThreadPool.java b/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/eager/EagerThreadPool.java index 14c9bcf938..6d126894aa 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/eager/EagerThreadPool.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/eager/EagerThreadPool.java @@ -17,7 +17,6 @@ package org.apache.dubbo.common.threadpool.support.eager; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.threadlocal.NamedInternalThreadFactory; import org.apache.dubbo.common.threadpool.ThreadPool; @@ -26,6 +25,16 @@ import org.apache.dubbo.common.threadpool.support.AbortPolicyWithReport; import java.util.concurrent.Executor; import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.ALIVE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.CORE_THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_ALIVE; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_CORE_THREADS; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_QUEUES; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_THREAD_NAME; +import static org.apache.dubbo.common.constants.CommonConstants.QUEUES_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREAD_NAME_KEY; + /** * EagerThreadPool * When the core threads are all in busy, @@ -35,11 +44,11 @@ public class EagerThreadPool implements ThreadPool { @Override public Executor getExecutor(URL url) { - String name = url.getParameter(Constants.THREAD_NAME_KEY, Constants.DEFAULT_THREAD_NAME); - int cores = url.getParameter(Constants.CORE_THREADS_KEY, Constants.DEFAULT_CORE_THREADS); - int threads = url.getParameter(Constants.THREADS_KEY, Integer.MAX_VALUE); - int queues = url.getParameter(Constants.QUEUES_KEY, Constants.DEFAULT_QUEUES); - int alive = url.getParameter(Constants.ALIVE_KEY, Constants.DEFAULT_ALIVE); + String name = url.getParameter(THREAD_NAME_KEY, DEFAULT_THREAD_NAME); + int cores = url.getParameter(CORE_THREADS_KEY, DEFAULT_CORE_THREADS); + int threads = url.getParameter(THREADS_KEY, Integer.MAX_VALUE); + int queues = url.getParameter(QUEUES_KEY, DEFAULT_QUEUES); + int alive = url.getParameter(ALIVE_KEY, DEFAULT_ALIVE); // init queue and executor TaskQueue taskQueue = new TaskQueue(queues <= 0 ? 1 : queues); diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/fixed/FixedThreadPool.java b/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/fixed/FixedThreadPool.java index 682bf89977..606d7e1f91 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/fixed/FixedThreadPool.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/fixed/FixedThreadPool.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.common.threadpool.support.fixed; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.threadlocal.NamedInternalThreadFactory; import org.apache.dubbo.common.threadpool.ThreadPool; @@ -28,6 +27,13 @@ import java.util.concurrent.SynchronousQueue; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_QUEUES; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_THREADS; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_THREAD_NAME; +import static org.apache.dubbo.common.constants.CommonConstants.QUEUES_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREAD_NAME_KEY; + /** * Creates a thread pool that reuses a fixed number of threads * @@ -37,9 +43,9 @@ public class FixedThreadPool implements ThreadPool { @Override public Executor getExecutor(URL url) { - String name = url.getParameter(Constants.THREAD_NAME_KEY, Constants.DEFAULT_THREAD_NAME); - int threads = url.getParameter(Constants.THREADS_KEY, Constants.DEFAULT_THREADS); - int queues = url.getParameter(Constants.QUEUES_KEY, Constants.DEFAULT_QUEUES); + String name = url.getParameter(THREAD_NAME_KEY, DEFAULT_THREAD_NAME); + int threads = url.getParameter(THREADS_KEY, DEFAULT_THREADS); + int queues = url.getParameter(QUEUES_KEY, DEFAULT_QUEUES); return new ThreadPoolExecutor(threads, threads, 0, TimeUnit.MILLISECONDS, queues == 0 ? new SynchronousQueue() : (queues < 0 ? new LinkedBlockingQueue() diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/limited/LimitedThreadPool.java b/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/limited/LimitedThreadPool.java index 3a7dc46de0..87c46d3742 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/limited/LimitedThreadPool.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/limited/LimitedThreadPool.java @@ -17,7 +17,6 @@ package org.apache.dubbo.common.threadpool.support.limited; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.threadlocal.NamedInternalThreadFactory; import org.apache.dubbo.common.threadpool.ThreadPool; @@ -29,6 +28,15 @@ import java.util.concurrent.SynchronousQueue; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.CORE_THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_CORE_THREADS; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_QUEUES; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_THREADS; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_THREAD_NAME; +import static org.apache.dubbo.common.constants.CommonConstants.QUEUES_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREAD_NAME_KEY; + /** * Creates a thread pool that creates new threads as needed until limits reaches. This thread pool will not shrink * automatically. @@ -37,10 +45,10 @@ public class LimitedThreadPool implements ThreadPool { @Override public Executor getExecutor(URL url) { - String name = url.getParameter(Constants.THREAD_NAME_KEY, Constants.DEFAULT_THREAD_NAME); - int cores = url.getParameter(Constants.CORE_THREADS_KEY, Constants.DEFAULT_CORE_THREADS); - int threads = url.getParameter(Constants.THREADS_KEY, Constants.DEFAULT_THREADS); - int queues = url.getParameter(Constants.QUEUES_KEY, Constants.DEFAULT_QUEUES); + String name = url.getParameter(THREAD_NAME_KEY, DEFAULT_THREAD_NAME); + int cores = url.getParameter(CORE_THREADS_KEY, DEFAULT_CORE_THREADS); + int threads = url.getParameter(THREADS_KEY, DEFAULT_THREADS); + int queues = url.getParameter(QUEUES_KEY, DEFAULT_QUEUES); return new ThreadPoolExecutor(cores, threads, Long.MAX_VALUE, TimeUnit.MILLISECONDS, queues == 0 ? new SynchronousQueue() : (queues < 0 ? new LinkedBlockingQueue() diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/ConfigUtils.java b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/ConfigUtils.java index 1f26bf035a..072b456214 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/ConfigUtils.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/ConfigUtils.java @@ -16,7 +16,7 @@ */ package org.apache.dubbo.common.utils; -import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.ExtensionLoader; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -34,6 +34,10 @@ import java.util.Properties; import java.util.regex.Matcher; import java.util.regex.Pattern; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.REMOVE_VALUE_PREFIX; + public class ConfigUtils { private static final Logger logger = LoggerFactory.getLogger(ConfigUtils.class); @@ -88,7 +92,7 @@ public class ConfigUtils { List names = new ArrayList(); // add initial values - String[] configs = (cfg == null || cfg.trim().length() == 0) ? new String[0] : Constants.COMMA_SPLIT_PATTERN.split(cfg); + String[] configs = (cfg == null || cfg.trim().length() == 0) ? new String[0] : COMMA_SPLIT_PATTERN.split(cfg); for (String config : configs) { if (config != null && config.trim().length() > 0) { names.add(config); @@ -96,22 +100,22 @@ public class ConfigUtils { } // -default is not included - if (!names.contains(Constants.REMOVE_VALUE_PREFIX + Constants.DEFAULT_KEY)) { + if (!names.contains(REMOVE_VALUE_PREFIX + DEFAULT_KEY)) { // add default extension - int i = names.indexOf(Constants.DEFAULT_KEY); + int i = names.indexOf(DEFAULT_KEY); if (i > 0) { names.addAll(i, defaults); } else { names.addAll(0, defaults); } - names.remove(Constants.DEFAULT_KEY); + names.remove(DEFAULT_KEY); } else { - names.remove(Constants.DEFAULT_KEY); + names.remove(DEFAULT_KEY); } // merge - configuration for (String name : new ArrayList(names)) { - if (name.startsWith(Constants.REMOVE_VALUE_PREFIX)) { + if (name.startsWith(REMOVE_VALUE_PREFIX)) { names.remove(name); names.remove(name.substring(1)); } @@ -144,11 +148,11 @@ public class ConfigUtils { if (PROPERTIES == null) { synchronized (ConfigUtils.class) { if (PROPERTIES == null) { - String path = System.getProperty(Constants.DUBBO_PROPERTIES_KEY); + String path = System.getProperty(CommonConstants.DUBBO_PROPERTIES_KEY); if (path == null || path.length() == 0) { - path = System.getenv(Constants.DUBBO_PROPERTIES_KEY); + path = System.getenv(CommonConstants.DUBBO_PROPERTIES_KEY); if (path == null || path.length() == 0) { - path = Constants.DEFAULT_DUBBO_PROPERTIES; + path = CommonConstants.DEFAULT_DUBBO_PROPERTIES; } } PROPERTIES = ConfigUtils.loadProperties(path, false, true); diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/ExecutorUtil.java b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/ExecutorUtil.java index c342ed2e71..93a2a60d7d 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/ExecutorUtil.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/ExecutorUtil.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.common.utils; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -24,9 +23,11 @@ import org.apache.dubbo.common.logger.LoggerFactory; import java.util.concurrent.Executor; import java.util.concurrent.ExecutorService; import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; -import java.util.concurrent.ScheduledFuture; + +import static org.apache.dubbo.common.constants.CommonConstants.THREAD_NAME_KEY; public class ExecutorUtil { private static final Logger logger = LoggerFactory.getLogger(ExecutorUtil.class); @@ -128,9 +129,9 @@ public class ExecutorUtil { * @return new url with updated thread name */ public static URL setThreadName(URL url, String defaultName) { - String name = url.getParameter(Constants.THREAD_NAME_KEY, defaultName); + String name = url.getParameter(THREAD_NAME_KEY, defaultName); name = name + "-" + url.getAddress(); - url = url.addParameter(Constants.THREAD_NAME_KEY, name); + url = url.addParameter(THREAD_NAME_KEY, name); return url; } diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/NetUtils.java b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/NetUtils.java index 828a97e7d3..b5ca11e8c3 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/NetUtils.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/NetUtils.java @@ -37,6 +37,10 @@ import java.util.Optional; import java.util.concurrent.ThreadLocalRandom; import java.util.regex.Pattern; +import static org.apache.dubbo.common.constants.CommonConstants.LOCALHOST_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.ANYHOST_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.LOCALHOST_KEY; + /** * IP and Port Helper for RPC */ @@ -99,18 +103,18 @@ public class NetUtils { public static boolean isLocalHost(String host) { return host != null && (LOCAL_IP_PATTERN.matcher(host).matches() - || host.equalsIgnoreCase(Constants.LOCALHOST_KEY)); + || host.equalsIgnoreCase(LOCALHOST_KEY)); } public static boolean isAnyHost(String host) { - return Constants.ANYHOST_VALUE.equals(host); + return ANYHOST_VALUE.equals(host); } public static boolean isInvalidLocalHost(String host) { return host == null || host.length() == 0 - || host.equalsIgnoreCase(Constants.LOCALHOST_KEY) - || host.equals(Constants.ANYHOST_VALUE) + || host.equalsIgnoreCase(LOCALHOST_KEY) + || host.equals(ANYHOST_VALUE) || (LOCAL_IP_PATTERN.matcher(host).matches()); } @@ -130,8 +134,8 @@ public class NetUtils { String name = address.getHostAddress(); boolean result = (name != null && IP_PATTERN.matcher(name).matches() - && !Constants.ANYHOST_VALUE.equals(name) - && !Constants.LOCALHOST_VALUE.equals(name)); + && !ANYHOST_VALUE.equals(name) + && !LOCALHOST_VALUE.equals(name)); return result; } @@ -178,7 +182,7 @@ public class NetUtils { public static String getLocalHost() { InetAddress address = getLocalAddress(); - return address == null ? Constants.LOCALHOST_VALUE : address.getHostAddress(); + return address == null ? LOCALHOST_VALUE : address.getHostAddress(); } public static String filterLocalHost(String host) { diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/StringUtils.java b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/StringUtils.java index a351346ef1..20331e3998 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/StringUtils.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/StringUtils.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.common.utils; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.io.UnsafeStringWriter; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -33,6 +32,12 @@ import java.util.TreeMap; import java.util.regex.Matcher; import java.util.regex.Pattern; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SEPARATOR; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * StringUtils */ @@ -458,7 +463,7 @@ public final class StringUtils { } public static boolean isContains(String values, String value) { - return isNotEmpty(values) && isContains(Constants.COMMA_SPLIT_PATTERN.split(values), value); + return isNotEmpty(values) && isContains(COMMA_SPLIT_PATTERN.split(values), value); } /** @@ -714,12 +719,12 @@ public final class StringUtils { public static String getServiceKey(Map ps) { StringBuilder buf = new StringBuilder(); - String group = ps.get(Constants.GROUP_KEY); + String group = ps.get(GROUP_KEY); if (isNotEmpty(group)) { buf.append(group).append("/"); } - buf.append(ps.get(Constants.INTERFACE_KEY)); - String version = ps.get(Constants.VERSION_KEY); + buf.append(ps.get(INTERFACE_KEY)); + String version = ps.get(VERSION_KEY); if (isNotEmpty(group)) { buf.append(":").append(version); } @@ -774,7 +779,7 @@ public final class StringUtils { StringBuilder buf = new StringBuilder(); for (Object arg : args) { if (buf.length() > 0) { - buf.append(Constants.COMMA_SEPARATOR); + buf.append(COMMA_SEPARATOR); } if (arg == null || ReflectUtils.isPrimitives(arg.getClass())) { buf.append(arg); diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/UrlUtils.java b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/UrlUtils.java index 32ab016af4..2d5e677807 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/UrlUtils.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/UrlUtils.java @@ -35,11 +35,22 @@ import static org.apache.dubbo.common.Constants.OVERRIDE_PROTOCOL; import static org.apache.dubbo.common.Constants.PROVIDERS_CATEGORY; import static org.apache.dubbo.common.Constants.ROUTERS_CATEGORY; import static org.apache.dubbo.common.Constants.ROUTE_PROTOCOL; +import static org.apache.dubbo.common.constants.CommonConstants.ANY_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.CLASSIFIER_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; +import static org.apache.dubbo.common.constants.CommonConstants.ENABLED_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PROTOCOL_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.REGISTRY_SPLIT_PATTERN; +import static org.apache.dubbo.common.constants.CommonConstants.REMOVE_VALUE_PREFIX; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; public class UrlUtils { /** - * in the url string,mark the param begin + * in the url string,mark the param begin */ private final static String URL_PARAM_STARTING_SYMBOL = "?"; @@ -51,7 +62,7 @@ public class UrlUtils { if (address.contains("://") || address.contains(URL_PARAM_STARTING_SYMBOL)) { url = address; } else { - String[] addresses = Constants.COMMA_SPLIT_PATTERN.split(address); + String[] addresses = COMMA_SPLIT_PATTERN.split(address); url = addresses[0]; if (addresses.length > 1) { StringBuilder backup = new StringBuilder(); @@ -64,22 +75,22 @@ public class UrlUtils { url += URL_PARAM_STARTING_SYMBOL + RemotingConstants.BACKUP_KEY + "=" + backup.toString(); } } - String defaultProtocol = defaults == null ? null : defaults.get(Constants.PROTOCOL_KEY); + String defaultProtocol = defaults == null ? null : defaults.get(PROTOCOL_KEY); if (defaultProtocol == null || defaultProtocol.length() == 0) { defaultProtocol = Constants.DUBBO_PROTOCOL; } String defaultUsername = defaults == null ? null : defaults.get(Constants.USERNAME_KEY); String defaultPassword = defaults == null ? null : defaults.get(Constants.PASSWORD_KEY); int defaultPort = StringUtils.parseInteger(defaults == null ? null : defaults.get(Constants.PORT_KEY)); - String defaultPath = defaults == null ? null : defaults.get(Constants.PATH_KEY); + String defaultPath = defaults == null ? null : defaults.get(PATH_KEY); Map defaultParameters = defaults == null ? null : new HashMap(defaults); if (defaultParameters != null) { - defaultParameters.remove(Constants.PROTOCOL_KEY); + defaultParameters.remove(PROTOCOL_KEY); defaultParameters.remove(Constants.USERNAME_KEY); defaultParameters.remove(Constants.PASSWORD_KEY); defaultParameters.remove(Constants.HOST_KEY); defaultParameters.remove(Constants.PORT_KEY); - defaultParameters.remove(Constants.PATH_KEY); + defaultParameters.remove(PATH_KEY); } URL u = URL.valueOf(url); boolean changed = false; @@ -144,7 +155,7 @@ public class UrlUtils { if (address == null || address.length() == 0) { return null; } - String[] addresses = Constants.REGISTRY_SPLIT_PATTERN.split(address); + String[] addresses = REGISTRY_SPLIT_PATTERN.split(address); if (addresses == null || addresses.length == 0) { return null; //here won't be empty } @@ -353,17 +364,17 @@ public class UrlUtils { } return URL.valueOf(Constants.EMPTY_PROTOCOL + "://0.0.0.0/" + service + URL_PARAM_STARTING_SYMBOL + CATEGORY_KEY + "=" + category - + (group == null ? "" : "&" + Constants.GROUP_KEY + "=" + group) - + (version == null ? "" : "&" + Constants.VERSION_KEY + "=" + version)); + + (group == null ? "" : "&" + GROUP_KEY + "=" + group) + + (version == null ? "" : "&" + VERSION_KEY + "=" + version)); } public static boolean isMatchCategory(String category, String categories) { if (categories == null || categories.length() == 0) { return DEFAULT_CATEGORY.equals(category); - } else if (categories.contains(Constants.ANY_VALUE)) { + } else if (categories.contains(ANY_VALUE)) { return true; - } else if (categories.contains(Constants.REMOVE_VALUE_PREFIX)) { - return !categories.contains(Constants.REMOVE_VALUE_PREFIX + category); + } else if (categories.contains(REMOVE_VALUE_PREFIX)) { + return !categories.contains(REMOVE_VALUE_PREFIX + category); } else { return categories.contains(category); } @@ -373,8 +384,8 @@ public class UrlUtils { String consumerInterface = consumerUrl.getServiceInterface(); String providerInterface = providerUrl.getServiceInterface(); //FIXME accept providerUrl with '*' as interface name, after carefully thought about all possible scenarios I think it's ok to add this condition. - if (!(Constants.ANY_VALUE.equals(consumerInterface) - || Constants.ANY_VALUE.equals(providerInterface) + if (!(ANY_VALUE.equals(consumerInterface) + || ANY_VALUE.equals(providerInterface) || StringUtils.isEquals(consumerInterface, providerInterface))) { return false; } @@ -383,21 +394,21 @@ public class UrlUtils { consumerUrl.getParameter(CATEGORY_KEY, DEFAULT_CATEGORY))) { return false; } - if (!providerUrl.getParameter(Constants.ENABLED_KEY, true) - && !Constants.ANY_VALUE.equals(consumerUrl.getParameter(Constants.ENABLED_KEY))) { + if (!providerUrl.getParameter(ENABLED_KEY, true) + && !ANY_VALUE.equals(consumerUrl.getParameter(ENABLED_KEY))) { return false; } - String consumerGroup = consumerUrl.getParameter(Constants.GROUP_KEY); - String consumerVersion = consumerUrl.getParameter(Constants.VERSION_KEY); - String consumerClassifier = consumerUrl.getParameter(Constants.CLASSIFIER_KEY, Constants.ANY_VALUE); + String consumerGroup = consumerUrl.getParameter(GROUP_KEY); + String consumerVersion = consumerUrl.getParameter(VERSION_KEY); + String consumerClassifier = consumerUrl.getParameter(CLASSIFIER_KEY, ANY_VALUE); - String providerGroup = providerUrl.getParameter(Constants.GROUP_KEY); - String providerVersion = providerUrl.getParameter(Constants.VERSION_KEY); - String providerClassifier = providerUrl.getParameter(Constants.CLASSIFIER_KEY, Constants.ANY_VALUE); - return (Constants.ANY_VALUE.equals(consumerGroup) || StringUtils.isEquals(consumerGroup, providerGroup) || StringUtils.isContains(consumerGroup, providerGroup)) - && (Constants.ANY_VALUE.equals(consumerVersion) || StringUtils.isEquals(consumerVersion, providerVersion)) - && (consumerClassifier == null || Constants.ANY_VALUE.equals(consumerClassifier) || StringUtils.isEquals(consumerClassifier, providerClassifier)); + String providerGroup = providerUrl.getParameter(GROUP_KEY); + String providerVersion = providerUrl.getParameter(VERSION_KEY); + String providerClassifier = providerUrl.getParameter(CLASSIFIER_KEY, ANY_VALUE); + return (ANY_VALUE.equals(consumerGroup) || StringUtils.isEquals(consumerGroup, providerGroup) || StringUtils.isContains(consumerGroup, providerGroup)) + && (ANY_VALUE.equals(consumerVersion) || StringUtils.isEquals(consumerVersion, providerVersion)) + && (consumerClassifier == null || ANY_VALUE.equals(consumerClassifier) || StringUtils.isEquals(consumerClassifier, providerClassifier)); } public static boolean isMatchGlobPattern(String pattern, String value, URL param) { @@ -440,12 +451,12 @@ public class UrlUtils { } public static boolean isServiceKeyMatch(URL pattern, URL value) { - return pattern.getParameter(Constants.INTERFACE_KEY).equals( - value.getParameter(Constants.INTERFACE_KEY)) - && isItemMatch(pattern.getParameter(Constants.GROUP_KEY), - value.getParameter(Constants.GROUP_KEY)) - && isItemMatch(pattern.getParameter(Constants.VERSION_KEY), - value.getParameter(Constants.VERSION_KEY)); + return pattern.getParameter(INTERFACE_KEY).equals( + value.getParameter(INTERFACE_KEY)) + && isItemMatch(pattern.getParameter(GROUP_KEY), + value.getParameter(GROUP_KEY)) + && isItemMatch(pattern.getParameter(VERSION_KEY), + value.getParameter(VERSION_KEY)); } public static List classifyUrls(List urls, Predicate predicate) { diff --git a/dubbo-common/src/test/java/org/apache/dubbo/common/extension/ExtensionLoaderTest.java b/dubbo-common/src/test/java/org/apache/dubbo/common/extension/ExtensionLoaderTest.java index 12d8aa92af..89312eaf32 100644 --- a/dubbo-common/src/test/java/org/apache/dubbo/common/extension/ExtensionLoaderTest.java +++ b/dubbo-common/src/test/java/org/apache/dubbo/common/extension/ExtensionLoaderTest.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.common.extension; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.extension.activate.ActivateExt1; import org.apache.dubbo.common.extension.activate.impl.ActivateExt1Impl1; @@ -57,6 +56,7 @@ import java.util.HashSet; import java.util.List; import java.util.Set; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; import static org.hamcrest.CoreMatchers.allOf; import static org.hamcrest.CoreMatchers.anyOf; import static org.hamcrest.CoreMatchers.instanceOf; @@ -376,14 +376,14 @@ public class ExtensionLoaderTest { Assertions.assertTrue(list.get(0).getClass() == ActivateExt1Impl1.class); // test group - url = url.addParameter(Constants.GROUP_KEY, "group1"); + url = url.addParameter(GROUP_KEY, "group1"); list = ExtensionLoader.getExtensionLoader(ActivateExt1.class) .getActivateExtension(url, new String[]{}, "group1"); Assertions.assertEquals(1, list.size()); Assertions.assertTrue(list.get(0).getClass() == GroupActivateExtImpl.class); // test old @Activate group - url = url.addParameter(Constants.GROUP_KEY, "old_group"); + url = url.addParameter(GROUP_KEY, "old_group"); list = ExtensionLoader.getExtensionLoader(ActivateExt1.class) .getActivateExtension(url, new String[]{}, "old_group"); Assertions.assertEquals(2, list.size()); @@ -391,8 +391,8 @@ public class ExtensionLoaderTest { || list.get(0).getClass() == OldActivateExt1Impl3.class); // test value - url = url.removeParameter(Constants.GROUP_KEY); - url = url.addParameter(Constants.GROUP_KEY, "value"); + url = url.removeParameter(GROUP_KEY); + url = url.addParameter(GROUP_KEY, "value"); url = url.addParameter("value", "value"); list = ExtensionLoader.getExtensionLoader(ActivateExt1.class) .getActivateExtension(url, new String[]{}, "value"); @@ -401,7 +401,7 @@ public class ExtensionLoaderTest { // test order url = URL.valueOf("test://localhost/test"); - url = url.addParameter(Constants.GROUP_KEY, "order"); + url = url.addParameter(GROUP_KEY, "order"); list = ExtensionLoader.getExtensionLoader(ActivateExt1.class) .getActivateExtension(url, new String[]{}, "order"); Assertions.assertEquals(2, list.size()); diff --git a/dubbo-common/src/test/java/org/apache/dubbo/common/threadpool/support/cached/CachedThreadPoolTest.java b/dubbo-common/src/test/java/org/apache/dubbo/common/threadpool/support/cached/CachedThreadPoolTest.java index 763cd0fdfe..2754635f0e 100644 --- a/dubbo-common/src/test/java/org/apache/dubbo/common/threadpool/support/cached/CachedThreadPoolTest.java +++ b/dubbo-common/src/test/java/org/apache/dubbo/common/threadpool/support/cached/CachedThreadPoolTest.java @@ -17,11 +17,11 @@ package org.apache.dubbo.common.threadpool.support.cached; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.threadlocal.InternalThread; import org.apache.dubbo.common.threadpool.ThreadPool; import org.apache.dubbo.common.threadpool.support.AbortPolicyWithReport; + import org.hamcrest.Matchers; import org.junit.jupiter.api.Test; @@ -31,22 +31,26 @@ import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.RejectedExecutionHandler; import java.util.concurrent.SynchronousQueue; import java.util.concurrent.ThreadPoolExecutor; -import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.ALIVE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.CORE_THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.QUEUES_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREAD_NAME_KEY; +import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.instanceOf; import static org.hamcrest.Matchers.is; import static org.hamcrest.Matchers.startsWith; -import static org.hamcrest.MatcherAssert.assertThat; public class CachedThreadPoolTest { @Test public void getExecutor1() throws Exception { URL url = URL.valueOf("dubbo://10.20.130.230:20880/context/path?" + - Constants.THREAD_NAME_KEY + "=demo&" + - Constants.CORE_THREADS_KEY + "=1&" + - Constants.THREADS_KEY + "=2&" + - Constants.ALIVE_KEY + "=1000&" + - Constants.QUEUES_KEY + "=0"); + THREAD_NAME_KEY + "=demo&" + + CORE_THREADS_KEY + "=1&" + + THREADS_KEY + "=2&" + + ALIVE_KEY + "=1000&" + + QUEUES_KEY + "=0"); ThreadPool threadPool = new CachedThreadPool(); ThreadPoolExecutor executor = (ThreadPoolExecutor) threadPool.getExecutor(url); assertThat(executor.getCorePoolSize(), is(1)); @@ -72,7 +76,7 @@ public class CachedThreadPoolTest { @Test public void getExecutor2() throws Exception { - URL url = URL.valueOf("dubbo://10.20.130.230:20880/context/path?" + Constants.QUEUES_KEY + "=1"); + URL url = URL.valueOf("dubbo://10.20.130.230:20880/context/path?" + QUEUES_KEY + "=1"); ThreadPool threadPool = new CachedThreadPool(); ThreadPoolExecutor executor = (ThreadPoolExecutor) threadPool.getExecutor(url); assertThat(executor.getQueue(), Matchers.>instanceOf(LinkedBlockingQueue.class)); diff --git a/dubbo-common/src/test/java/org/apache/dubbo/common/threadpool/support/eager/EagerThreadPoolTest.java b/dubbo-common/src/test/java/org/apache/dubbo/common/threadpool/support/eager/EagerThreadPoolTest.java index 2884c73e8c..95e41875bc 100644 --- a/dubbo-common/src/test/java/org/apache/dubbo/common/threadpool/support/eager/EagerThreadPoolTest.java +++ b/dubbo-common/src/test/java/org/apache/dubbo/common/threadpool/support/eager/EagerThreadPoolTest.java @@ -17,11 +17,11 @@ package org.apache.dubbo.common.threadpool.support.eager; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.threadlocal.InternalThread; import org.apache.dubbo.common.threadpool.ThreadPool; import org.apache.dubbo.common.threadpool.support.AbortPolicyWithReport; + import org.hamcrest.Matchers; import org.junit.jupiter.api.Test; @@ -31,20 +31,25 @@ import java.util.concurrent.RejectedExecutionHandler; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.ALIVE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.CORE_THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.QUEUES_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREAD_NAME_KEY; +import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.instanceOf; import static org.hamcrest.Matchers.is; import static org.hamcrest.Matchers.startsWith; -import static org.hamcrest.MatcherAssert.assertThat; public class EagerThreadPoolTest { @Test public void getExecutor1() throws Exception { URL url = URL.valueOf("dubbo://10.20.130.230:20880/context/path?" + - Constants.THREAD_NAME_KEY + "=demo&" + - Constants.CORE_THREADS_KEY + "=1&" + - Constants.THREADS_KEY + "=2&" + - Constants.ALIVE_KEY + "=1000&" + - Constants.QUEUES_KEY + "=0"); + THREAD_NAME_KEY + "=demo&" + + CORE_THREADS_KEY + "=1&" + + THREADS_KEY + "=2&" + + ALIVE_KEY + "=1000&" + + QUEUES_KEY + "=0"); ThreadPool threadPool = new EagerThreadPool(); ThreadPoolExecutor executor = (ThreadPoolExecutor) threadPool.getExecutor(url); assertThat(executor, instanceOf(EagerThreadPoolExecutor.class)); @@ -73,7 +78,7 @@ public class EagerThreadPoolTest { @Test public void getExecutor2() throws Exception { - URL url = URL.valueOf("dubbo://10.20.130.230:20880/context/path?" + Constants.QUEUES_KEY + "=2"); + URL url = URL.valueOf("dubbo://10.20.130.230:20880/context/path?" + QUEUES_KEY + "=2"); ThreadPool threadPool = new EagerThreadPool(); ThreadPoolExecutor executor = (ThreadPoolExecutor) threadPool.getExecutor(url); assertThat(executor.getQueue().remainingCapacity(), is(2)); diff --git a/dubbo-common/src/test/java/org/apache/dubbo/common/threadpool/support/fixed/FixedThreadPoolTest.java b/dubbo-common/src/test/java/org/apache/dubbo/common/threadpool/support/fixed/FixedThreadPoolTest.java index f1324b18d8..ff8ac9225f 100644 --- a/dubbo-common/src/test/java/org/apache/dubbo/common/threadpool/support/fixed/FixedThreadPoolTest.java +++ b/dubbo-common/src/test/java/org/apache/dubbo/common/threadpool/support/fixed/FixedThreadPoolTest.java @@ -17,12 +17,11 @@ package org.apache.dubbo.common.threadpool.support.fixed; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.threadlocal.InternalThread; import org.apache.dubbo.common.threadpool.ThreadPool; import org.apache.dubbo.common.threadpool.support.AbortPolicyWithReport; -import org.apache.dubbo.common.threadpool.support.limited.LimitedThreadPool; + import org.hamcrest.Matchers; import org.junit.jupiter.api.Test; @@ -34,19 +33,23 @@ import java.util.concurrent.SynchronousQueue; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.CORE_THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.QUEUES_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREAD_NAME_KEY; +import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.instanceOf; import static org.hamcrest.Matchers.is; import static org.hamcrest.Matchers.startsWith; -import static org.hamcrest.MatcherAssert.assertThat; public class FixedThreadPoolTest { @Test public void getExecutor1() throws Exception { URL url = URL.valueOf("dubbo://10.20.130.230:20880/context/path?" + - Constants.THREAD_NAME_KEY + "=demo&" + - Constants.CORE_THREADS_KEY + "=1&" + - Constants.THREADS_KEY + "=2&" + - Constants.QUEUES_KEY + "=0"); + THREAD_NAME_KEY + "=demo&" + + CORE_THREADS_KEY + "=1&" + + THREADS_KEY + "=2&" + + QUEUES_KEY + "=0"); ThreadPool threadPool = new FixedThreadPool(); ThreadPoolExecutor executor = (ThreadPoolExecutor) threadPool.getExecutor(url); assertThat(executor.getCorePoolSize(), is(2)); @@ -73,7 +76,7 @@ public class FixedThreadPoolTest { @Test public void getExecutor2() throws Exception { - URL url = URL.valueOf("dubbo://10.20.130.230:20880/context/path?" + Constants.QUEUES_KEY + "=1"); + URL url = URL.valueOf("dubbo://10.20.130.230:20880/context/path?" + QUEUES_KEY + "=1"); ThreadPool threadPool = new FixedThreadPool(); ThreadPoolExecutor executor = (ThreadPoolExecutor) threadPool.getExecutor(url); assertThat(executor.getQueue(), Matchers.>instanceOf(LinkedBlockingQueue.class)); diff --git a/dubbo-common/src/test/java/org/apache/dubbo/common/threadpool/support/limited/LimitedThreadPoolTest.java b/dubbo-common/src/test/java/org/apache/dubbo/common/threadpool/support/limited/LimitedThreadPoolTest.java index bb1465773b..4878d3546c 100644 --- a/dubbo-common/src/test/java/org/apache/dubbo/common/threadpool/support/limited/LimitedThreadPoolTest.java +++ b/dubbo-common/src/test/java/org/apache/dubbo/common/threadpool/support/limited/LimitedThreadPoolTest.java @@ -17,11 +17,11 @@ package org.apache.dubbo.common.threadpool.support.limited; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.threadlocal.InternalThread; import org.apache.dubbo.common.threadpool.ThreadPool; import org.apache.dubbo.common.threadpool.support.AbortPolicyWithReport; + import org.hamcrest.Matchers; import org.junit.jupiter.api.Test; @@ -31,21 +31,24 @@ import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.RejectedExecutionHandler; import java.util.concurrent.SynchronousQueue; import java.util.concurrent.ThreadPoolExecutor; -import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.CORE_THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.QUEUES_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREAD_NAME_KEY; +import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.instanceOf; import static org.hamcrest.Matchers.is; import static org.hamcrest.Matchers.startsWith; -import static org.hamcrest.MatcherAssert.assertThat; public class LimitedThreadPoolTest { @Test public void getExecutor1() throws Exception { URL url = URL.valueOf("dubbo://10.20.130.230:20880/context/path?" + - Constants.THREAD_NAME_KEY + "=demo&" + - Constants.CORE_THREADS_KEY + "=1&" + - Constants.THREADS_KEY + "=2&" + - Constants.QUEUES_KEY + "=0"); + THREAD_NAME_KEY + "=demo&" + + CORE_THREADS_KEY + "=1&" + + THREADS_KEY + "=2&" + + QUEUES_KEY + "=0"); ThreadPool threadPool = new LimitedThreadPool(); ThreadPoolExecutor executor = (ThreadPoolExecutor) threadPool.getExecutor(url); assertThat(executor.getCorePoolSize(), is(1)); @@ -71,7 +74,7 @@ public class LimitedThreadPoolTest { @Test public void getExecutor2() throws Exception { - URL url = URL.valueOf("dubbo://10.20.130.230:20880/context/path?" + Constants.QUEUES_KEY + "=1"); + URL url = URL.valueOf("dubbo://10.20.130.230:20880/context/path?" + QUEUES_KEY + "=1"); ThreadPool threadPool = new LimitedThreadPool(); ThreadPoolExecutor executor = (ThreadPoolExecutor) threadPool.getExecutor(url); assertThat(executor.getQueue(), Matchers.>instanceOf(LinkedBlockingQueue.class)); diff --git a/dubbo-common/src/test/java/org/apache/dubbo/common/utils/CIDRUtilsTest.java b/dubbo-common/src/test/java/org/apache/dubbo/common/utils/CIDRUtilsTest.java index d0c627d174..89e023f72b 100644 --- a/dubbo-common/src/test/java/org/apache/dubbo/common/utils/CIDRUtilsTest.java +++ b/dubbo-common/src/test/java/org/apache/dubbo/common/utils/CIDRUtilsTest.java @@ -21,9 +21,6 @@ import org.junit.jupiter.api.Test; import java.net.UnknownHostException; -/** - * @author cvictory ON 2019-02-28 - */ public class CIDRUtilsTest { @Test diff --git a/dubbo-common/src/test/java/org/apache/dubbo/common/utils/ConfigUtilsTest.java b/dubbo-common/src/test/java/org/apache/dubbo/common/utils/ConfigUtilsTest.java index 7e9a490477..b8c7a73793 100644 --- a/dubbo-common/src/test/java/org/apache/dubbo/common/utils/ConfigUtilsTest.java +++ b/dubbo-common/src/test/java/org/apache/dubbo/common/utils/ConfigUtilsTest.java @@ -16,8 +16,9 @@ */ package org.apache.dubbo.common.utils; -import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.threadpool.ThreadPool; + import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeEach; @@ -29,12 +30,12 @@ import java.util.List; import java.util.Properties; import static java.util.Arrays.asList; +import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.containsString; import static org.hamcrest.Matchers.equalTo; import static org.hamcrest.Matchers.greaterThan; import static org.hamcrest.Matchers.is; import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.hamcrest.MatcherAssert.assertThat; public class ConfigUtilsTest { @BeforeEach @@ -119,19 +120,19 @@ public class ConfigUtilsTest { @Test public void testGetProperties1() throws Exception { try { - System.setProperty(Constants.DUBBO_PROPERTIES_KEY, "properties.load"); + System.setProperty(CommonConstants.DUBBO_PROPERTIES_KEY, "properties.load"); Properties p = ConfigUtils.getProperties(); assertThat((String) p.get("a"), equalTo("12")); assertThat((String) p.get("b"), equalTo("34")); assertThat((String) p.get("c"), equalTo("56")); } finally { - System.clearProperty(Constants.DUBBO_PROPERTIES_KEY); + System.clearProperty(CommonConstants.DUBBO_PROPERTIES_KEY); } } @Test public void testGetProperties2() throws Exception { - System.clearProperty(Constants.DUBBO_PROPERTIES_KEY); + System.clearProperty(CommonConstants.DUBBO_PROPERTIES_KEY); Properties p = ConfigUtils.getProperties(); assertThat((String) p.get("dubbo"), equalTo("properties")); } @@ -256,4 +257,4 @@ public class ConfigUtilsTest { public void testGetPid() throws Exception { assertThat(ConfigUtils.getPid(), greaterThan(0)); } -} \ No newline at end of file +} diff --git a/dubbo-common/src/test/java/org/apache/dubbo/common/utils/ExecutorUtilTest.java b/dubbo-common/src/test/java/org/apache/dubbo/common/utils/ExecutorUtilTest.java index 2ef0f4a2a4..2653eae4f0 100644 --- a/dubbo-common/src/test/java/org/apache/dubbo/common/utils/ExecutorUtilTest.java +++ b/dubbo-common/src/test/java/org/apache/dubbo/common/utils/ExecutorUtilTest.java @@ -17,8 +17,8 @@ package org.apache.dubbo.common.utils; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; + import org.junit.jupiter.api.Test; import org.mockito.Mockito; @@ -26,9 +26,10 @@ import java.util.concurrent.Executor; import java.util.concurrent.ExecutorService; import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.THREAD_NAME_KEY; +import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.equalTo; import static org.hamcrest.Matchers.is; -import static org.hamcrest.MatcherAssert.assertThat; import static org.mockito.Mockito.atLeast; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; @@ -76,8 +77,8 @@ public class ExecutorUtilTest { @Test public void testSetThreadName() throws Exception { - URL url = new URL("dubbo", "localhost", 1234).addParameter(Constants.THREAD_NAME_KEY, "custom-thread"); + URL url = new URL("dubbo", "localhost", 1234).addParameter(THREAD_NAME_KEY, "custom-thread"); url = ExecutorUtil.setThreadName(url, "default-name"); - assertThat(url.getParameter(Constants.THREAD_NAME_KEY), equalTo("custom-thread-localhost:1234")); + assertThat(url.getParameter(THREAD_NAME_KEY), equalTo("custom-thread-localhost:1234")); } } diff --git a/dubbo-common/src/test/java/org/apache/dubbo/common/utils/StringUtilsTest.java b/dubbo-common/src/test/java/org/apache/dubbo/common/utils/StringUtilsTest.java index 384c957bb2..632c999ae6 100644 --- a/dubbo-common/src/test/java/org/apache/dubbo/common/utils/StringUtilsTest.java +++ b/dubbo-common/src/test/java/org/apache/dubbo/common/utils/StringUtilsTest.java @@ -16,8 +16,6 @@ */ package org.apache.dubbo.common.utils; -import org.apache.dubbo.common.Constants; - import org.junit.jupiter.api.Test; import java.util.ArrayList; @@ -26,6 +24,9 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.containsString; import static org.hamcrest.Matchers.equalTo; @@ -193,9 +194,9 @@ public class StringUtilsTest { @Test public void testGetServiceKey() throws Exception { Map map = new HashMap(); - map.put(Constants.GROUP_KEY, "dubbo"); - map.put(Constants.INTERFACE_KEY, "a.b.c.Foo"); - map.put(Constants.VERSION_KEY, "1.0.0"); + map.put(GROUP_KEY, "dubbo"); + map.put(INTERFACE_KEY, "a.b.c.Foo"); + map.put(VERSION_KEY, "1.0.0"); assertThat(StringUtils.getServiceKey(map), equalTo("dubbo/a.b.c.Foo:1.0.0")); } @@ -295,4 +296,4 @@ public class StringUtilsTest { assertEquals("bi-side blank", StringUtils.trim(" bi-side blank ")); } -} \ No newline at end of file +} diff --git a/dubbo-common/src/test/java/org/apache/dubbo/common/utils/UrlUtilsTest.java b/dubbo-common/src/test/java/org/apache/dubbo/common/utils/UrlUtilsTest.java index 2da27fea76..70800a71fc 100644 --- a/dubbo-common/src/test/java/org/apache/dubbo/common/utils/UrlUtilsTest.java +++ b/dubbo-common/src/test/java/org/apache/dubbo/common/utils/UrlUtilsTest.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.common.utils; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.junit.jupiter.api.Test; @@ -28,11 +27,14 @@ import java.util.List; import java.util.Map; import java.util.Set; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; +import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.equalTo; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertNull; -import static org.hamcrest.MatcherAssert.assertThat; import static org.junit.jupiter.api.Assertions.assertTrue; public class UrlUtilsTest { @@ -331,16 +333,16 @@ public class UrlUtilsTest { @Test public void testIsServiceKeyMatch() throws Exception { URL url = URL.valueOf("test://127.0.0.1"); - URL pattern = url.addParameter(Constants.GROUP_KEY, "test") - .addParameter(Constants.INTERFACE_KEY, "test") - .addParameter(Constants.VERSION_KEY, "test"); + URL pattern = url.addParameter(GROUP_KEY, "test") + .addParameter(INTERFACE_KEY, "test") + .addParameter(VERSION_KEY, "test"); URL value = pattern; assertTrue(UrlUtils.isServiceKeyMatch(pattern, value)); - pattern = pattern.addParameter(Constants.GROUP_KEY, "*"); + pattern = pattern.addParameter(GROUP_KEY, "*"); assertTrue(UrlUtils.isServiceKeyMatch(pattern, value)); - pattern = pattern.addParameter(Constants.VERSION_KEY, "*"); + pattern = pattern.addParameter(VERSION_KEY, "*"); assertTrue(UrlUtils.isServiceKeyMatch(pattern, value)); } @@ -361,4 +363,4 @@ public class UrlUtilsTest { assertTrue(UrlUtils.isMatchGlobPattern("v*e", "value")); assertTrue(UrlUtils.isMatchGlobPattern("$key", "value", URL.valueOf("dubbo://localhost:8080/Foo?key=v*e"))); } -} \ No newline at end of file +} diff --git a/dubbo-compatible/src/main/java/com/alibaba/dubbo/cache/support/AbstractCacheFactory.java b/dubbo-compatible/src/main/java/com/alibaba/dubbo/cache/support/AbstractCacheFactory.java index 26aa6e3160..e7a05fdebb 100644 --- a/dubbo-compatible/src/main/java/com/alibaba/dubbo/cache/support/AbstractCacheFactory.java +++ b/dubbo-compatible/src/main/java/com/alibaba/dubbo/cache/support/AbstractCacheFactory.java @@ -19,13 +19,14 @@ package com.alibaba.dubbo.cache.support; import com.alibaba.dubbo.cache.Cache; import com.alibaba.dubbo.cache.CacheFactory; -import com.alibaba.dubbo.common.Constants; import com.alibaba.dubbo.common.URL; import com.alibaba.dubbo.rpc.Invocation; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; +import static org.apache.dubbo.common.constants.CommonConstants.METHOD_KEY; + @Deprecated public abstract class AbstractCacheFactory implements CacheFactory { @@ -33,7 +34,7 @@ public abstract class AbstractCacheFactory implements CacheFactory { @Override public Cache getCache(URL url, Invocation invocation) { - url = url.addParameter(Constants.METHOD_KEY, invocation.getMethodName()); + url = url.addParameter(METHOD_KEY, invocation.getMethodName()); String key = url.toFullString(); Cache cache = caches.get(key); if (cache == null) { diff --git a/dubbo-compatible/src/test/java/org/apache/dubbo/config/ApplicationConfigTest.java b/dubbo-compatible/src/test/java/org/apache/dubbo/config/ApplicationConfigTest.java index 49966db9e0..c7998b2145 100644 --- a/dubbo-compatible/src/test/java/org/apache/dubbo/config/ApplicationConfigTest.java +++ b/dubbo-compatible/src/test/java/org/apache/dubbo/config/ApplicationConfigTest.java @@ -21,7 +21,6 @@ import com.alibaba.dubbo.common.Constants; import com.alibaba.dubbo.config.ApplicationConfig; import com.alibaba.dubbo.config.MonitorConfig; import com.alibaba.dubbo.config.RegistryConfig; - import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; @@ -29,13 +28,15 @@ import java.util.Collections; import java.util.HashMap; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DUMP_DIRECTORY; +import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.contains; import static org.hamcrest.Matchers.equalTo; import static org.hamcrest.Matchers.hasEntry; import static org.hamcrest.Matchers.is; import static org.hamcrest.Matchers.sameInstance; import static org.hamcrest.collection.IsCollectionWithSize.hasSize; -import static org.hamcrest.MatcherAssert.assertThat; public class ApplicationConfigTest { @Test @@ -47,7 +48,7 @@ public class ApplicationConfigTest { assertThat(application.getName(), equalTo("app2")); Map parameters = new HashMap(); ApplicationConfig.appendParameters(parameters, application); - assertThat(parameters, hasEntry(Constants.APPLICATION_KEY, "app2")); + assertThat(parameters, hasEntry(APPLICATION_KEY, "app2")); } @Test @@ -141,7 +142,7 @@ public class ApplicationConfigTest { assertThat(application.getDumpDirectory(), equalTo("/dump")); Map parameters = new HashMap(); ApplicationConfig.appendParameters(parameters, application); - assertThat(parameters, hasEntry(Constants.DUMP_DIRECTORY, "/dump")); + assertThat(parameters, hasEntry(DUMP_DIRECTORY, "/dump")); } @Test @@ -181,4 +182,4 @@ public class ApplicationConfigTest { assertThat(parameters, hasEntry("k1", "v1")); assertThat(parameters, hasEntry(Constants.ACCEPT_FOREIGN_IP, "true")); } -} \ No newline at end of file +} diff --git a/dubbo-compatible/src/test/java/org/apache/dubbo/filter/LegacyInvocation.java b/dubbo-compatible/src/test/java/org/apache/dubbo/filter/LegacyInvocation.java index a4b5a28c4a..97c01af3e0 100644 --- a/dubbo-compatible/src/test/java/org/apache/dubbo/filter/LegacyInvocation.java +++ b/dubbo-compatible/src/test/java/org/apache/dubbo/filter/LegacyInvocation.java @@ -24,6 +24,12 @@ import com.alibaba.dubbo.rpc.Invoker; import java.util.HashMap; import java.util.Map; +import static org.apache.dubbo.common.Constants.DUBBO_VERSION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * MockInvocation.java */ @@ -49,12 +55,12 @@ public class LegacyInvocation implements Invocation { public Map getAttachments() { Map attachments = new HashMap(); - attachments.put(Constants.PATH_KEY, "dubbo"); - attachments.put(Constants.GROUP_KEY, "dubbo"); - attachments.put(Constants.VERSION_KEY, "1.0.0"); - attachments.put(Constants.DUBBO_VERSION_KEY, "1.0.0"); + attachments.put(PATH_KEY, "dubbo"); + attachments.put(GROUP_KEY, "dubbo"); + attachments.put(VERSION_KEY, "1.0.0"); + attachments.put(DUBBO_VERSION_KEY, "1.0.0"); attachments.put(Constants.TOKEN_KEY, "sfag"); - attachments.put(Constants.TIMEOUT_KEY, "1000"); + attachments.put(TIMEOUT_KEY, "1000"); return attachments; } @@ -70,4 +76,4 @@ public class LegacyInvocation implements Invocation { return getAttachments().get(key); } -} \ No newline at end of file +} diff --git a/dubbo-compatible/src/test/java/org/apache/dubbo/service/MockInvocation.java b/dubbo-compatible/src/test/java/org/apache/dubbo/service/MockInvocation.java index 148b5bce5f..5655f26a7b 100644 --- a/dubbo-compatible/src/test/java/org/apache/dubbo/service/MockInvocation.java +++ b/dubbo-compatible/src/test/java/org/apache/dubbo/service/MockInvocation.java @@ -23,6 +23,11 @@ import org.apache.dubbo.rpc.Invoker; import java.util.HashMap; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * MockInvocation.java */ @@ -48,12 +53,12 @@ public class MockInvocation implements Invocation { public Map getAttachments() { Map attachments = new HashMap(); - attachments.put(Constants.PATH_KEY, "dubbo"); - attachments.put(Constants.GROUP_KEY, "dubbo"); - attachments.put(Constants.VERSION_KEY, "1.0.0"); + attachments.put(PATH_KEY, "dubbo"); + attachments.put(GROUP_KEY, "dubbo"); + attachments.put(VERSION_KEY, "1.0.0"); attachments.put(Constants.DUBBO_VERSION_KEY, "1.0.0"); attachments.put(Constants.TOKEN_KEY, "sfag"); - attachments.put(Constants.TIMEOUT_KEY, "1000"); + attachments.put(TIMEOUT_KEY, "1000"); return attachments; } @@ -69,4 +74,4 @@ public class MockInvocation implements Invocation { return getAttachments().get(key); } -} \ No newline at end of file +} 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 50fb55ed0a..246694822a 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 @@ -16,11 +16,11 @@ */ package org.apache.dubbo.config; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.config.CompositeConfiguration; import org.apache.dubbo.common.config.Environment; import org.apache.dubbo.common.config.InmemoryConfiguration; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.ExtensionLoader; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -42,6 +42,9 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; import java.util.stream.Collectors; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.REMOVE_VALUE_PREFIX; + /** * Utility methods and public methods for parsing configuration * @@ -175,7 +178,7 @@ public abstract class AbstractConfig implements Serializable { str = URL.encode(str); } if (parameter != null && parameter.append()) { - String pre = parameters.get(Constants.DEFAULT_KEY + "." + key); + String pre = parameters.get(DEFAULT_KEY + "." + key); if (pre != null && pre.length() > 0) { str = pre + "," + str; } @@ -314,10 +317,10 @@ public abstract class AbstractConfig implements Serializable { if (StringUtils.isNotEmpty(value)) { String[] values = value.split("\\s*[,]+\\s*"); for (String v : values) { - if (v.startsWith(Constants.REMOVE_VALUE_PREFIX)) { + if (v.startsWith(REMOVE_VALUE_PREFIX)) { v = v.substring(1); } - if (Constants.DEFAULT_KEY.equals(v)) { + if (DEFAULT_KEY.equals(v)) { continue; } if (!ExtensionLoader.getExtensionLoader(type).hasExtension(v)) { @@ -529,7 +532,7 @@ public abstract class AbstractConfig implements Serializable { @Parameter(excluded = true) public String getPrefix() { - return StringUtils.isNotEmpty(prefix) ? prefix : (Constants.DUBBO + "." + getTagName(this.getClass())); + return StringUtils.isNotEmpty(prefix) ? prefix : (CommonConstants.DUBBO + "." + getTagName(this.getClass())); } public void setPrefix(String prefix) { 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 ca21e4b3a7..b571eababd 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 @@ -54,6 +54,16 @@ import java.util.Map; import java.util.Set; import static org.apache.dubbo.common.config.ConfigurationUtils.parseProperties; +import static org.apache.dubbo.common.constants.CommonConstants.ANYHOST_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SEPARATOR; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; +import static org.apache.dubbo.common.constants.CommonConstants.FILE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PID_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PROTOCOL_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.RELEASE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMESTAMP_KEY; import static org.apache.dubbo.common.extension.ExtensionLoader.getExtensionLoader; /** @@ -298,16 +308,16 @@ public abstract class AbstractInterfaceConfig extends AbstractMethodConfig { for (RegistryConfig config : registries) { String address = config.getAddress(); if (StringUtils.isEmpty(address)) { - address = Constants.ANYHOST_VALUE; + address = ANYHOST_VALUE; } if (!RegistryConfig.NO_AVAILABLE.equalsIgnoreCase(address)) { Map map = new HashMap(); appendParameters(map, application); appendParameters(map, config); - map.put(Constants.PATH_KEY, RegistryService.class.getName()); + map.put(PATH_KEY, RegistryService.class.getName()); appendRuntimeParameters(map); - if (!map.containsKey(Constants.PROTOCOL_KEY)) { - map.put(Constants.PROTOCOL_KEY, Constants.DUBBO_PROTOCOL); + if (!map.containsKey(PROTOCOL_KEY)) { + map.put(PROTOCOL_KEY, Constants.DUBBO_PROTOCOL); } List urls = UrlUtils.parseURLs(address, map); @@ -337,7 +347,7 @@ public abstract class AbstractInterfaceConfig extends AbstractMethodConfig { protected URL loadMonitor(URL registryURL) { checkMonitor(); Map map = new HashMap(); - map.put(Constants.INTERFACE_KEY, MonitorService.class.getName()); + map.put(INTERFACE_KEY, MonitorService.class.getName()); appendRuntimeParameters(map); //set ip String hostToRegistry = ConfigUtils.getSystemProperty(Constants.DUBBO_IP_TO_REGISTRY); @@ -356,18 +366,18 @@ public abstract class AbstractInterfaceConfig extends AbstractMethodConfig { address = sysaddress; } if (ConfigUtils.isNotEmpty(address)) { - if (!map.containsKey(Constants.PROTOCOL_KEY)) { + if (!map.containsKey(PROTOCOL_KEY)) { if (getExtensionLoader(MonitorFactory.class).hasExtension(Constants.LOGSTAT_PROTOCOL)) { - map.put(Constants.PROTOCOL_KEY, Constants.LOGSTAT_PROTOCOL); + map.put(PROTOCOL_KEY, Constants.LOGSTAT_PROTOCOL); } else { - map.put(Constants.PROTOCOL_KEY, Constants.DUBBO_PROTOCOL); + map.put(PROTOCOL_KEY, Constants.DUBBO_PROTOCOL); } } return UrlUtils.parseURL(address, map); } else if (Constants.REGISTRY_PROTOCOL.equals(monitor.getProtocol()) && registryURL != null) { return URLBuilder.from(registryURL) .setProtocol(Constants.DUBBO_PROTOCOL) - .addParameter(Constants.PROTOCOL_KEY, Constants.REGISTRY_PROTOCOL) + .addParameter(PROTOCOL_KEY, Constants.REGISTRY_PROTOCOL) .addParameterAndEncoded(Constants.REFER_KEY, StringUtils.toQueryString(map)) .build(); } @@ -376,10 +386,10 @@ public abstract class AbstractInterfaceConfig extends AbstractMethodConfig { static void appendRuntimeParameters(Map map) { map.put(Constants.DUBBO_VERSION_KEY, Version.getProtocolVersion()); - map.put(Constants.RELEASE_KEY, Version.getVersion()); - map.put(Constants.TIMESTAMP_KEY, String.valueOf(System.currentTimeMillis())); + map.put(RELEASE_KEY, Version.getVersion()); + map.put(TIMESTAMP_KEY, String.valueOf(System.currentTimeMillis())); if (ConfigUtils.getPid() > 0) { - map.put(Constants.PID_KEY, String.valueOf(ConfigUtils.getPid())); + map.put(PID_KEY, String.valueOf(ConfigUtils.getPid())); } } @@ -519,7 +529,7 @@ public abstract class AbstractInterfaceConfig extends AbstractMethodConfig { configedRegistries.addAll(getSubProperties(Environment.getInstance().getAppExternalConfigurationMap(), Constants.REGISTRIES_SUFFIX)); - registryIds = String.join(Constants.COMMA_SEPARATOR, configedRegistries); + registryIds = String.join(COMMA_SEPARATOR, configedRegistries); } if (StringUtils.isEmpty(registryIds)) { @@ -535,7 +545,7 @@ public abstract class AbstractInterfaceConfig extends AbstractMethodConfig { ); } } else { - String[] ids = Constants.COMMA_SPLIT_PATTERN.split(registryIds); + String[] ids = COMMA_SPLIT_PATTERN.split(registryIds); List tmpRegistries = CollectionUtils.isNotEmpty(registries) ? registries : new ArrayList<>(); Arrays.stream(ids).forEach(id -> { if (tmpRegistries.stream().noneMatch(reg -> reg.getId().equals(id))) { @@ -678,7 +688,7 @@ public abstract class AbstractInterfaceConfig extends AbstractMethodConfig { } public void setFilter(String filter) { - checkMultiExtension(Filter.class, Constants.FILE_KEY, filter); + checkMultiExtension(Filter.class, FILE_KEY, filter); this.filter = filter; } 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 75281e965e..69f0a69c8e 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 @@ -22,6 +22,9 @@ import org.apache.dubbo.config.support.Parameter; import org.apache.dubbo.rpc.InvokerListener; import org.apache.dubbo.rpc.support.ProtocolUtils; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * AbstractConsumerConfig * @@ -203,7 +206,7 @@ public abstract class AbstractReferenceConfig extends AbstractInterfaceConfig { } public void setVersion(String version) { - checkKey(Constants.VERSION_KEY, version); + checkKey(VERSION_KEY, version); this.version = version; } @@ -212,7 +215,7 @@ public abstract class AbstractReferenceConfig extends AbstractInterfaceConfig { } public void setGroup(String group) { - checkKey(Constants.GROUP_KEY, group); + checkKey(GROUP_KEY, group); this.group = group; } } diff --git a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractServiceConfig.java b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractServiceConfig.java index 35607fad2f..636039ffd7 100644 --- a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractServiceConfig.java +++ b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractServiceConfig.java @@ -26,6 +26,9 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * AbstractServiceConfig * @@ -116,7 +119,7 @@ public abstract class AbstractServiceConfig extends AbstractInterfaceConfig { } public void setVersion(String version) { - checkKey(Constants.VERSION_KEY, version); + checkKey(VERSION_KEY, version); this.version = version; } @@ -125,7 +128,7 @@ public abstract class AbstractServiceConfig extends AbstractInterfaceConfig { } public void setGroup(String group) { - checkKey(Constants.GROUP_KEY, group); + checkKey(GROUP_KEY, group); this.group = group; } diff --git a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ApplicationConfig.java b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ApplicationConfig.java index 2775d0de51..1aa364a0b7 100644 --- a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ApplicationConfig.java +++ b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ApplicationConfig.java @@ -27,6 +27,9 @@ import java.util.ArrayList; import java.util.List; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DUMP_DIRECTORY; + /** * The application info @@ -130,7 +133,7 @@ public class ApplicationConfig extends AbstractConfig { setName(name); } - @Parameter(key = Constants.APPLICATION_KEY, required = true, useKeyAsProperty = false) + @Parameter(key = APPLICATION_KEY, required = true, useKeyAsProperty = false) public String getName() { return name; } @@ -267,7 +270,7 @@ public class ApplicationConfig extends AbstractConfig { this.isDefault = isDefault; } - @Parameter(key = Constants.DUMP_DIRECTORY) + @Parameter(key = DUMP_DIRECTORY) public String getDumpDirectory() { return dumpDirectory; } @@ -327,4 +330,4 @@ public class ApplicationConfig extends AbstractConfig { return !StringUtils.isEmpty(name); } -} \ No newline at end of file +} diff --git a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ConfigCenterConfig.java b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ConfigCenterConfig.java index 45677bf2bd..6870b1aaa5 100644 --- a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ConfigCenterConfig.java +++ b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ConfigCenterConfig.java @@ -26,6 +26,10 @@ import org.apache.dubbo.config.support.Parameter; import java.util.Map; import java.util.concurrent.atomic.AtomicBoolean; +import static org.apache.dubbo.common.constants.CommonConstants.ANYHOST_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PROTOCOL_KEY; + /** * ConfigCenterConfig */ @@ -56,12 +60,12 @@ public class ConfigCenterConfig extends AbstractConfig { public URL toUrl() { Map map = this.getMetaData(); if (StringUtils.isEmpty(address)) { - address = Constants.ANYHOST_VALUE; + address = ANYHOST_VALUE; } - map.put(Constants.PATH_KEY, ConfigCenterConfig.class.getSimpleName()); + map.put(PATH_KEY, ConfigCenterConfig.class.getSimpleName()); // use 'zookeeper' as the default configcenter. - if (StringUtils.isEmpty(map.get(Constants.PROTOCOL_KEY))) { - map.put(Constants.PROTOCOL_KEY, Constants.ZOOKEEPER_PROTOCOL); + if (StringUtils.isEmpty(map.get(PROTOCOL_KEY))) { + map.put(PROTOCOL_KEY, Constants.ZOOKEEPER_PROTOCOL); } return UrlUtils.parseURL(address, map); } diff --git a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/MetadataReportConfig.java b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/MetadataReportConfig.java index e7add0a0e8..a7c72f6f41 100644 --- a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/MetadataReportConfig.java +++ b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/MetadataReportConfig.java @@ -16,13 +16,13 @@ */ package org.apache.dubbo.config; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.utils.StringUtils; import org.apache.dubbo.config.support.Parameter; import java.util.Map; -import static org.apache.dubbo.common.Constants.PROPERTIES_CHAR_SEPERATOR; +import static org.apache.dubbo.common.constants.CommonConstants.DUBBO; +import static org.apache.dubbo.common.constants.CommonConstants.PROPERTIES_CHAR_SEPERATOR; /** * MetadataReportConfig @@ -158,7 +158,7 @@ public class MetadataReportConfig extends AbstractConfig { @Override @Parameter(excluded = true) public String getPrefix() { - return StringUtils.isNotEmpty(prefix) ? prefix : (Constants.DUBBO + "." + PREFIX_TAG); + return StringUtils.isNotEmpty(prefix) ? prefix : (DUBBO + "." + PREFIX_TAG); } @Override diff --git a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/MethodConfig.java b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/MethodConfig.java index c9478d45ca..0bc989fb3c 100644 --- a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/MethodConfig.java +++ b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/MethodConfig.java @@ -17,6 +17,7 @@ package org.apache.dubbo.config; import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.utils.StringUtils; import org.apache.dubbo.config.annotation.Method; import org.apache.dubbo.config.support.Parameter; @@ -318,7 +319,7 @@ public class MethodConfig extends AbstractMethodConfig { @Override @Parameter(excluded = true) public String getPrefix() { - return Constants.DUBBO + "." + service + return CommonConstants.DUBBO + "." + service + (StringUtils.isEmpty(serviceId) ? "" : ("." + serviceId)) + "." + getName(); } diff --git a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ProtocolConfig.java b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ProtocolConfig.java index 4cb2f7dcdd..767204e255 100644 --- a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ProtocolConfig.java +++ b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ProtocolConfig.java @@ -33,6 +33,8 @@ import org.apache.dubbo.rpc.Protocol; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.THREADPOOL_KEY; + /** * ProtocolConfig * @@ -269,7 +271,7 @@ public class ProtocolConfig extends AbstractConfig { } public void setThreadpool(String threadpool) { - checkExtension(ThreadPool.class, Constants.THREADPOOL_KEY, threadpool); + checkExtension(ThreadPool.class, THREADPOOL_KEY, threadpool); this.threadpool = threadpool; } diff --git a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ProviderConfig.java b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ProviderConfig.java index b76ab7958f..33a88e6864 100644 --- a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ProviderConfig.java +++ b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ProviderConfig.java @@ -29,6 +29,8 @@ import org.apache.dubbo.remoting.telnet.TelnetHandler; import java.util.ArrayList; import java.util.Arrays; +import static org.apache.dubbo.common.constants.CommonConstants.THREADPOOL_KEY; + /** * The service provider default configuration * @@ -217,7 +219,7 @@ public class ProviderConfig extends AbstractServiceConfig { } public void setThreadpool(String threadpool) { - checkExtension(ThreadPool.class, Constants.THREADPOOL_KEY, threadpool); + checkExtension(ThreadPool.class, THREADPOOL_KEY, threadpool); this.threadpool = threadpool; } diff --git a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ReferenceConfig.java b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ReferenceConfig.java index 32f5dd14dc..2842eabd70 100644 --- a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ReferenceConfig.java +++ b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ReferenceConfig.java @@ -56,6 +56,16 @@ import java.util.List; import java.util.Map; import java.util.Properties; +import static org.apache.dubbo.common.constants.CommonConstants.ANY_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SEPARATOR; +import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.DUBBO; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.LOCALHOST_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.METHODS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.REVISION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.SEMICOLON_SPLIT_PATTERN; +import static org.apache.dubbo.common.constants.CommonConstants.SIDE_KEY; import static org.apache.dubbo.common.utils.NetUtils.isInvalidLocalHost; /** @@ -261,24 +271,24 @@ public class ReferenceConfig extends AbstractReferenceConfig { checkMock(interfaceClass); Map map = new HashMap(); - map.put(Constants.SIDE_KEY, Constants.CONSUMER_SIDE); + map.put(SIDE_KEY, CONSUMER_SIDE); appendRuntimeParameters(map); if (!isGeneric()) { String revision = Version.getVersion(interfaceClass, version); if (revision != null && revision.length() > 0) { - map.put(Constants.REVISION_KEY, revision); + map.put(REVISION_KEY, revision); } String[] methods = Wrapper.getWrapper(interfaceClass).getMethodNames(); if (methods.length == 0) { logger.warn("No method found in service interface " + interfaceClass.getName()); - map.put(Constants.METHODS_KEY, Constants.ANY_VALUE); + map.put(METHODS_KEY, ANY_VALUE); } else { - map.put(Constants.METHODS_KEY, StringUtils.join(new HashSet(Arrays.asList(methods)), Constants.COMMA_SEPARATOR)); + map.put(METHODS_KEY, StringUtils.join(new HashSet(Arrays.asList(methods)), COMMA_SEPARATOR)); } } - map.put(Constants.INTERFACE_KEY, interfaceName); + map.put(INTERFACE_KEY, interfaceName); appendParameters(map, metrics); appendParameters(map, application); appendParameters(map, module); @@ -333,14 +343,14 @@ public class ReferenceConfig extends AbstractReferenceConfig { @SuppressWarnings({"unchecked", "rawtypes", "deprecation"}) private T createProxy(Map map) { if (shouldJvmRefer(map)) { - URL url = new URL(Constants.LOCAL_PROTOCOL, Constants.LOCALHOST_VALUE, 0, interfaceClass.getName()).addParameters(map); + URL url = new URL(Constants.LOCAL_PROTOCOL, LOCALHOST_VALUE, 0, interfaceClass.getName()).addParameters(map); invoker = REF_PROTOCOL.refer(interfaceClass, url); if (logger.isInfoEnabled()) { logger.info("Using injvm service " + interfaceClass.getName()); } } else { if (url != null && url.length() > 0) { // user specified URL, could be peer-to-peer address, or register center's address. - String[] us = Constants.SEMICOLON_SPLIT_PATTERN.split(url); + String[] us = SEMICOLON_SPLIT_PATTERN.split(url); if (us != null && us.length > 0) { for (String u : us) { URL url = URL.valueOf(u); @@ -410,7 +420,7 @@ public class ReferenceConfig extends AbstractReferenceConfig { */ MetadataReportService metadataReportService = null; if ((metadataReportService = getMetadataReportService()) != null) { - URL consumerURL = new URL(Constants.CONSUMER_PROTOCOL, map.remove(Constants.REGISTER_IP_KEY), 0, map.get(Constants.INTERFACE_KEY), map); + URL consumerURL = new URL(Constants.CONSUMER_PROTOCOL, map.remove(Constants.REGISTER_IP_KEY), 0, map.get(INTERFACE_KEY), map); metadataReportService.publishConsumer(consumerURL); } // create service proxy @@ -609,7 +619,7 @@ public class ReferenceConfig extends AbstractReferenceConfig { @Override @Parameter(excluded = true) public String getPrefix() { - return Constants.DUBBO + ".reference." + interfaceName; + return DUBBO + ".reference." + interfaceName; } private void resolveFile() { diff --git a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/RegistryConfig.java b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/RegistryConfig.java index bb72e218e8..a529fd604a 100644 --- a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/RegistryConfig.java +++ b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/RegistryConfig.java @@ -23,6 +23,9 @@ import org.apache.dubbo.config.support.Parameter; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.FILE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PROTOCOL_KEY; + /** * RegistryConfig * @@ -158,7 +161,7 @@ public class RegistryConfig extends AbstractConfig { } public void setProtocol(String protocol) { - checkName(Constants.PROTOCOL_KEY, protocol); + checkName(PROTOCOL_KEY, protocol); this.protocol = protocol; this.updateIdIfAbsent(protocol); } @@ -240,7 +243,7 @@ public class RegistryConfig extends AbstractConfig { } public void setFile(String file) { - checkPathLength(Constants.FILE_KEY, file); + checkPathLength(FILE_KEY, file); this.file = file; } diff --git a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ServiceConfig.java b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ServiceConfig.java index 0c755b475b..d4ef8bb153 100644 --- a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ServiceConfig.java +++ b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ServiceConfig.java @@ -62,7 +62,16 @@ import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; -import static org.apache.dubbo.common.Constants.LOCALHOST_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.ANYHOST_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.ANY_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; +import static org.apache.dubbo.common.constants.CommonConstants.DUBBO; +import static org.apache.dubbo.common.constants.CommonConstants.LOCALHOST_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.METHODS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.REVISION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.SIDE_KEY; import static org.apache.dubbo.common.utils.NetUtils.getAvailablePort; import static org.apache.dubbo.common.utils.NetUtils.getLocalHost; import static org.apache.dubbo.common.utils.NetUtils.isInvalidLocalHost; @@ -436,11 +445,11 @@ public class ServiceConfig extends AbstractServiceConfig { private void doExportUrlsFor1Protocol(ProtocolConfig protocolConfig, List registryURLs) { String name = protocolConfig.getName(); if (StringUtils.isEmpty(name)) { - name = Constants.DUBBO; + name = DUBBO; } Map map = new HashMap(); - map.put(Constants.SIDE_KEY, Constants.PROVIDER_SIDE); + map.put(SIDE_KEY, PROVIDER_SIDE); appendRuntimeParameters(map); appendParameters(map, metrics); @@ -509,19 +518,19 @@ public class ServiceConfig extends AbstractServiceConfig { if (ProtocolUtils.isGeneric(generic)) { map.put(Constants.GENERIC_KEY, generic); - map.put(Constants.METHODS_KEY, Constants.ANY_VALUE); + map.put(METHODS_KEY, ANY_VALUE); } else { String revision = Version.getVersion(interfaceClass, version); if (revision != null && revision.length() > 0) { - map.put(Constants.REVISION_KEY, revision); + map.put(REVISION_KEY, revision); } String[] methods = Wrapper.getWrapper(interfaceClass).getMethodNames(); if (methods.length == 0) { logger.warn("No method found in service interface " + interfaceClass.getName()); - map.put(Constants.METHODS_KEY, Constants.ANY_VALUE); + map.put(METHODS_KEY, ANY_VALUE); } else { - map.put(Constants.METHODS_KEY, StringUtils.join(new HashSet(Arrays.asList(methods)), ",")); + map.put(METHODS_KEY, StringUtils.join(new HashSet(Arrays.asList(methods)), ",")); } } if (!ConfigUtils.isEmpty(token)) { @@ -696,7 +705,7 @@ public class ServiceConfig extends AbstractServiceConfig { hostToRegistry = hostToBind; } - map.put(Constants.ANYHOST_KEY, String.valueOf(anyhost)); + map.put(ANYHOST_KEY, String.valueOf(anyhost)); return hostToRegistry; } @@ -863,7 +872,7 @@ public class ServiceConfig extends AbstractServiceConfig { ); } } else { - String[] arr = Constants.COMMA_SPLIT_PATTERN.split(protocolIds); + String[] arr = COMMA_SPLIT_PATTERN.split(protocolIds); List tmpProtocols = CollectionUtils.isNotEmpty(protocols) ? protocols : new ArrayList<>(); Arrays.stream(arr).forEach(id -> { if (tmpProtocols.stream().noneMatch(prot -> prot.getId().equals(id))) { @@ -943,7 +952,7 @@ public class ServiceConfig extends AbstractServiceConfig { } public void setPath(String path) { - checkPathName(Constants.PATH_KEY, path); + checkPathName(PATH_KEY, path); this.path = path; } @@ -1024,6 +1033,6 @@ public class ServiceConfig extends AbstractServiceConfig { @Override @Parameter(excluded = true) public String getPrefix() { - return Constants.DUBBO + ".service." + interfaceName; + return DUBBO + ".service." + interfaceName; } } diff --git a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/context/ConfigManager.java b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/context/ConfigManager.java index 808fd9cdc5..79b097a0db 100644 --- a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/context/ConfigManager.java +++ b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/context/ConfigManager.java @@ -35,7 +35,7 @@ import java.util.Map; import java.util.Optional; import java.util.concurrent.ConcurrentHashMap; -import static org.apache.dubbo.common.Constants.DEFAULT_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_KEY; /** * TODO diff --git a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/AbstractInterfaceConfigTest.java b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/AbstractInterfaceConfigTest.java index 6f30581b87..004d78006f 100644 --- a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/AbstractInterfaceConfigTest.java +++ b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/AbstractInterfaceConfigTest.java @@ -18,6 +18,7 @@ package org.apache.dubbo.config; import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.utils.ConfigUtils; import org.apache.dubbo.config.api.Greeting; import org.apache.dubbo.config.context.ConfigManager; @@ -51,13 +52,13 @@ public class AbstractInterfaceConfigTest { @BeforeAll public static void setUp(@TempDir Path folder) { - dubboProperties = folder.resolve(Constants.DUBBO_PROPERTIES_KEY).toFile(); - System.setProperty(Constants.DUBBO_PROPERTIES_KEY, dubboProperties.getAbsolutePath()); + dubboProperties = folder.resolve(CommonConstants.DUBBO_PROPERTIES_KEY).toFile(); + System.setProperty(CommonConstants.DUBBO_PROPERTIES_KEY, dubboProperties.getAbsolutePath()); } @AfterAll public static void tearDown() { - System.clearProperty(Constants.DUBBO_PROPERTIES_KEY); + System.clearProperty(CommonConstants.DUBBO_PROPERTIES_KEY); } @AfterEach diff --git a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ApplicationConfigTest.java b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ApplicationConfigTest.java index d560921de4..be140fce8b 100644 --- a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ApplicationConfigTest.java +++ b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ApplicationConfigTest.java @@ -26,13 +26,15 @@ import java.util.Collections; import java.util.HashMap; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DUMP_DIRECTORY; +import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.contains; import static org.hamcrest.Matchers.equalTo; import static org.hamcrest.Matchers.hasEntry; import static org.hamcrest.Matchers.is; import static org.hamcrest.Matchers.sameInstance; import static org.hamcrest.collection.IsCollectionWithSize.hasSize; -import static org.hamcrest.MatcherAssert.assertThat; public class ApplicationConfigTest { @Test @@ -44,7 +46,7 @@ public class ApplicationConfigTest { assertThat(application.getName(), equalTo("app2")); Map parameters = new HashMap(); ApplicationConfig.appendParameters(parameters, application); - assertThat(parameters, hasEntry(Constants.APPLICATION_KEY, "app2")); + assertThat(parameters, hasEntry(APPLICATION_KEY, "app2")); } @Test @@ -138,7 +140,7 @@ public class ApplicationConfigTest { assertThat(application.getDumpDirectory(), equalTo("/dump")); Map parameters = new HashMap(); ApplicationConfig.appendParameters(parameters, application); - assertThat(parameters, hasEntry(Constants.DUMP_DIRECTORY, "/dump")); + assertThat(parameters, hasEntry(DUMP_DIRECTORY, "/dump")); } @Test diff --git a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ServiceConfigTest.java b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ServiceConfigTest.java index 3a54f30c5f..0bd7068057 100644 --- a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ServiceConfigTest.java +++ b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ServiceConfigTest.java @@ -46,6 +46,12 @@ import java.util.concurrent.TimeUnit; import static org.apache.dubbo.common.Constants.GENERIC_SERIALIZATION_BEAN; import static org.apache.dubbo.common.Constants.GENERIC_SERIALIZATION_DEFAULT; import static org.apache.dubbo.common.Constants.GENERIC_SERIALIZATION_NATIVE_JAVA; +import static org.apache.dubbo.common.constants.CommonConstants.ANYHOST_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.METHODS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER; +import static org.apache.dubbo.common.constants.CommonConstants.SIDE_KEY; import static org.hamcrest.CoreMatchers.containsString; import static org.hamcrest.CoreMatchers.equalTo; import static org.hamcrest.CoreMatchers.is; @@ -131,17 +137,17 @@ public class ServiceConfigTest { URL url = service.toUrl(); assertThat(url.getProtocol(), equalTo("mockprotocol2")); assertThat(url.getPath(), equalTo(DemoService.class.getName())); - assertThat(url.getParameters(), hasEntry(Constants.ANYHOST_KEY, "true")); - assertThat(url.getParameters(), hasEntry(Constants.APPLICATION_KEY, "app")); + assertThat(url.getParameters(), hasEntry(ANYHOST_KEY, "true")); + assertThat(url.getParameters(), hasEntry(APPLICATION_KEY, "app")); assertThat(url.getParameters(), hasKey(RemotingConstants.BIND_IP_KEY)); assertThat(url.getParameters(), hasKey(RemotingConstants.BIND_PORT_KEY)); assertThat(url.getParameters(), hasEntry(Constants.EXPORT_KEY, "true")); assertThat(url.getParameters(), hasEntry("echo.0.callback", "false")); assertThat(url.getParameters(), hasEntry(Constants.GENERIC_KEY, "false")); - assertThat(url.getParameters(), hasEntry(Constants.INTERFACE_KEY, DemoService.class.getName())); - assertThat(url.getParameters(), hasKey(Constants.METHODS_KEY)); - assertThat(url.getParameters().get(Constants.METHODS_KEY), containsString("echo")); - assertThat(url.getParameters(), hasEntry(Constants.SIDE_KEY, Constants.PROVIDER)); + assertThat(url.getParameters(), hasEntry(INTERFACE_KEY, DemoService.class.getName())); + assertThat(url.getParameters(), hasKey(METHODS_KEY)); + assertThat(url.getParameters().get(METHODS_KEY), containsString("echo")); + assertThat(url.getParameters(), hasEntry(SIDE_KEY, PROVIDER)); Mockito.verify(protocolDelegate).export(Mockito.any(Invoker.class)); } diff --git a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/mock/MockRegistry.java b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/mock/MockRegistry.java index 5632887648..47ab8e252b 100644 --- a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/mock/MockRegistry.java +++ b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/mock/MockRegistry.java @@ -24,6 +24,8 @@ import org.apache.dubbo.registry.Registry; import java.util.ArrayList; import java.util.List; +import static org.apache.dubbo.common.constants.CommonConstants.METHODS_KEY; + /** * TODO Comment of MockRegistry */ @@ -84,7 +86,7 @@ public class MockRegistry implements Registry { urls.add(url.setProtocol("mockprotocol") .removeParameter(Constants.CATEGORY_KEY) - .addParameter(Constants.METHODS_KEY, "sayHello")); + .addParameter(METHODS_KEY, "sayHello")); listener.notify(urls); } diff --git a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/ReferenceBean.java b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/ReferenceBean.java index 3c1111ba74..314cdfe291 100644 --- a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/ReferenceBean.java +++ b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/ReferenceBean.java @@ -16,18 +16,17 @@ */ package org.apache.dubbo.config.spring; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.utils.CollectionUtils; import org.apache.dubbo.common.utils.StringUtils; import org.apache.dubbo.config.ApplicationConfig; import org.apache.dubbo.config.ConfigCenterConfig; import org.apache.dubbo.config.ConsumerConfig; import org.apache.dubbo.config.MetadataReportConfig; +import org.apache.dubbo.config.MetricsConfig; import org.apache.dubbo.config.ModuleConfig; import org.apache.dubbo.config.MonitorConfig; import org.apache.dubbo.config.ReferenceConfig; import org.apache.dubbo.config.RegistryConfig; -import org.apache.dubbo.config.MetricsConfig; import org.apache.dubbo.config.annotation.Reference; import org.apache.dubbo.config.spring.extension.SpringExtensionFactory; import org.apache.dubbo.config.support.Parameter; @@ -44,6 +43,8 @@ import java.util.Arrays; import java.util.List; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; + /** * ReferenceFactoryBean */ @@ -158,7 +159,7 @@ public class ReferenceBean extends ReferenceConfig implements FactoryBean, if (registryConfigMap != null && registryConfigMap.size() > 0) { List registryConfigs = new ArrayList<>(); if (StringUtils.isNotEmpty(registryIds)) { - Arrays.stream(Constants.COMMA_SPLIT_PATTERN.split(registryIds)).forEach(id -> { + Arrays.stream(COMMA_SPLIT_PATTERN.split(registryIds)).forEach(id -> { if (registryConfigMap.containsKey(id)) { registryConfigs.add(registryConfigMap.get(id)); } diff --git a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/ServiceBean.java b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/ServiceBean.java index ec132eeab6..40eea8c1ac 100644 --- a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/ServiceBean.java +++ b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/ServiceBean.java @@ -16,19 +16,18 @@ */ package org.apache.dubbo.config.spring; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.utils.CollectionUtils; import org.apache.dubbo.common.utils.StringUtils; -import org.apache.dubbo.config.ProtocolConfig; -import org.apache.dubbo.config.ProviderConfig; -import org.apache.dubbo.config.ServiceConfig; -import org.apache.dubbo.config.MetricsConfig; -import org.apache.dubbo.config.RegistryConfig; +import org.apache.dubbo.config.ApplicationConfig; import org.apache.dubbo.config.ConfigCenterConfig; import org.apache.dubbo.config.MetadataReportConfig; -import org.apache.dubbo.config.MonitorConfig; +import org.apache.dubbo.config.MetricsConfig; import org.apache.dubbo.config.ModuleConfig; -import org.apache.dubbo.config.ApplicationConfig; +import org.apache.dubbo.config.MonitorConfig; +import org.apache.dubbo.config.ProtocolConfig; +import org.apache.dubbo.config.ProviderConfig; +import org.apache.dubbo.config.RegistryConfig; +import org.apache.dubbo.config.ServiceConfig; import org.apache.dubbo.config.annotation.Service; import org.apache.dubbo.config.spring.context.event.ServiceBeanExportedEvent; import org.apache.dubbo.config.spring.extension.SpringExtensionFactory; @@ -50,6 +49,7 @@ import java.util.Arrays; import java.util.List; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; import static org.apache.dubbo.config.spring.util.BeanFactoryUtils.addApplicationListener; /** @@ -200,7 +200,7 @@ public class ServiceBean extends ServiceConfig implements InitializingBean if (CollectionUtils.isNotEmptyMap(registryConfigMap)) { List registryConfigs = new ArrayList<>(); if (StringUtils.isNotEmpty(registryIds)) { - Arrays.stream(Constants.COMMA_SPLIT_PATTERN.split(registryIds)).forEach(id -> { + Arrays.stream(COMMA_SPLIT_PATTERN.split(registryIds)).forEach(id -> { if (registryConfigMap.containsKey(id)) { registryConfigs.add(registryConfigMap.get(id)); } @@ -285,7 +285,7 @@ public class ServiceBean extends ServiceConfig implements InitializingBean if (protocolConfigMap != null && protocolConfigMap.size() > 0) { List protocolConfigs = new ArrayList(); if (StringUtils.isNotEmpty(getProtocolIds())) { - Arrays.stream(Constants.COMMA_SPLIT_PATTERN.split(getProtocolIds())) + Arrays.stream(COMMA_SPLIT_PATTERN.split(getProtocolIds())) .forEach(id -> { if (protocolConfigMap.containsKey(id)) { protocolConfigs.add(protocolConfigMap.get(id)); diff --git a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/AnnotationBeanNameBuilder.java b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/AnnotationBeanNameBuilder.java index 610058acd7..867fb2a182 100644 --- a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/AnnotationBeanNameBuilder.java +++ b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/AnnotationBeanNameBuilder.java @@ -16,7 +16,7 @@ */ package org.apache.dubbo.config.spring.beans.factory.annotation; -import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.config.annotation.Reference; import org.apache.dubbo.config.annotation.Service; import org.apache.dubbo.registry.Registry; @@ -24,8 +24,8 @@ import org.apache.dubbo.registry.Registry; import org.springframework.core.env.Environment; import static org.apache.dubbo.common.Constants.CONSUMERS_CATEGORY; -import static org.apache.dubbo.common.Constants.DEFAULT_PROTOCOL; import static org.apache.dubbo.common.Constants.PROVIDERS_CATEGORY; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_PROTOCOL; import static org.apache.dubbo.config.spring.util.AnnotationUtils.resolveInterfaceName; import static org.springframework.util.StringUtils.arrayToCommaDelimitedString; import static org.springframework.util.StringUtils.hasText; @@ -114,8 +114,8 @@ class AnnotationBeanNameBuilder { * * @param protocols one or more protocols * @return if protocols == null, it will return - * {@link Constants#DEFAULT_PROTOCOL "dubbo"} as the default protocol - * @see Constants#DEFAULT_PROTOCOL + * {@link CommonConstants#DEFAULT_PROTOCOL "dubbo"} as the default protocol + * @see CommonConstants#DEFAULT_PROTOCOL */ private static String resolveProtocol(String... protocols) { String protocol = arrayToCommaDelimitedString(protocols); diff --git a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/schema/DubboBeanDefinitionParser.java b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/schema/DubboBeanDefinitionParser.java index f5c2ab07f9..3ad8243ad3 100644 --- a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/schema/DubboBeanDefinitionParser.java +++ b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/schema/DubboBeanDefinitionParser.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.config.spring.schema; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; import org.apache.dubbo.common.utils.ReflectUtils; @@ -52,6 +51,8 @@ import java.util.HashSet; import java.util.Set; import java.util.regex.Pattern; +import static org.apache.dubbo.common.constants.CommonConstants.HIDE_KEY_PREFIX; + /** * AbstractBeanDefinitionParser * @@ -316,7 +317,7 @@ public class DubboBeanDefinitionParser implements BeanDefinitionParser { String value = ((Element) node).getAttribute("value"); boolean hide = "true".equals(((Element) node).getAttribute("hide")); if (hide) { - key = Constants.HIDE_KEY_PREFIX + key; + key = HIDE_KEY_PREFIX + key; } parameters.put(key, new TypedStringValue(value, String.class)); } diff --git a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/SimpleRegistryExporter.java b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/SimpleRegistryExporter.java index 0db362af07..c3616a7c57 100644 --- a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/SimpleRegistryExporter.java +++ b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/SimpleRegistryExporter.java @@ -17,7 +17,6 @@ package org.apache.dubbo.config.spring; import org.apache.dubbo.common.Constants; -import org.apache.dubbo.common.URL; import org.apache.dubbo.common.URLBuilder; import org.apache.dubbo.common.extension.ExtensionLoader; import org.apache.dubbo.common.utils.NetUtils; @@ -29,6 +28,8 @@ import org.apache.dubbo.rpc.ProxyFactory; import java.io.IOException; import java.net.ServerSocket; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; + /** * SimpleRegistryExporter */ @@ -55,7 +56,7 @@ public class SimpleRegistryExporter { return protocol.export(proxyFactory.getInvoker(registryService, RegistryService.class, new URLBuilder(Constants.DUBBO_PROTOCOL, NetUtils.getLocalHost(), port, RegistryService.class.getName()) .setPath(RegistryService.class.getName()) - .addParameter(Constants.INTERFACE_KEY, RegistryService.class.getName()) + .addParameter(INTERFACE_KEY, RegistryService.class.getName()) .addParameter(Constants.CLUSTER_STICKY_KEY, "true") .addParameter(Constants.CALLBACK_INSTANCES_LIMIT_KEY, "1000") .addParameter("ondisconnect", "disconnect") diff --git a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/beans/factory/annotation/ReferenceBeanBuilderTest.java b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/beans/factory/annotation/ReferenceBeanBuilderTest.java index 7dd12663d8..069de915a6 100644 --- a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/beans/factory/annotation/ReferenceBeanBuilderTest.java +++ b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/beans/factory/annotation/ReferenceBeanBuilderTest.java @@ -38,7 +38,6 @@ import static org.springframework.util.ReflectionUtils.findField; /** * {@link ReferenceBeanBuilder} Test * - * @author Mercy * @see ReferenceBeanBuilder * @see Reference * @since 2.6.4 diff --git a/dubbo-configcenter/dubbo-configcenter-apollo/src/main/java/org/apache/dubbo/configcenter/support/apollo/ApolloDynamicConfiguration.java b/dubbo-configcenter/dubbo-configcenter-apollo/src/main/java/org/apache/dubbo/configcenter/support/apollo/ApolloDynamicConfiguration.java index ebce3031d7..4df84265d1 100644 --- a/dubbo-configcenter/dubbo-configcenter-apollo/src/main/java/org/apache/dubbo/configcenter/support/apollo/ApolloDynamicConfiguration.java +++ b/dubbo-configcenter/dubbo-configcenter-apollo/src/main/java/org/apache/dubbo/configcenter/support/apollo/ApolloDynamicConfiguration.java @@ -41,6 +41,9 @@ import java.util.concurrent.ConcurrentMap; import java.util.concurrent.CopyOnWriteArraySet; import java.util.stream.Collectors; +import static org.apache.dubbo.common.constants.CommonConstants.ANYHOST_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; + /** * Apollo implementation, https://github.com/ctripcorp/apollo */ @@ -64,7 +67,7 @@ public class ApolloDynamicConfiguration implements DynamicConfiguration { if (configEnv != null) { System.setProperty(APOLLO_ENV_KEY, configEnv); } - if (StringUtils.isEmpty(System.getProperty(APOLLO_ENV_KEY)) && !Constants.ANYHOST_VALUE.equals(configAddr)) { + if (StringUtils.isEmpty(System.getProperty(APOLLO_ENV_KEY)) && !ANYHOST_VALUE.equals(configAddr)) { System.setProperty(APOLLO_ADDR_KEY, configAddr); } if (configCluster != null) { @@ -89,7 +92,7 @@ public class ApolloDynamicConfiguration implements DynamicConfiguration { private String getAddressWithProtocolPrefix (URL url) { String address = url.getBackupAddress(); if (StringUtils.isNotEmpty(address)) { - address = Arrays.stream(Constants.COMMA_SPLIT_PATTERN.split(address)) + address = Arrays.stream(COMMA_SPLIT_PATTERN.split(address)) .map(addr -> { if (addr.startsWith(APOLLO_PROTOCOL_PREFIX)) { return addr; diff --git a/dubbo-configcenter/dubbo-configcenter-consul/src/main/java/org/apache/dubbo/configcenter/consul/ConsulDynamicConfiguration.java b/dubbo-configcenter/dubbo-configcenter-consul/src/main/java/org/apache/dubbo/configcenter/consul/ConsulDynamicConfiguration.java index 0168fd1294..d03e0f1c56 100644 --- a/dubbo-configcenter/dubbo-configcenter-consul/src/main/java/org/apache/dubbo/configcenter/consul/ConsulDynamicConfiguration.java +++ b/dubbo-configcenter/dubbo-configcenter-consul/src/main/java/org/apache/dubbo/configcenter/consul/ConsulDynamicConfiguration.java @@ -40,7 +40,7 @@ import java.util.concurrent.ExecutorService; import static java.util.concurrent.Executors.newCachedThreadPool; import static org.apache.dubbo.common.Constants.CONFIG_NAMESPACE_KEY; -import static org.apache.dubbo.common.Constants.PATH_SEPARATOR; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_SEPARATOR; import static org.apache.dubbo.configcenter.ConfigChangeType.ADDED; /** diff --git a/dubbo-configcenter/dubbo-configcenter-etcd/src/main/java/org/apache/dubbo/configcenter/support/etcd/EtcdDynamicConfiguration.java b/dubbo-configcenter/dubbo-configcenter-etcd/src/main/java/org/apache/dubbo/configcenter/support/etcd/EtcdDynamicConfiguration.java index 18e9088759..66799b9015 100644 --- a/dubbo-configcenter/dubbo-configcenter-etcd/src/main/java/org/apache/dubbo/configcenter/support/etcd/EtcdDynamicConfiguration.java +++ b/dubbo-configcenter/dubbo-configcenter-etcd/src/main/java/org/apache/dubbo/configcenter/support/etcd/EtcdDynamicConfiguration.java @@ -40,7 +40,7 @@ import java.util.concurrent.ConcurrentMap; import static java.nio.charset.StandardCharsets.UTF_8; import static org.apache.dubbo.common.Constants.CONFIG_NAMESPACE_KEY; -import static org.apache.dubbo.common.Constants.PATH_SEPARATOR; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_SEPARATOR; /** * The etcd implementation of {@link DynamicConfiguration} diff --git a/dubbo-configcenter/dubbo-configcenter-nacos/src/main/java/org/apache/dubbo/configcenter/support/nacos/NacosDynamicConfiguration.java b/dubbo-configcenter/dubbo-configcenter-nacos/src/main/java/org/apache/dubbo/configcenter/support/nacos/NacosDynamicConfiguration.java index 2d63c99ec2..3baf27c7cc 100644 --- a/dubbo-configcenter/dubbo-configcenter-nacos/src/main/java/org/apache/dubbo/configcenter/support/nacos/NacosDynamicConfiguration.java +++ b/dubbo-configcenter/dubbo-configcenter-nacos/src/main/java/org/apache/dubbo/configcenter/support/nacos/NacosDynamicConfiguration.java @@ -17,10 +17,6 @@ package org.apache.dubbo.configcenter.support.nacos; -import com.alibaba.nacos.api.NacosFactory; -import com.alibaba.nacos.api.config.ConfigService; -import com.alibaba.nacos.api.config.listener.AbstractSharedListener; -import com.alibaba.nacos.api.exception.NacosException; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -30,24 +26,30 @@ import org.apache.dubbo.configcenter.ConfigChangeType; import org.apache.dubbo.configcenter.ConfigurationListener; import org.apache.dubbo.configcenter.DynamicConfiguration; +import com.alibaba.nacos.api.NacosFactory; +import com.alibaba.nacos.api.config.ConfigService; +import com.alibaba.nacos.api.config.listener.AbstractSharedListener; +import com.alibaba.nacos.api.exception.NacosException; + import java.util.Map; import java.util.Properties; import java.util.Set; -import java.util.concurrent.Executor; -import java.util.concurrent.ConcurrentMap; import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ConcurrentMap; import java.util.concurrent.CopyOnWriteArraySet; +import java.util.concurrent.Executor; + import static com.alibaba.nacos.api.PropertyKeyConst.ACCESS_KEY; import static com.alibaba.nacos.api.PropertyKeyConst.CLUSTER_NAME; import static com.alibaba.nacos.api.PropertyKeyConst.ENDPOINT; +import static com.alibaba.nacos.api.PropertyKeyConst.NAMESPACE; import static com.alibaba.nacos.api.PropertyKeyConst.SECRET_KEY; import static com.alibaba.nacos.api.PropertyKeyConst.SERVER_ADDR; -import static com.alibaba.nacos.api.PropertyKeyConst.NAMESPACE; import static com.alibaba.nacos.client.naming.utils.UtilAndComs.NACOS_NAMING_LOG_NAME; import static org.apache.dubbo.common.constants.RemotingConstants.BACKUP_KEY; import static org.apache.dubbo.common.Constants.CONFIG_NAMESPACE_KEY; -import static org.apache.dubbo.common.Constants.GROUP_CHAR_SEPERATOR; -import static org.apache.dubbo.common.Constants.PROPERTIES_CHAR_SEPERATOR; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_CHAR_SEPERATOR; +import static org.apache.dubbo.common.constants.CommonConstants.PROPERTIES_CHAR_SEPERATOR; /** * The nacos implementation of {@link DynamicConfiguration} diff --git a/dubbo-configcenter/dubbo-configcenter-nacos/src/main/java/org/apache/dubbo/configcenter/support/nacos/NacosDynamicConfigurationFactory.java b/dubbo-configcenter/dubbo-configcenter-nacos/src/main/java/org/apache/dubbo/configcenter/support/nacos/NacosDynamicConfigurationFactory.java index 2246741c1c..804e216a59 100644 --- a/dubbo-configcenter/dubbo-configcenter-nacos/src/main/java/org/apache/dubbo/configcenter/support/nacos/NacosDynamicConfigurationFactory.java +++ b/dubbo-configcenter/dubbo-configcenter-nacos/src/main/java/org/apache/dubbo/configcenter/support/nacos/NacosDynamicConfigurationFactory.java @@ -17,12 +17,13 @@ package org.apache.dubbo.configcenter.support.nacos; -import com.alibaba.nacos.api.PropertyKeyConst; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.configcenter.AbstractDynamicConfigurationFactory; import org.apache.dubbo.configcenter.DynamicConfiguration; +import com.alibaba.nacos.api.PropertyKeyConst; + /** * The nacos implementation of {@link AbstractDynamicConfigurationFactory} */ @@ -31,7 +32,7 @@ public class NacosDynamicConfigurationFactory extends AbstractDynamicConfigurati @Override protected DynamicConfiguration createDynamicConfiguration(URL url) { URL nacosURL = url; - if (Constants.DUBBO.equals(url.getParameter(PropertyKeyConst.NAMESPACE))) { + if (CommonConstants.DUBBO.equals(url.getParameter(PropertyKeyConst.NAMESPACE))) { // Nacos use empty string as default name space, replace default namespace "dubbo" to "" nacosURL = url.removeParameter(PropertyKeyConst.NAMESPACE); } diff --git a/dubbo-container/dubbo-container-api/src/main/java/org/apache/dubbo/container/Main.java b/dubbo-container/dubbo-container-api/src/main/java/org/apache/dubbo/container/Main.java index 5ae08c27af..967cece119 100644 --- a/dubbo-container/dubbo-container-api/src/main/java/org/apache/dubbo/container/Main.java +++ b/dubbo-container/dubbo-container-api/src/main/java/org/apache/dubbo/container/Main.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.container; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.extension.ExtensionLoader; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -31,6 +30,8 @@ import java.util.List; import java.util.concurrent.locks.Condition; import java.util.concurrent.locks.ReentrantLock; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; + /** * Main. (API, Static, ThreadSafe) * @@ -54,7 +55,7 @@ public class Main { try { if (ArrayUtils.isEmpty(args)) { String config = ConfigUtils.getProperty(CONTAINER_KEY, loader.getDefaultExtensionName()); - args = Constants.COMMA_SPLIT_PATTERN.split(config); + args = COMMA_SPLIT_PATTERN.split(config); } final List containers = new ArrayList(); diff --git a/dubbo-filter/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/filter/CacheFilter.java b/dubbo-filter/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/filter/CacheFilter.java index 4de9f5a170..89463d8e2b 100644 --- a/dubbo-filter/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/filter/CacheFilter.java +++ b/dubbo-filter/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/filter/CacheFilter.java @@ -19,6 +19,7 @@ package org.apache.dubbo.cache.filter; import org.apache.dubbo.cache.Cache; import org.apache.dubbo.cache.CacheFactory; import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.Activate; import org.apache.dubbo.common.utils.ConfigUtils; import org.apache.dubbo.common.utils.StringUtils; @@ -45,10 +46,10 @@ import java.io.Serializable; * 3)<dubbo:provider cache="expiring" /> * 4)<dubbo:consumer cache="jcache" /> * - *If cache type is defined in method level then method level type will get precedence. According to above provided - *example, if service has two method, method1 and method2, method2 will have cache type as threadlocal where others will - *be backed by lru - * + * If cache type is defined in method level then method level type will get precedence. According to above provided + * example, if service has two method, method1 and method2, method2 will have cache type as threadlocal where others will + * be backed by lru + * * * @see org.apache.dubbo.rpc.Filter * @see org.apache.dubbo.cache.support.lru.LruCacheFactory @@ -59,9 +60,8 @@ import java.io.Serializable; * @see org.apache.dubbo.cache.support.threadlocal.ThreadLocalCache * @see org.apache.dubbo.cache.support.expiring.ExpiringCacheFactory * @see org.apache.dubbo.cache.support.expiring.ExpiringCache - * */ -@Activate(group = {Constants.CONSUMER, Constants.PROVIDER}, value = Constants.CACHE_KEY) +@Activate(group = {CommonConstants.CONSUMER, CommonConstants.PROVIDER}, value = Constants.CACHE_KEY) public class CacheFilter implements Filter { private CacheFactory cacheFactory; @@ -81,6 +81,7 @@ public class CacheFilter implements Filter { * If cache is configured, dubbo will invoke method on each method call. If cache value is returned by cache store * then it will return otherwise call the remote method and return value. If remote method's return valeu has error * then it will not cache the value. + * * @param invoker service * @param invocation invocation. * @return Cache returned value if found by the underlying cache store. If cache miss it will call target method. @@ -95,7 +96,7 @@ public class CacheFilter implements Filter { Object value = cache.get(key); if (value != null) { if (value instanceof ValueWrapper) { - return new RpcResult(((ValueWrapper)value).get()); + return new RpcResult(((ValueWrapper) value).get()); } else { return new RpcResult(value); } @@ -113,13 +114,13 @@ public class CacheFilter implements Filter { /** * Cache value wrapper. */ - static class ValueWrapper implements Serializable{ + static class ValueWrapper implements Serializable { private static final long serialVersionUID = -1777337318019193256L; private final Object value; - public ValueWrapper(Object value){ + public ValueWrapper(Object value) { this.value = value; } diff --git a/dubbo-filter/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/support/AbstractCacheFactory.java b/dubbo-filter/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/support/AbstractCacheFactory.java index 2522ce775a..98ca797b24 100644 --- a/dubbo-filter/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/support/AbstractCacheFactory.java +++ b/dubbo-filter/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/support/AbstractCacheFactory.java @@ -18,13 +18,14 @@ package org.apache.dubbo.cache.support; import org.apache.dubbo.cache.Cache; import org.apache.dubbo.cache.CacheFactory; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.rpc.Invocation; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; +import static org.apache.dubbo.common.constants.CommonConstants.METHOD_KEY; + /** * AbstractCacheFactory is a default implementation of {@link CacheFactory}. It abstract out the key formation from URL along with * invocation method. It initially check if the value for key already present in own local in-memory store then it won't check underlying storage cache {@link Cache}. @@ -51,7 +52,7 @@ public abstract class AbstractCacheFactory implements CacheFactory { */ @Override public Cache getCache(URL url, Invocation invocation) { - url = url.addParameter(Constants.METHOD_KEY, invocation.getMethodName()); + url = url.addParameter(METHOD_KEY, invocation.getMethodName()); String key = url.toFullString(); Cache cache = caches.get(key); if (cache == null) { diff --git a/dubbo-filter/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/support/jcache/JCache.java b/dubbo-filter/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/support/jcache/JCache.java index 0aae511dd6..bf4b3d1646 100644 --- a/dubbo-filter/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/support/jcache/JCache.java +++ b/dubbo-filter/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/support/jcache/JCache.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.cache.support.jcache; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.utils.StringUtils; @@ -30,6 +29,8 @@ import javax.cache.expiry.Duration; import javax.cache.spi.CachingProvider; import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.METHOD_KEY; + /** * This class store the cache value per thread. If a service,method,consumer or provided is configured with key cache * with value jcache, dubbo initialize the instance of this class using {@link JCacheFactory} to store method's returns value @@ -45,7 +46,7 @@ public class JCache implements org.apache.dubbo.cache.Cache { private final Cache store; public JCache(URL url) { - String method = url.getParameter(Constants.METHOD_KEY, ""); + String method = url.getParameter(METHOD_KEY, ""); String key = url.getAddress() + "." + url.getServiceKey() + "." + method; // jcache parameter is the full-qualified class name of SPI implementation String type = url.getParameter("jcache"); diff --git a/dubbo-filter/dubbo-filter-validation/src/main/java/org/apache/dubbo/validation/filter/ValidationFilter.java b/dubbo-filter/dubbo-filter-validation/src/main/java/org/apache/dubbo/validation/filter/ValidationFilter.java index 2af761a095..0aa0e361f0 100644 --- a/dubbo-filter/dubbo-filter-validation/src/main/java/org/apache/dubbo/validation/filter/ValidationFilter.java +++ b/dubbo-filter/dubbo-filter-validation/src/main/java/org/apache/dubbo/validation/filter/ValidationFilter.java @@ -17,6 +17,7 @@ package org.apache.dubbo.validation.filter; import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.Activate; import org.apache.dubbo.common.utils.ConfigUtils; import org.apache.dubbo.rpc.Filter; @@ -55,7 +56,7 @@ import org.apache.dubbo.validation.Validator; * @see Filter * @see org.apache.dubbo.validation.support.AbstractValidation */ -@Activate(group = {Constants.CONSUMER, Constants.PROVIDER}, value = Constants.VALIDATION_KEY, order = 10000) +@Activate(group = {CommonConstants.CONSUMER, CommonConstants.PROVIDER}, value = Constants.VALIDATION_KEY, order = 10000) public class ValidationFilter implements Filter { private Validation validation; diff --git a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/identifier/MetadataIdentifier.java b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/identifier/MetadataIdentifier.java index 457b3b6092..602e4b298b 100644 --- a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/identifier/MetadataIdentifier.java +++ b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/identifier/MetadataIdentifier.java @@ -16,9 +16,15 @@ */ package org.apache.dubbo.metadata.identifier; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; +import static org.apache.dubbo.common.constants.CommonConstants.ANY_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_SEPARATOR; +import static org.apache.dubbo.common.constants.CommonConstants.SIDE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * 2018/10/25 */ @@ -47,15 +53,15 @@ public class MetadataIdentifier { public MetadataIdentifier(URL url) { this.serviceInterface = url.getServiceInterface(); - this.version = url.getParameter(Constants.VERSION_KEY); - this.group = url.getParameter(Constants.GROUP_KEY); - this.side = url.getParameter(Constants.SIDE_KEY); - setApplication(url.getParameter(Constants.APPLICATION_KEY)); + this.version = url.getParameter(VERSION_KEY); + this.group = url.getParameter(GROUP_KEY); + this.side = url.getParameter(SIDE_KEY); + setApplication(url.getParameter(APPLICATION_KEY)); } public String getUniqueKey(KeyTypeEnum keyType) { if (keyType == KeyTypeEnum.PATH) { - return getFilePathKey() + Constants.PATH_SEPARATOR + DEFAULT_PATH_TAG; + return getFilePathKey() + PATH_SEPARATOR + DEFAULT_PATH_TAG; } return getIdentifierKey() + META_DATA_STORE_TAG; } @@ -69,12 +75,12 @@ public class MetadataIdentifier { } private String getFilePathKey(String pathTag) { - return pathTag + Constants.PATH_SEPARATOR + toServicePath() + Constants.PATH_SEPARATOR + (version == null ? "" : (version + Constants.PATH_SEPARATOR)) - + (group == null ? "" : (group + Constants.PATH_SEPARATOR)) + side + Constants.PATH_SEPARATOR + getApplication(); + return pathTag + PATH_SEPARATOR + toServicePath() + PATH_SEPARATOR + (version == null ? "" : (version + PATH_SEPARATOR)) + + (group == null ? "" : (group + PATH_SEPARATOR)) + side + PATH_SEPARATOR + getApplication(); } private String toServicePath() { - if (Constants.ANY_VALUE.equals(serviceInterface)) { + if (ANY_VALUE.equals(serviceInterface)) { return ""; } return URL.encode(serviceInterface); diff --git a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/integration/MetadataReportService.java b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/integration/MetadataReportService.java index 832dac62fe..9bcc541935 100644 --- a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/integration/MetadataReportService.java +++ b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/integration/MetadataReportService.java @@ -33,6 +33,16 @@ import org.apache.dubbo.rpc.RpcException; import java.util.function.Supplier; +import static org.apache.dubbo.common.constants.CommonConstants.APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_DIRECTORY; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PID_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.TIMESTAMP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * @since 2.7.0 */ @@ -49,7 +59,7 @@ public class MetadataReportService { MetadataReportService(URL metadataReportURL) { if (Constants.METADATA_REPORT_KEY.equals(metadataReportURL.getProtocol())) { - String protocol = metadataReportURL.getParameter(Constants.METADATA_REPORT_KEY, Constants.DEFAULT_DIRECTORY); + String protocol = metadataReportURL.getParameter(Constants.METADATA_REPORT_KEY, DEFAULT_DIRECTORY); metadataReportURL = URLBuilder.from(metadataReportURL) .setProtocol(protocol) .removeParameter(Constants.METADATA_REPORT_KEY) @@ -79,16 +89,16 @@ public class MetadataReportService { public void publishProvider(URL providerUrl) throws RpcException { //first add into the list // remove the individul param - providerUrl = providerUrl.removeParameters(Constants.PID_KEY, Constants.TIMESTAMP_KEY, RemotingConstants.BIND_IP_KEY, RemotingConstants.BIND_PORT_KEY, Constants.TIMESTAMP_KEY); + providerUrl = providerUrl.removeParameters(PID_KEY, TIMESTAMP_KEY, RemotingConstants.BIND_IP_KEY, RemotingConstants.BIND_PORT_KEY, TIMESTAMP_KEY); try { - String interfaceName = providerUrl.getParameter(Constants.INTERFACE_KEY); + String interfaceName = providerUrl.getParameter(INTERFACE_KEY); if (StringUtils.isNotEmpty(interfaceName)) { Class interfaceClass = Class.forName(interfaceName); FullServiceDefinition fullServiceDefinition = ServiceDefinitionBuilder.buildFullDefinition(interfaceClass, providerUrl.getParameters()); metadataReport.storeProviderMetadata(new MetadataIdentifier(providerUrl.getServiceInterface(), - providerUrl.getParameter(Constants.VERSION_KEY), providerUrl.getParameter(Constants.GROUP_KEY), - Constants.PROVIDER_SIDE,providerUrl.getParameter(Constants.APPLICATION_KEY)), fullServiceDefinition); + providerUrl.getParameter(VERSION_KEY), providerUrl.getParameter(GROUP_KEY), + PROVIDER_SIDE, providerUrl.getParameter(APPLICATION_KEY)), fullServiceDefinition); return; } logger.error("publishProvider interfaceName is empty . providerUrl: " + providerUrl.toFullString()); @@ -99,10 +109,10 @@ public class MetadataReportService { } public void publishConsumer(URL consumerURL) throws RpcException { - consumerURL = consumerURL.removeParameters(Constants.PID_KEY, Constants.TIMESTAMP_KEY, RemotingConstants.BIND_IP_KEY, RemotingConstants.BIND_PORT_KEY, Constants.TIMESTAMP_KEY); + consumerURL = consumerURL.removeParameters(PID_KEY, TIMESTAMP_KEY, RemotingConstants.BIND_IP_KEY, RemotingConstants.BIND_PORT_KEY, TIMESTAMP_KEY); metadataReport.storeConsumerMetadata(new MetadataIdentifier(consumerURL.getServiceInterface(), - consumerURL.getParameter(Constants.VERSION_KEY), consumerURL.getParameter(Constants.GROUP_KEY),Constants.CONSUMER_SIDE, - consumerURL.getParameter(Constants.APPLICATION_KEY)), consumerURL.getParameters()); + consumerURL.getParameter(VERSION_KEY), consumerURL.getParameter(GROUP_KEY), CONSUMER_SIDE, + consumerURL.getParameter(APPLICATION_KEY)), consumerURL.getParameters()); } } diff --git a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/support/AbstractMetadataReport.java b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/support/AbstractMetadataReport.java index 49b4b8f7dc..67f06e7bbd 100644 --- a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/support/AbstractMetadataReport.java +++ b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/support/AbstractMetadataReport.java @@ -51,6 +51,12 @@ import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicLong; +import static org.apache.dubbo.common.constants.CommonConstants.APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.FILE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.SIDE_KEY; + /** * */ @@ -80,7 +86,7 @@ public abstract class AbstractMetadataReport implements MetadataReport { public AbstractMetadataReport(URL reportServerURL) { setUrl(reportServerURL); // Start file save timer - String filename = reportServerURL.getParameter(Constants.FILE_KEY, System.getProperty("user.home") + "/.dubbo/dubbo-metadata-" + reportServerURL.getParameter(Constants.APPLICATION_KEY) + "-" + reportServerURL.getAddress() + ".cache"); + String filename = reportServerURL.getParameter(FILE_KEY, System.getProperty("user.home") + "/.dubbo/dubbo-metadata-" + reportServerURL.getParameter(APPLICATION_KEY) + "-" + reportServerURL.getAddress() + ".cache"); File file = null; if (ConfigUtils.isNotEmpty(filename)) { file = new File(filename); @@ -271,7 +277,7 @@ public abstract class AbstractMetadataReport implements MetadataReport { String getProtocol(URL url) { - String protocol = url.getParameter(Constants.SIDE_KEY); + String protocol = url.getParameter(SIDE_KEY); protocol = protocol == null ? url.getProtocol() : protocol; return protocol; } @@ -290,9 +296,9 @@ public abstract class AbstractMetadataReport implements MetadataReport { Iterator> iterable = metadataMap.entrySet().iterator(); while (iterable.hasNext()) { Map.Entry item = iterable.next(); - if (Constants.PROVIDER_SIDE.equals(item.getKey().getSide())) { + if (PROVIDER_SIDE.equals(item.getKey().getSide())) { this.storeProviderMetadata(item.getKey(), (FullServiceDefinition) item.getValue()); - } else if (Constants.CONSUMER_SIDE.equals(item.getKey().getSide())) { + } else if (CONSUMER_SIDE.equals(item.getKey().getSide())) { this.storeConsumerMetadata(item.getKey(), (Map) item.getValue()); } diff --git a/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/identifier/MetadataIdentifierTest.java b/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/identifier/MetadataIdentifierTest.java index ca415b4645..cdb089b83e 100644 --- a/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/identifier/MetadataIdentifierTest.java +++ b/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/identifier/MetadataIdentifierTest.java @@ -16,11 +16,11 @@ */ package org.apache.dubbo.metadata.identifier; -import org.apache.dubbo.common.Constants; - import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_SEPARATOR; +import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER_SIDE; import static org.apache.dubbo.metadata.identifier.MetadataIdentifier.META_DATA_STORE_TAG; /** @@ -34,18 +34,18 @@ public class MetadataIdentifierTest { String version = "1.0.0.zk.md"; String group = null; String application = "vic.zk.md"; - MetadataIdentifier providerMetadataIdentifier = new MetadataIdentifier(interfaceName, version, group, Constants.PROVIDER_SIDE, application); + MetadataIdentifier providerMetadataIdentifier = new MetadataIdentifier(interfaceName, version, group, PROVIDER_SIDE, application); System.out.println(providerMetadataIdentifier.getUniqueKey(MetadataIdentifier.KeyTypeEnum.PATH)); Assertions.assertEquals(providerMetadataIdentifier.getUniqueKey(MetadataIdentifier.KeyTypeEnum.PATH), - "metadata" + Constants.PATH_SEPARATOR + interfaceName + Constants.PATH_SEPARATOR + - (version == null ? "" : (version + Constants.PATH_SEPARATOR)) - + (group == null ? "" : (group + Constants.PATH_SEPARATOR)) + Constants.PROVIDER_SIDE - + Constants.PATH_SEPARATOR + application + Constants.PATH_SEPARATOR + "metadata"); + "metadata" + PATH_SEPARATOR + interfaceName + PATH_SEPARATOR + + (version == null ? "" : (version + PATH_SEPARATOR)) + + (group == null ? "" : (group + PATH_SEPARATOR)) + PROVIDER_SIDE + + PATH_SEPARATOR + application + PATH_SEPARATOR + "metadata"); System.out.println(providerMetadataIdentifier.getUniqueKey(MetadataIdentifier.KeyTypeEnum.UNIQUE_KEY)); Assertions.assertEquals(providerMetadataIdentifier.getUniqueKey(MetadataIdentifier.KeyTypeEnum.UNIQUE_KEY), interfaceName + MetadataIdentifier.SEPARATOR + (version == null ? "" : version + MetadataIdentifier.SEPARATOR) + (group == null ? "" : group + MetadataIdentifier.SEPARATOR) - + Constants.PROVIDER_SIDE + MetadataIdentifier.SEPARATOR + application + META_DATA_STORE_TAG); + + PROVIDER_SIDE + MetadataIdentifier.SEPARATOR + application + META_DATA_STORE_TAG); } } diff --git a/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/store/test/JTestMetadataReport4Test.java b/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/store/test/JTestMetadataReport4Test.java index f5c129692e..e01a71ab5f 100644 --- a/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/store/test/JTestMetadataReport4Test.java +++ b/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/store/test/JTestMetadataReport4Test.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.metadata.store.test; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -26,6 +25,8 @@ import org.apache.dubbo.metadata.support.AbstractMetadataReport; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; +import static org.apache.dubbo.common.constants.CommonConstants.SIDE_KEY; + /** * ZookeeperRegistry */ @@ -42,7 +43,7 @@ public class JTestMetadataReport4Test extends AbstractMetadataReport { private static String getProtocol(URL url) { - String protocol = url.getParameter(Constants.SIDE_KEY); + String protocol = url.getParameter(SIDE_KEY); protocol = protocol == null ? url.getProtocol() : protocol; return protocol; } diff --git a/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/support/AbstractMetadataReportTest.java b/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/support/AbstractMetadataReportTest.java index 9544c18db9..d74c790543 100644 --- a/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/support/AbstractMetadataReportTest.java +++ b/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/support/AbstractMetadataReportTest.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.metadata.support; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.utils.NetUtils; import org.apache.dubbo.metadata.definition.ServiceDefinitionBuilder; @@ -34,6 +33,9 @@ import java.util.HashMap; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; +import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER_SIDE; + /** * */ @@ -155,7 +157,7 @@ public class AbstractMetadataReportTest { URL url = URL.valueOf("xxx://" + NetUtils.getLocalAddress().getHostName() + ":4444/" + interfaceName + "?version=" + version + "&application=" + application + (group == null ? "" : "&group=" + group) + "&testPKey=8989"); - MetadataIdentifier providerMetadataIdentifier = new MetadataIdentifier(interfaceName, version, group, Constants.PROVIDER_SIDE,application); + MetadataIdentifier providerMetadataIdentifier = new MetadataIdentifier(interfaceName, version, group, PROVIDER_SIDE,application); Class interfaceClass = Class.forName(interfaceName); FullServiceDefinition fullServiceDefinition = ServiceDefinitionBuilder.buildFullDefinition(interfaceClass, url.getParameters()); @@ -169,7 +171,7 @@ public class AbstractMetadataReportTest { + application + (group == null ? "" : "&group=" + group) + "&testPKey=9090"); tmp.putAll(url.getParameters()); - MetadataIdentifier consumerMetadataIdentifier = new MetadataIdentifier(interfaceName, version, group, Constants.CONSUMER_SIDE, application); + MetadataIdentifier consumerMetadataIdentifier = new MetadataIdentifier(interfaceName, version, group, CONSUMER_SIDE, application); abstractMetadataReport.storeConsumerMetadata(consumerMetadataIdentifier, tmp); diff --git a/dubbo-metadata-report/dubbo-metadata-report-etcd/src/main/java/org/apache/dubbo/metadata/store/etcd/EtcdMetadataReport.java b/dubbo-metadata-report/dubbo-metadata-report-etcd/src/main/java/org/apache/dubbo/metadata/store/etcd/EtcdMetadataReport.java index 0a472f55a7..5ee950611a 100644 --- a/dubbo-metadata-report/dubbo-metadata-report-etcd/src/main/java/org/apache/dubbo/metadata/store/etcd/EtcdMetadataReport.java +++ b/dubbo-metadata-report/dubbo-metadata-report-etcd/src/main/java/org/apache/dubbo/metadata/store/etcd/EtcdMetadataReport.java @@ -33,7 +33,6 @@ */ package org.apache.dubbo.metadata.store.etcd; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -41,6 +40,9 @@ import org.apache.dubbo.metadata.identifier.MetadataIdentifier; import org.apache.dubbo.metadata.support.AbstractMetadataReport; import org.apache.dubbo.remoting.etcd.jetcd.JEtcdClient; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_SEPARATOR; + /** * Report Metadata to Etcd */ @@ -60,9 +62,9 @@ public class EtcdMetadataReport extends AbstractMetadataReport { if (url.isAnyHost()) { throw new IllegalStateException("registry address == null"); } - String group = url.getParameter(Constants.GROUP_KEY, DEFAULT_ROOT); - if (!group.startsWith(Constants.PATH_SEPARATOR)) { - group = Constants.PATH_SEPARATOR + group; + String group = url.getParameter(GROUP_KEY, DEFAULT_ROOT); + if (!group.startsWith(PATH_SEPARATOR)) { + group = PATH_SEPARATOR + group; } this.root = group; etcdClient = new JEtcdClient(url); @@ -90,9 +92,9 @@ public class EtcdMetadataReport extends AbstractMetadataReport { } String toRootDir() { - if (root.equals(Constants.PATH_SEPARATOR)) { + if (root.equals(PATH_SEPARATOR)) { return root; } - return root + Constants.PATH_SEPARATOR; + return root + PATH_SEPARATOR; } } diff --git a/dubbo-metadata-report/dubbo-metadata-report-etcd/src/test/java/org/apache/dubbo/metadata/store/etcd/EtcdMetadataReportTest.java b/dubbo-metadata-report/dubbo-metadata-report-etcd/src/test/java/org/apache/dubbo/metadata/store/etcd/EtcdMetadataReportTest.java index e6f6b02c52..770b058e07 100644 --- a/dubbo-metadata-report/dubbo-metadata-report-etcd/src/test/java/org/apache/dubbo/metadata/store/etcd/EtcdMetadataReportTest.java +++ b/dubbo-metadata-report/dubbo-metadata-report-etcd/src/test/java/org/apache/dubbo/metadata/store/etcd/EtcdMetadataReportTest.java @@ -17,18 +17,18 @@ package org.apache.dubbo.metadata.store.etcd; +import org.apache.dubbo.common.URL; +import org.apache.dubbo.common.utils.NetUtils; +import org.apache.dubbo.metadata.definition.ServiceDefinitionBuilder; +import org.apache.dubbo.metadata.definition.model.FullServiceDefinition; +import org.apache.dubbo.metadata.identifier.MetadataIdentifier; + import com.google.gson.Gson; import io.etcd.jetcd.ByteSequence; import io.etcd.jetcd.Client; import io.etcd.jetcd.kv.GetResponse; import io.etcd.jetcd.launcher.EtcdCluster; import io.etcd.jetcd.launcher.EtcdClusterFactory; -import org.apache.dubbo.common.Constants; -import org.apache.dubbo.common.URL; -import org.apache.dubbo.common.utils.NetUtils; -import org.apache.dubbo.metadata.definition.ServiceDefinitionBuilder; -import org.apache.dubbo.metadata.definition.model.FullServiceDefinition; -import org.apache.dubbo.metadata.identifier.MetadataIdentifier; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeEach; @@ -41,6 +41,9 @@ import java.util.List; import java.util.Map; import java.util.concurrent.CompletableFuture; +import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER_SIDE; + /** * Unit test for etcd metadata report */ @@ -109,7 +112,7 @@ public class EtcdMetadataReportTest { + application + (group == null ? "" : "&group=" + group)); MetadataIdentifier providerMetadataIdentifier = - new MetadataIdentifier(interfaceName, version, group, Constants.PROVIDER_SIDE, application); + new MetadataIdentifier(interfaceName, version, group, PROVIDER_SIDE, application); Class interfaceClass = Class.forName(interfaceName); FullServiceDefinition fullServiceDefinition = ServiceDefinitionBuilder.buildFullDefinition(interfaceClass, url.getParameters()); @@ -122,7 +125,7 @@ public class EtcdMetadataReportTest { private MetadataIdentifier storeConsumer(EtcdMetadataReport etcdMetadataReport, String interfaceName, String version, String group, String application) throws InterruptedException { - MetadataIdentifier consumerIdentifier = new MetadataIdentifier(interfaceName, version, group, Constants.CONSUMER_SIDE, application); + MetadataIdentifier consumerIdentifier = new MetadataIdentifier(interfaceName, version, group, CONSUMER_SIDE, application); Map tmp = new HashMap<>(); tmp.put("paramConsumerTest", "etcdConsumer"); etcdMetadataReport.storeConsumerMetadata(consumerIdentifier, tmp); diff --git a/dubbo-metadata-report/dubbo-metadata-report-redis/src/main/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReport.java b/dubbo-metadata-report/dubbo-metadata-report-redis/src/main/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReport.java index b00295c3bd..c0b992da46 100644 --- a/dubbo-metadata-report/dubbo-metadata-report-redis/src/main/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReport.java +++ b/dubbo-metadata-report/dubbo-metadata-report-redis/src/main/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReport.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.metadata.store.redis; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -27,6 +26,9 @@ import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * RedisMetadataReport */ @@ -38,7 +40,7 @@ public class RedisMetadataReport extends AbstractMetadataReport { public RedisMetadataReport(URL url) { super(url); - int timeout = url.getParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); + int timeout = url.getParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT); pool = new JedisPool(new JedisPoolConfig(), url.getHost(), url.getPort(), timeout, url.getPassword()); } diff --git a/dubbo-metadata-report/dubbo-metadata-report-redis/src/test/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReportTest.java b/dubbo-metadata-report/dubbo-metadata-report-redis/src/test/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReportTest.java index 5a6d4f5fcf..5ec061130d 100644 --- a/dubbo-metadata-report/dubbo-metadata-report-redis/src/test/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReportTest.java +++ b/dubbo-metadata-report/dubbo-metadata-report-redis/src/test/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReportTest.java @@ -16,14 +16,14 @@ */ package org.apache.dubbo.metadata.store.redis; -import com.google.gson.Gson; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.utils.NetUtils; import org.apache.dubbo.metadata.definition.ServiceDefinitionBuilder; import org.apache.dubbo.metadata.definition.model.FullServiceDefinition; import org.apache.dubbo.metadata.identifier.MetadataIdentifier; import org.apache.dubbo.rpc.RpcException; + +import com.google.gson.Gson; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeEach; @@ -39,6 +39,8 @@ import java.util.HashMap; import java.util.Map; import static org.apache.dubbo.common.Constants.SYNC_REPORT_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER_SIDE; /** * 2018/10/9 @@ -153,7 +155,7 @@ public class RedisMetadataReportTest { URL url = URL.valueOf("xxx://" + NetUtils.getLocalAddress().getHostName() + ":4444/" + interfaceName + "?paramTest=redisTest&version=" + version + "&application=" + application + (group == null ? "" : "&group=" + group)); - MetadataIdentifier providerMetadataIdentifier = new MetadataIdentifier(interfaceName, version, group, Constants.PROVIDER_SIDE, application); + MetadataIdentifier providerMetadataIdentifier = new MetadataIdentifier(interfaceName, version, group, PROVIDER_SIDE, application); Class interfaceClass = Class.forName(interfaceName); FullServiceDefinition fullServiceDefinition = ServiceDefinitionBuilder.buildFullDefinition(interfaceClass, url.getParameters()); @@ -170,7 +172,7 @@ public class RedisMetadataReportTest { URL url = URL.valueOf("xxx://" + NetUtils.getLocalAddress().getHostName() + ":4444/" + interfaceName + "?version=" + version + "&application=" + application + (group == null ? "" : "&group=" + group)); - MetadataIdentifier consumerMetadataIdentifier = new MetadataIdentifier(interfaceName, version, group, Constants.CONSUMER_SIDE, application); + MetadataIdentifier consumerMetadataIdentifier = new MetadataIdentifier(interfaceName, version, group, CONSUMER_SIDE, application); Class interfaceClass = Class.forName(interfaceName); Map tmp = new HashMap<>(); diff --git a/dubbo-metadata-report/dubbo-metadata-report-zookeeper/src/main/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReport.java b/dubbo-metadata-report/dubbo-metadata-report-zookeeper/src/main/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReport.java index de26faf7c2..66353f6817 100644 --- a/dubbo-metadata-report/dubbo-metadata-report-zookeeper/src/main/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReport.java +++ b/dubbo-metadata-report/dubbo-metadata-report-zookeeper/src/main/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReport.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.metadata.store.zookeeper; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -25,6 +24,9 @@ import org.apache.dubbo.metadata.support.AbstractMetadataReport; import org.apache.dubbo.remoting.zookeeper.ZookeeperClient; import org.apache.dubbo.remoting.zookeeper.ZookeeperTransporter; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_SEPARATOR; + /** * ZookeeperMetadataReport */ @@ -41,19 +43,19 @@ public class ZookeeperMetadataReport extends AbstractMetadataReport { if (url.isAnyHost()) { throw new IllegalStateException("registry address == null"); } - String group = url.getParameter(Constants.GROUP_KEY, DEFAULT_ROOT); - if (!group.startsWith(Constants.PATH_SEPARATOR)) { - group = Constants.PATH_SEPARATOR + group; + String group = url.getParameter(GROUP_KEY, DEFAULT_ROOT); + if (!group.startsWith(PATH_SEPARATOR)) { + group = PATH_SEPARATOR + group; } this.root = group; zkClient = zookeeperTransporter.connect(url); } String toRootDir() { - if (root.equals(Constants.PATH_SEPARATOR)) { + if (root.equals(PATH_SEPARATOR)) { return root; } - return root + Constants.PATH_SEPARATOR; + return root + PATH_SEPARATOR; } @Override diff --git a/dubbo-metadata-report/dubbo-metadata-report-zookeeper/src/test/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReportTest.java b/dubbo-metadata-report/dubbo-metadata-report-zookeeper/src/test/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReportTest.java index da1e87b894..799a1bb04f 100644 --- a/dubbo-metadata-report/dubbo-metadata-report-zookeeper/src/test/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReportTest.java +++ b/dubbo-metadata-report/dubbo-metadata-report-zookeeper/src/test/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReportTest.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.metadata.store.zookeeper; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.utils.NetUtils; import org.apache.dubbo.metadata.definition.ServiceDefinitionBuilder; @@ -34,6 +33,9 @@ import org.junit.jupiter.api.Test; import java.util.HashMap; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER_SIDE; + /** * 2018/10/9 */ @@ -122,7 +124,7 @@ public class ZookeeperMetadataReportTest { URL url = URL.valueOf("xxx://" + NetUtils.getLocalAddress().getHostName() + ":4444/" + interfaceName + "?paramTest=zkTest&version=" + version + "&application=" + application + (group == null ? "" : "&group=" + group)); - MetadataIdentifier providerMetadataIdentifier = new MetadataIdentifier(interfaceName, version, group, Constants.PROVIDER_SIDE, application); + MetadataIdentifier providerMetadataIdentifier = new MetadataIdentifier(interfaceName, version, group, PROVIDER_SIDE, application); Class interfaceClass = Class.forName(interfaceName); FullServiceDefinition fullServiceDefinition = ServiceDefinitionBuilder.buildFullDefinition(interfaceClass, url.getParameters()); @@ -135,7 +137,7 @@ public class ZookeeperMetadataReportTest { URL url = URL.valueOf("xxx://" + NetUtils.getLocalAddress().getHostName() + ":4444/" + interfaceName + "?version=" + version + "&application=" + application + (group == null ? "" : "&group=" + group)); - MetadataIdentifier consumerMetadataIdentifier = new MetadataIdentifier(interfaceName, version, group, Constants.CONSUMER_SIDE, application); + MetadataIdentifier consumerMetadataIdentifier = new MetadataIdentifier(interfaceName, version, group, CONSUMER_SIDE, application); Class interfaceClass = Class.forName(interfaceName); Map tmp = new HashMap<>(); diff --git a/dubbo-monitor/dubbo-monitor-api/src/main/java/org/apache/dubbo/monitor/support/AbstractMonitorFactory.java b/dubbo-monitor/dubbo-monitor-api/src/main/java/org/apache/dubbo/monitor/support/AbstractMonitorFactory.java index 9708e905a4..7b921e6fdf 100644 --- a/dubbo-monitor/dubbo-monitor-api/src/main/java/org/apache/dubbo/monitor/support/AbstractMonitorFactory.java +++ b/dubbo-monitor/dubbo-monitor-api/src/main/java/org/apache/dubbo/monitor/support/AbstractMonitorFactory.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.monitor.support; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -38,6 +37,8 @@ import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; import java.util.concurrent.locks.ReentrantLock; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; + /** * AbstractMonitorFactory. (SPI, Singleton, ThreadSafe) */ @@ -67,7 +68,7 @@ public abstract class AbstractMonitorFactory implements MonitorFactory { @Override public Monitor getMonitor(URL url) { - url = url.setPath(MonitorService.class.getName()).addParameter(Constants.INTERFACE_KEY, MonitorService.class.getName()); + url = url.setPath(MonitorService.class.getName()).addParameter(INTERFACE_KEY, MonitorService.class.getName()); String key = url.toServiceStringWithoutResolving(); Monitor monitor = MONITORS.get(key); Future future = FUTURES.get(key); diff --git a/dubbo-monitor/dubbo-monitor-api/src/main/java/org/apache/dubbo/monitor/support/MonitorFilter.java b/dubbo-monitor/dubbo-monitor-api/src/main/java/org/apache/dubbo/monitor/support/MonitorFilter.java index 10eb31e42f..3269b37bb1 100644 --- a/dubbo-monitor/dubbo-monitor-api/src/main/java/org/apache/dubbo/monitor/support/MonitorFilter.java +++ b/dubbo-monitor/dubbo-monitor-api/src/main/java/org/apache/dubbo/monitor/support/MonitorFilter.java @@ -37,10 +37,19 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; import java.util.concurrent.atomic.AtomicInteger; +import static org.apache.dubbo.common.constants.CommonConstants.APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER; +import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_SEPARATOR; +import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER; +import static org.apache.dubbo.common.constants.CommonConstants.SIDE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * MonitorFilter. (SPI, Singleton, ThreadSafe) */ -@Activate(group = {Constants.PROVIDER, Constants.CONSUMER}) +@Activate(group = {PROVIDER, CONSUMER}) public class MonitorFilter implements Filter { private static final Logger logger = LoggerFactory.getLogger(MonitorFilter.class); @@ -128,15 +137,15 @@ public class MonitorFilter implements Filter { // ---- service statistics ---- long elapsed = System.currentTimeMillis() - start; // invocation cost int concurrent = getConcurrent(invoker, invocation).get(); // current concurrent count - String application = invoker.getUrl().getParameter(Constants.APPLICATION_KEY); + String application = invoker.getUrl().getParameter(APPLICATION_KEY); String service = invoker.getInterface().getName(); // service name String method = RpcUtils.getMethodName(invocation); // method name - String group = invoker.getUrl().getParameter(Constants.GROUP_KEY); - String version = invoker.getUrl().getParameter(Constants.VERSION_KEY); + String group = invoker.getUrl().getParameter(GROUP_KEY); + String version = invoker.getUrl().getParameter(VERSION_KEY); int localPort; String remoteKey, remoteValue; - if (Constants.CONSUMER_SIDE.equals(invoker.getUrl().getParameter(Constants.SIDE_KEY))) { + if (CONSUMER_SIDE.equals(invoker.getUrl().getParameter(SIDE_KEY))) { // ---- for service consumer ---- localPort = 0; remoteKey = MonitorService.PROVIDER; @@ -157,7 +166,7 @@ public class MonitorFilter implements Filter { return new URL(Constants.COUNT_PROTOCOL, NetUtils.getLocalHost(), localPort, - service + Constants.PATH_SEPARATOR + method, + service + PATH_SEPARATOR + method, MonitorService.APPLICATION, application, MonitorService.INTERFACE, service, MonitorService.METHOD, method, @@ -167,8 +176,8 @@ public class MonitorFilter implements Filter { MonitorService.CONCURRENT, String.valueOf(concurrent), Constants.INPUT_KEY, input, Constants.OUTPUT_KEY, output, - Constants.GROUP_KEY, group, - Constants.VERSION_KEY, version); + GROUP_KEY, group, + VERSION_KEY, version); } // concurrent counter diff --git a/dubbo-monitor/dubbo-monitor-api/src/test/java/org/apache/dubbo/monitor/support/MonitorFilterTest.java b/dubbo-monitor/dubbo-monitor-api/src/test/java/org/apache/dubbo/monitor/support/MonitorFilterTest.java index 01ba57dd7b..171d087bce 100644 --- a/dubbo-monitor/dubbo-monitor-api/src/test/java/org/apache/dubbo/monitor/support/MonitorFilterTest.java +++ b/dubbo-monitor/dubbo-monitor-api/src/test/java/org/apache/dubbo/monitor/support/MonitorFilterTest.java @@ -28,6 +28,7 @@ import org.apache.dubbo.rpc.Result; import org.apache.dubbo.rpc.RpcContext; import org.apache.dubbo.rpc.RpcException; import org.apache.dubbo.rpc.RpcInvocation; + import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; import org.mockito.Mockito; @@ -37,6 +38,9 @@ import java.net.URLEncoder; import java.util.Arrays; import java.util.List; +import static org.apache.dubbo.common.constants.CommonConstants.APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.SIDE_KEY; import static org.mockito.ArgumentMatchers.any; import static org.mockito.BDDMockito.given; import static org.mockito.Mockito.mock; @@ -60,7 +64,7 @@ public class MonitorFilterTest { public URL getUrl() { try { - return URL.valueOf("dubbo://" + NetUtils.getLocalHost() + ":20880?" + Constants.APPLICATION_KEY + "=abc&" + Constants.SIDE_KEY + "=" + Constants.CONSUMER_SIDE + "&" + Constants.MONITOR_KEY + "=" + URLEncoder.encode("dubbo://" + NetUtils.getLocalHost() + ":7070", "UTF-8")); + return URL.valueOf("dubbo://" + NetUtils.getLocalHost() + ":20880?" + APPLICATION_KEY + "=abc&" + SIDE_KEY + "=" + CONSUMER_SIDE + "&" + Constants.MONITOR_KEY + "=" + URLEncoder.encode("dubbo://" + NetUtils.getLocalHost() + ":7070", "UTF-8")); } catch (UnsupportedEncodingException e) { throw new IllegalStateException(e.getMessage(), e); } @@ -138,7 +142,7 @@ public class MonitorFilterTest { monitorFilter.setMonitorFactory(mockMonitorFactory); Invocation invocation = new RpcInvocation("aaa", new Class[0], new Object[0]); Invoker invoker = mock(Invoker.class); - given(invoker.getUrl()).willReturn(URL.valueOf("dubbo://" + NetUtils.getLocalHost() + ":20880?" + Constants.APPLICATION_KEY + "=abc&" + Constants.SIDE_KEY + "=" + Constants.CONSUMER_SIDE)); + given(invoker.getUrl()).willReturn(URL.valueOf("dubbo://" + NetUtils.getLocalHost() + ":20880?" + APPLICATION_KEY + "=abc&" + SIDE_KEY + "=" + CONSUMER_SIDE)); monitorFilter.invoke(invoker, invocation); diff --git a/dubbo-monitor/dubbo-monitor-default/src/main/java/org/apache/dubbo/monitor/dubbo/DubboMonitor.java b/dubbo-monitor/dubbo-monitor-default/src/main/java/org/apache/dubbo/monitor/dubbo/DubboMonitor.java index f7f0d87d8e..d36ae4cefd 100644 --- a/dubbo-monitor/dubbo-monitor-default/src/main/java/org/apache/dubbo/monitor/dubbo/DubboMonitor.java +++ b/dubbo-monitor/dubbo-monitor-default/src/main/java/org/apache/dubbo/monitor/dubbo/DubboMonitor.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.monitor.dubbo; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -36,6 +35,8 @@ import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicReference; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_PROTOCOL; + /** * DubboMonitor */ @@ -102,7 +103,7 @@ public class DubboMonitor implements Monitor { long maxOutput = numbers[7]; long maxElapsed = numbers[8]; long maxConcurrent = numbers[9]; - String protocol = getUrl().getParameter(Constants.DEFAULT_PROTOCOL); + String protocol = getUrl().getParameter(DEFAULT_PROTOCOL); // send statistics data URL url = statistics.getUrl() @@ -117,7 +118,7 @@ public class DubboMonitor implements Monitor { MonitorService.MAX_OUTPUT, String.valueOf(maxOutput), MonitorService.MAX_ELAPSED, String.valueOf(maxElapsed), MonitorService.MAX_CONCURRENT, String.valueOf(maxConcurrent), - Constants.DEFAULT_PROTOCOL, protocol + DEFAULT_PROTOCOL, protocol ); monitorService.collect(url); diff --git a/dubbo-monitor/dubbo-monitor-default/src/main/java/org/apache/dubbo/monitor/dubbo/DubboMonitorFactory.java b/dubbo-monitor/dubbo-monitor-default/src/main/java/org/apache/dubbo/monitor/dubbo/DubboMonitorFactory.java index 5d73112bfd..1802fe3fe9 100644 --- a/dubbo-monitor/dubbo-monitor-default/src/main/java/org/apache/dubbo/monitor/dubbo/DubboMonitorFactory.java +++ b/dubbo-monitor/dubbo-monitor-default/src/main/java/org/apache/dubbo/monitor/dubbo/DubboMonitorFactory.java @@ -28,8 +28,8 @@ import org.apache.dubbo.rpc.ProxyFactory; import static org.apache.dubbo.common.constants.RemotingConstants.CHECK_KEY; import static org.apache.dubbo.common.Constants.DUBBO_PROTOCOL; -import static org.apache.dubbo.common.Constants.PROTOCOL_KEY; import static org.apache.dubbo.common.Constants.REFERENCE_FILTER_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PROTOCOL_KEY; /** * DefaultMonitorFactory diff --git a/dubbo-monitor/dubbo-monitor-default/src/main/java/org/apache/dubbo/monitor/dubbo/MetricsFilter.java b/dubbo-monitor/dubbo-monitor-default/src/main/java/org/apache/dubbo/monitor/dubbo/MetricsFilter.java index 52bec170f4..78d87e183c 100644 --- a/dubbo-monitor/dubbo-monitor-default/src/main/java/org/apache/dubbo/monitor/dubbo/MetricsFilter.java +++ b/dubbo-monitor/dubbo-monitor-default/src/main/java/org/apache/dubbo/monitor/dubbo/MetricsFilter.java @@ -16,16 +16,6 @@ */ package org.apache.dubbo.monitor.dubbo; -import com.alibaba.fastjson.JSON; -import com.alibaba.metrics.FastCompass; -import com.alibaba.metrics.MetricLevel; -import com.alibaba.metrics.MetricManager; -import com.alibaba.metrics.MetricName; -import com.alibaba.metrics.MetricRegistry; -import com.alibaba.metrics.common.CollectLevel; -import com.alibaba.metrics.common.MetricObject; -import com.alibaba.metrics.common.MetricsCollector; -import com.alibaba.metrics.common.MetricsCollectorFactory; import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.constants.RemotingConstants; @@ -44,17 +34,31 @@ import org.apache.dubbo.rpc.RpcContext; import org.apache.dubbo.rpc.RpcException; import org.apache.dubbo.rpc.RpcResult; import org.apache.dubbo.rpc.support.RpcUtils; -import java.util.Collections; -import java.util.SortedMap; + +import com.alibaba.fastjson.JSON; +import com.alibaba.metrics.FastCompass; +import com.alibaba.metrics.MetricLevel; +import com.alibaba.metrics.MetricManager; +import com.alibaba.metrics.MetricName; +import com.alibaba.metrics.MetricRegistry; +import com.alibaba.metrics.common.CollectLevel; +import com.alibaba.metrics.common.MetricObject; +import com.alibaba.metrics.common.MetricsCollector; +import com.alibaba.metrics.common.MetricsCollectorFactory; + import java.util.ArrayList; +import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.SortedMap; import java.util.concurrent.ExecutorService; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicBoolean; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_PROTOCOL; + public class MetricsFilter implements Filter { private static final Logger logger = LoggerFactory.getLogger(MetricsFilter.class); @@ -66,7 +70,7 @@ public class MetricsFilter implements Filter { public Result invoke(Invoker invoker, Invocation invocation) throws RpcException { if (exported.compareAndSet(false, true)) { this.protocolName = invoker.getUrl().getParameter(Constants.METRICS_PROTOCOL) == null ? - Constants.DEFAULT_PROTOCOL : invoker.getUrl().getParameter(Constants.METRICS_PROTOCOL); + DEFAULT_PROTOCOL : invoker.getUrl().getParameter(Constants.METRICS_PROTOCOL); Protocol protocol = ExtensionLoader.getExtensionLoader(Protocol.class).getExtension(protocolName); diff --git a/dubbo-monitor/dubbo-monitor-default/src/test/java/org/apache/dubbo/monitor/dubbo/MetricsFilterTest.java b/dubbo-monitor/dubbo-monitor-default/src/test/java/org/apache/dubbo/monitor/dubbo/MetricsFilterTest.java index bca62f4aab..23bb1341cd 100644 --- a/dubbo-monitor/dubbo-monitor-default/src/test/java/org/apache/dubbo/monitor/dubbo/MetricsFilterTest.java +++ b/dubbo-monitor/dubbo-monitor-default/src/test/java/org/apache/dubbo/monitor/dubbo/MetricsFilterTest.java @@ -16,14 +16,6 @@ */ package org.apache.dubbo.monitor.dubbo; -import com.alibaba.metrics.FastCompass; -import com.alibaba.metrics.IMetricManager; -import com.alibaba.metrics.MetricLevel; -import com.alibaba.metrics.MetricManager; -import com.alibaba.metrics.MetricName; -import com.alibaba.metrics.common.MetricObject; -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.utils.NetUtils; @@ -37,6 +29,15 @@ import org.apache.dubbo.rpc.RpcContext; import org.apache.dubbo.rpc.RpcException; import org.apache.dubbo.rpc.RpcInvocation; import org.apache.dubbo.rpc.protocol.dubbo.DubboProtocol; + +import com.alibaba.metrics.FastCompass; +import com.alibaba.metrics.IMetricManager; +import com.alibaba.metrics.MetricLevel; +import com.alibaba.metrics.MetricManager; +import com.alibaba.metrics.MetricName; +import com.alibaba.metrics.common.MetricObject; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; @@ -44,6 +45,12 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER; +import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.SIDE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + public class MetricsFilterTest { private final Invoker serviceInvoker = new Invoker() { @@ -99,9 +106,9 @@ public class MetricsFilterTest { IMetricManager metricManager = MetricManager.getIMetricManager(); metricManager.clear(); MetricsFilter metricsFilter = new MetricsFilter(); - Invocation invocation = new RpcInvocation("sayName", new Class[] {Integer.class}, new Object[0]); + Invocation invocation = new RpcInvocation("sayName", new Class[]{Integer.class}, new Object[0]); RpcContext.getContext().setRemoteAddress(NetUtils.getLocalHost(), 20880).setLocalAddress(NetUtils.getLocalHost(), 2345); - RpcContext.getContext().setUrl(serviceInvoker.getUrl().addParameter(Constants.SIDE_KEY, Constants.CONSUMER_SIDE)); + RpcContext.getContext().setUrl(serviceInvoker.getUrl().addParameter(SIDE_KEY, CONSUMER_SIDE)); for (int i = 0; i < 100; i++) { metricsFilter.invoke(serviceInvoker, invocation); } @@ -126,8 +133,8 @@ public class MetricsFilterTest { MetricsFilter metricsFilter = new MetricsFilter(); Invocation invocation = new RpcInvocation("timeoutException", null, null); RpcContext.getContext().setRemoteAddress(NetUtils.getLocalHost(), 20880).setLocalAddress(NetUtils.getLocalHost(), 2345); - RpcContext.getContext().setUrl(timeoutInvoker.getUrl().addParameter(Constants.SIDE_KEY, Constants.CONSUMER_SIDE) - .addParameter(Constants.TIMEOUT_KEY, 300)); + RpcContext.getContext().setUrl(timeoutInvoker.getUrl().addParameter(SIDE_KEY, CONSUMER_SIDE) + .addParameter(TIMEOUT_KEY, 300)); for (int i = 0; i < 10; i++) { try { metricsFilter.invoke(timeoutInvoker, invocation); @@ -156,7 +163,7 @@ public class MetricsFilterTest { MetricsFilter metricsFilter = new MetricsFilter(); Invocation invocation = new RpcInvocation("sayName", new Class[0], new Object[0]); RpcContext.getContext().setRemoteAddress(NetUtils.getLocalHost(), 20880).setLocalAddress(NetUtils.getLocalHost(), 2345); - RpcContext.getContext().setUrl(serviceInvoker.getUrl().addParameter(Constants.SIDE_KEY, Constants.PROVIDER)); + RpcContext.getContext().setUrl(serviceInvoker.getUrl().addParameter(SIDE_KEY, PROVIDER)); for (int i = 0; i < 100; i++) { metricsFilter.invoke(serviceInvoker, invocation); } @@ -180,8 +187,8 @@ public class MetricsFilterTest { MetricsFilter metricsFilter = new MetricsFilter(); Invocation invocation = new RpcInvocation("sayName", new Class[0], new Object[0]); RpcContext.getContext().setRemoteAddress(NetUtils.getLocalHost(), 20880).setLocalAddress(NetUtils.getLocalHost(), 2345); - RpcContext.getContext().setUrl(serviceInvoker.getUrl().addParameter(Constants.SIDE_KEY, Constants.PROVIDER_SIDE) - .addParameter(Constants.TIMEOUT_KEY, 300)); + RpcContext.getContext().setUrl(serviceInvoker.getUrl().addParameter(SIDE_KEY, PROVIDER_SIDE) + .addParameter(TIMEOUT_KEY, 300)); for (int i = 0; i < 50; i++) { try { metricsFilter.invoke(serviceInvoker, invocation); @@ -194,18 +201,19 @@ public class MetricsFilterTest { URL url = URL.valueOf("dubbo://" + NetUtils.getLocalAddress().getHostName() + ":20880/" + MetricsService.class.getName()); Invoker invoker = protocol.refer(MetricsService.class, url); invocation = new RpcInvocation("getMetricsByGroup", new Class[]{String.class}, new Object[]{Constants.DUBBO_GROUP}); - try{ + try { Thread.sleep(5000); } catch (Exception e) { // ignore } String resStr = invoker.invoke(invocation).getValue().toString(); - List metricObjectList = new Gson().fromJson(resStr, new TypeToken>(){}.getType()); + List metricObjectList = new Gson().fromJson(resStr, new TypeToken>() { + }.getType()); Map metricMap = new HashMap<>(); - for(int i = 0; i < metricObjectList.size(); i++) { + for (int i = 0; i < metricObjectList.size(); i++) { MetricObject object = metricObjectList.get(i); String metric = object.getMetric().substring(object.getMetric().lastIndexOf(".") + 1); - if((double)object.getValue() > 0.0 && object.getMetricLevel().equals(MetricLevel.MAJOR)) + if ((double) object.getValue() > 0.0 && object.getMetricLevel().equals(MetricLevel.MAJOR)) metricMap.put(metric, object.getValue()); } @@ -224,11 +232,11 @@ public class MetricsFilterTest { Invocation sayNameInvocation = new RpcInvocation("sayName", new Class[0], new Object[0]); Invocation echoInvocation = new RpcInvocation("echo", new Class[]{Integer.class}, new Integer[]{1}); RpcContext.getContext().setRemoteAddress(NetUtils.getLocalHost(), 20880).setLocalAddress(NetUtils.getLocalHost(), 2345); - RpcContext.getContext().setUrl(serviceInvoker.getUrl().addParameter(Constants.SIDE_KEY, Constants.PROVIDER_SIDE) - .addParameter(Constants.TIMEOUT_KEY, 300)); + RpcContext.getContext().setUrl(serviceInvoker.getUrl().addParameter(SIDE_KEY, PROVIDER_SIDE) + .addParameter(TIMEOUT_KEY, 300)); for (int i = 0; i < 50; i++) { - metricsFilter.invoke(serviceInvoker, sayNameInvocation); - metricsFilter.invoke(serviceInvoker, echoInvocation); + metricsFilter.invoke(serviceInvoker, sayNameInvocation); + metricsFilter.invoke(serviceInvoker, echoInvocation); try { metricsFilter.invoke(timeoutInvoker, sayNameInvocation); } catch (RpcException e) { @@ -245,21 +253,22 @@ public class MetricsFilterTest { URL url = URL.valueOf("dubbo://" + NetUtils.getLocalAddress().getHostName() + ":20880/" + MetricsService.class.getName()); Invoker invoker = protocol.refer(MetricsService.class, url); Invocation invocation = new RpcInvocation("getMetricsByGroup", new Class[]{String.class}, new Object[]{Constants.DUBBO_GROUP}); - try{ + try { Thread.sleep(15000); } catch (Exception e) { // ignore } String resStr = invoker.invoke(invocation).getValue().toString(); - List metricObjectList = new Gson().fromJson(resStr, new TypeToken>(){}.getType()); + List metricObjectList = new Gson().fromJson(resStr, new TypeToken>() { + }.getType()); Map> methodMetricMap = new HashMap<>(); - for(int i = 0; i < metricObjectList.size(); i++) { + for (int i = 0; i < metricObjectList.size(); i++) { MetricObject object = metricObjectList.get(i); String service = object.getTags().get("service"); String method = service + "." + object.getTags().get("method"); String metric = object.getMetric().substring(object.getMetric().lastIndexOf(".") + 1); Map map = methodMetricMap.get(method); - if(map == null) { + if (map == null) { map = new HashMap(); methodMetricMap.put(method, map); } diff --git a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/AbstractConfiguratorListener.java b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/AbstractConfiguratorListener.java index 3aea7e6177..46beabd0e8 100644 --- a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/AbstractConfiguratorListener.java +++ b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/AbstractConfiguratorListener.java @@ -16,7 +16,7 @@ */ package org.apache.dubbo.registry.integration; -import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; import org.apache.dubbo.common.utils.StringUtils; @@ -42,7 +42,7 @@ public abstract class AbstractConfiguratorListener implements ConfigurationListe protected final void initWith(String key) { DynamicConfiguration dynamicConfiguration = DynamicConfiguration.getDynamicConfiguration(); dynamicConfiguration.addListener(key, this); - String rawConfig = dynamicConfiguration.getConfig(key, Constants.DUBBO); + String rawConfig = dynamicConfiguration.getConfig(key, CommonConstants.DUBBO); if (!StringUtils.isEmpty(rawConfig)) { process(new ConfigChangeEvent(key, rawConfig)); } diff --git a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/RegistryDirectory.java b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/RegistryDirectory.java index 9538742ede..a28383fade 100644 --- a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/RegistryDirectory.java +++ b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/RegistryDirectory.java @@ -67,6 +67,13 @@ import static org.apache.dubbo.common.Constants.DYNAMIC_CONFIGURATORS_CATEGORY; import static org.apache.dubbo.common.Constants.PROVIDERS_CATEGORY; import static org.apache.dubbo.common.Constants.ROUTERS_CATEGORY; import static org.apache.dubbo.common.Constants.ROUTE_PROTOCOL; +import static org.apache.dubbo.common.constants.CommonConstants.ANY_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DISABLED_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.ENABLED_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PROTOCOL_KEY; /** @@ -125,15 +132,15 @@ public class RegistryDirectory extends AbstractDirectory implements Notify this.serviceKey = url.getServiceKey(); this.queryMap = StringUtils.parseQueryString(url.getParameterAndDecoded(Constants.REFER_KEY)); this.overrideDirectoryUrl = this.directoryUrl = turnRegistryUrlToConsumerUrl(url); - String group = directoryUrl.getParameter(Constants.GROUP_KEY, ""); - this.multiGroup = group != null && (Constants.ANY_VALUE.equals(group) || group.contains(",")); + String group = directoryUrl.getParameter(GROUP_KEY, ""); + this.multiGroup = group != null && (ANY_VALUE.equals(group) || group.contains(",")); } private URL turnRegistryUrlToConsumerUrl(URL url) { // save any parameter in registry that will be useful to the new url. - String isDefault = url.getParameter(Constants.DEFAULT_KEY); + String isDefault = url.getParameter(DEFAULT_KEY); if (StringUtils.isNotEmpty(isDefault)) { - queryMap.put(Constants.REGISTRY_KEY + "." + Constants.DEFAULT_KEY, isDefault); + queryMap.put(Constants.REGISTRY_KEY + "." + DEFAULT_KEY, isDefault); } return URLBuilder.from(url) .setPath(url.getServiceInterface()) @@ -298,7 +305,7 @@ public class RegistryDirectory extends AbstractDirectory implements Notify List> mergedInvokers = new ArrayList<>(); Map>> groupMap = new HashMap<>(); for (Invoker invoker : invokers) { - String group = invoker.getUrl().getParameter(Constants.GROUP_KEY, ""); + String group = invoker.getUrl().getParameter(GROUP_KEY, ""); groupMap.computeIfAbsent(group, k -> new ArrayList<>()); groupMap.get(group).add(invoker); } @@ -361,7 +368,7 @@ public class RegistryDirectory extends AbstractDirectory implements Notify return newUrlInvokerMap; } Set keys = new HashSet<>(); - String queryProtocols = this.queryMap.get(Constants.PROTOCOL_KEY); + String queryProtocols = this.queryMap.get(PROTOCOL_KEY); for (URL providerUrl : urls) { // If protocol is configured at the reference side, only the matching protocol is selected if (queryProtocols != null && queryProtocols.length() > 0) { @@ -400,10 +407,10 @@ public class RegistryDirectory extends AbstractDirectory implements Notify if (invoker == null) { // Not in the cache, refer again try { boolean enabled = true; - if (url.hasParameter(Constants.DISABLED_KEY)) { - enabled = !url.getParameter(Constants.DISABLED_KEY, false); + if (url.hasParameter(DISABLED_KEY)) { + enabled = !url.getParameter(DISABLED_KEY, false); } else { - enabled = url.getParameter(Constants.ENABLED_KEY, true); + enabled = url.getParameter(ENABLED_KEY, true); } if (enabled) { invoker = new InvokerDelegate<>(protocol.refer(serviceType, url), url, providerUrl); @@ -441,7 +448,7 @@ public class RegistryDirectory extends AbstractDirectory implements Notify if ((providerUrl.getPath() == null || providerUrl.getPath() .length() == 0) && Constants.DUBBO_PROTOCOL.equals(providerUrl.getProtocol())) { // Compatible version 1.0 //fix by tony.chenl DUBBO-44 - String path = directoryUrl.getParameter(Constants.INTERFACE_KEY); + String path = directoryUrl.getParameter(INTERFACE_KEY); if (path != null) { int i = path.indexOf('/'); if (i >= 0) { diff --git a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/RegistryProtocol.java b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/RegistryProtocol.java index c70be0b92c..fcd0de288b 100644 --- a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/RegistryProtocol.java +++ b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/RegistryProtocol.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.registry.integration; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.URLBuilder; import org.apache.dubbo.common.config.ConfigurationUtils; @@ -54,24 +53,18 @@ import java.util.concurrent.ExecutorService; import static java.util.concurrent.Executors.newSingleThreadExecutor; import static org.apache.dubbo.common.Constants.ACCEPT_FOREIGN_IP; -import static org.apache.dubbo.common.Constants.ANY_VALUE; import static org.apache.dubbo.common.constants.RemotingConstants.BIND_IP_KEY; import static org.apache.dubbo.common.constants.RemotingConstants.BIND_PORT_KEY; import static org.apache.dubbo.common.Constants.CATEGORY_KEY; import static org.apache.dubbo.common.constants.RemotingConstants.CHECK_KEY; -import static org.apache.dubbo.common.Constants.COMMA_SPLIT_PATTERN; import static org.apache.dubbo.common.Constants.CONFIGURATORS_CATEGORY; import static org.apache.dubbo.common.Constants.CONFIGURATORS_SUFFIX; import static org.apache.dubbo.common.Constants.CONSUMERS_CATEGORY; import static org.apache.dubbo.common.Constants.CONSUMER_PROTOCOL; -import static org.apache.dubbo.common.Constants.DEFAULT_REGISTER_CONSUMER_KEYS; -import static org.apache.dubbo.common.Constants.DEFAULT_REGISTER_PROVIDER_KEYS; import static org.apache.dubbo.common.Constants.DEFAULT_REGISTRY; import static org.apache.dubbo.common.Constants.EXPORT_KEY; import static org.apache.dubbo.common.Constants.EXTRA_KEYS_KEY; -import static org.apache.dubbo.common.Constants.HIDE_KEY_PREFIX; import static org.apache.dubbo.common.Constants.INTERFACES; -import static org.apache.dubbo.common.Constants.METHODS_KEY; import static org.apache.dubbo.common.Constants.MONITOR_KEY; import static org.apache.dubbo.common.Constants.OVERRIDE_PROTOCOL; import static org.apache.dubbo.common.Constants.PROVIDERS_CATEGORY; @@ -86,12 +79,45 @@ import static org.apache.dubbo.common.Constants.REGISTRY_PROTOCOL; import static org.apache.dubbo.common.Constants.ROUTERS_CATEGORY; import static org.apache.dubbo.common.Constants.SIMPLIFIED_KEY; import static org.apache.dubbo.common.Constants.VALIDATION_KEY; +import static org.apache.dubbo.common.constants.ClusterConstants.LOADBALANCE_KEY; +import static org.apache.dubbo.common.constants.ClusterConstants.WARMUP_KEY; +import static org.apache.dubbo.common.constants.ClusterConstants.WEIGHT_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.ANY_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.HIDE_KEY_PREFIX; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.METHODS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.RELEASE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMESTAMP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; +import static org.apache.dubbo.common.constants.ConfigConstants.CLUSTER_KEY; +import static org.apache.dubbo.common.constants.RemotingConstants.CODEC_KEY; +import static org.apache.dubbo.common.constants.RemotingConstants.EXCHANGER_KEY; +import static org.apache.dubbo.common.constants.RemotingConstants.SERIALIZATION_KEY; +import static org.apache.dubbo.common.constants.RpcConstants.CONNECTIONS_KEY; +import static org.apache.dubbo.common.constants.RpcConstants.DEPRECATED_KEY; +import static org.apache.dubbo.common.constants.RpcConstants.DUBBO_VERSION_KEY; +import static org.apache.dubbo.common.constants.RpcConstants.MOCK_KEY; +import static org.apache.dubbo.common.constants.RpcConstants.TOKEN_KEY; import static org.apache.dubbo.common.utils.UrlUtils.classifyUrls; /** * RegistryProtocol */ public class RegistryProtocol implements Protocol { + public static final String[] DEFAULT_REGISTER_PROVIDER_KEYS = { + APPLICATION_KEY, CODEC_KEY, EXCHANGER_KEY, SERIALIZATION_KEY, CLUSTER_KEY, CONNECTIONS_KEY, DEPRECATED_KEY, + GROUP_KEY, LOADBALANCE_KEY, MOCK_KEY, PATH_KEY, TIMEOUT_KEY, TOKEN_KEY, VERSION_KEY, WARMUP_KEY, + WEIGHT_KEY, TIMESTAMP_KEY, DUBBO_VERSION_KEY, RELEASE_KEY + }; + + public static final String[] DEFAULT_REGISTER_CONSUMER_KEYS = { + APPLICATION_KEY, VERSION_KEY, GROUP_KEY, DUBBO_VERSION_KEY, RELEASE_KEY + }; private final static Logger logger = LoggerFactory.getLogger(RegistryProtocol.class); private static RegistryProtocol INSTANCE; @@ -299,14 +325,14 @@ public class RegistryProtocol implements Protocol { // if path is not the same as interface name then we should keep INTERFACE_KEY, // otherwise, the registry structure of zookeeper would be '/dubbo/path/providers', // but what we expect is '/dubbo/interface/providers' - if (!providerUrl.getPath().equals(providerUrl.getParameter(Constants.INTERFACE_KEY))) { + if (!providerUrl.getPath().equals(providerUrl.getParameter(INTERFACE_KEY))) { if (StringUtils.isNotEmpty(extraKeys)) { extraKeys += ","; } - extraKeys += Constants.INTERFACE_KEY; + extraKeys += INTERFACE_KEY; } String[] paramsToRegistry = getParamsToRegistry(DEFAULT_REGISTER_PROVIDER_KEYS - , Constants.COMMA_SPLIT_PATTERN.split(extraKeys)); + , COMMA_SPLIT_PATTERN.split(extraKeys)); return URL.valueOf(providerUrl, paramsToRegistry, providerUrl.getParameter(METHODS_KEY, (String[]) null)); } @@ -357,7 +383,7 @@ public class RegistryProtocol implements Protocol { // group="a,b" or group="*" Map qs = StringUtils.parseQueryString(url.getParameterAndDecoded(REFER_KEY)); - String group = qs.get(Constants.GROUP_KEY); + String group = qs.get(GROUP_KEY); if (group != null && group.length() > 0) { if ((COMMA_SPLIT_PATTERN.split(group)).length > 1 || "*".equals(group)) { return doRefer(getMergeableCluster(), registry, type, url); diff --git a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/AbstractRegistry.java b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/AbstractRegistry.java index cfe3299eb8..5d2f0e386e 100644 --- a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/AbstractRegistry.java +++ b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/AbstractRegistry.java @@ -52,6 +52,10 @@ import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicLong; import java.util.concurrent.atomic.AtomicReference; +import static org.apache.dubbo.common.constants.CommonConstants.ANY_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.FILE_KEY; + /** * AbstractRegistry. (SPI, Prototype, ThreadSafe) */ @@ -84,7 +88,7 @@ public abstract class AbstractRegistry implements Registry { setUrl(url); // Start file save timer syncSaveFile = url.getParameter(Constants.REGISTRY_FILESAVE_SYNC_KEY, false); - String filename = url.getParameter(Constants.FILE_KEY, System.getProperty("user.home") + "/.dubbo/dubbo-registry-" + url.getParameter(Constants.APPLICATION_KEY) + "-" + url.getAddress() + ".cache"); + String filename = url.getParameter(FILE_KEY, System.getProperty("user.home") + "/.dubbo/dubbo-registry-" + url.getParameter(APPLICATION_KEY) + "-" + url.getAddress() + ".cache"); File file = null; if (ConfigUtils.isNotEmpty(filename)) { file = new File(filename); @@ -383,7 +387,7 @@ public abstract class AbstractRegistry implements Registry { throw new IllegalArgumentException("notify listener == null"); } if ((CollectionUtils.isEmpty(urls)) - && !Constants.ANY_VALUE.equals(url.getServiceInterface())) { + && !ANY_VALUE.equals(url.getServiceInterface())) { logger.warn("Ignore empty notify urls for subscribe url " + url); return; } diff --git a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/AbstractRegistryFactory.java b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/AbstractRegistryFactory.java index 4ef392ef42..1819a09640 100644 --- a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/AbstractRegistryFactory.java +++ b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/AbstractRegistryFactory.java @@ -31,6 +31,8 @@ import java.util.HashMap; import java.util.Map; import java.util.concurrent.locks.ReentrantLock; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; + /** * AbstractRegistryFactory. (SPI, Singleton, ThreadSafe) * @@ -85,7 +87,7 @@ public abstract class AbstractRegistryFactory implements RegistryFactory { public Registry getRegistry(URL url) { url = URLBuilder.from(url) .setPath(RegistryService.class.getName()) - .addParameter(Constants.INTERFACE_KEY, RegistryService.class.getName()) + .addParameter(INTERFACE_KEY, RegistryService.class.getName()) .removeParameters(Constants.EXPORT_KEY, Constants.REFER_KEY) .build(); String key = url.toServiceStringWithoutResolving(); diff --git a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/FailbackRegistry.java b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/FailbackRegistry.java index 1132ad8b60..ef24676c3a 100644 --- a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/FailbackRegistry.java +++ b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/FailbackRegistry.java @@ -38,6 +38,8 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.FILE_KEY; + /** * FailbackRegistry. (SPI, Prototype, ThreadSafe) */ @@ -295,7 +297,7 @@ public abstract class FailbackRegistry extends AbstractRegistry { List urls = getCacheUrls(url); if (CollectionUtils.isNotEmpty(urls)) { notify(url, listener, urls); - logger.error("Failed to subscribe " + url + ", Using cached list: " + urls + " from cache file: " + getUrl().getParameter(Constants.FILE_KEY, System.getProperty("user.home") + "/dubbo-registry-" + url.getHost() + ".cache") + ", cause: " + t.getMessage(), t); + logger.error("Failed to subscribe " + url + ", Using cached list: " + urls + " from cache file: " + getUrl().getParameter(FILE_KEY, System.getProperty("user.home") + "/dubbo-registry-" + url.getHost() + ".cache") + ", cause: " + t.getMessage(), t); } else { // If the startup detection is opened, the Exception is thrown directly. boolean check = getUrl().getParameter(RemotingConstants.CHECK_KEY, true) diff --git a/dubbo-registry/dubbo-registry-consul/src/main/java/org/apache/dubbo/registry/consul/ConsulRegistry.java b/dubbo-registry/dubbo-registry-consul/src/main/java/org/apache/dubbo/registry/consul/ConsulRegistry.java index 7bcd6b00af..968e75b3ea 100644 --- a/dubbo-registry/dubbo-registry-consul/src/main/java/org/apache/dubbo/registry/consul/ConsulRegistry.java +++ b/dubbo-registry/dubbo-registry-consul/src/main/java/org/apache/dubbo/registry/consul/ConsulRegistry.java @@ -24,6 +24,7 @@ import org.apache.dubbo.common.logger.LoggerFactory; import org.apache.dubbo.common.utils.NamedThreadFactory; import org.apache.dubbo.registry.NotifyListener; import org.apache.dubbo.registry.support.FailbackRegistry; +import org.apache.dubbo.rpc.RpcException; import com.ecwid.consul.v1.ConsulClient; import com.ecwid.consul.v1.QueryParams; @@ -32,24 +33,23 @@ import com.ecwid.consul.v1.agent.model.NewService; import com.ecwid.consul.v1.catalog.CatalogServicesRequest; import com.ecwid.consul.v1.health.HealthServicesRequest; import com.ecwid.consul.v1.health.model.HealthService; -import org.apache.dubbo.rpc.RpcException; +import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.List; -import java.util.ArrayList; import java.util.Map; import java.util.Objects; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.Executors; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; +import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; import static java.util.concurrent.Executors.newCachedThreadPool; -import static org.apache.dubbo.common.Constants.ANY_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.ANY_VALUE; /** * registry center implementation for consul diff --git a/dubbo-registry/dubbo-registry-default/src/main/java/org/apache/dubbo/registry/dubbo/DubboRegistryFactory.java b/dubbo-registry/dubbo-registry-default/src/main/java/org/apache/dubbo/registry/dubbo/DubboRegistryFactory.java index c199774b39..68b37c9291 100644 --- a/dubbo-registry/dubbo-registry-default/src/main/java/org/apache/dubbo/registry/dubbo/DubboRegistryFactory.java +++ b/dubbo-registry/dubbo-registry-default/src/main/java/org/apache/dubbo/registry/dubbo/DubboRegistryFactory.java @@ -38,6 +38,11 @@ import java.util.Arrays; import java.util.HashSet; import java.util.List; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.METHODS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * DubboRegistryFactory * @@ -52,14 +57,14 @@ public class DubboRegistryFactory extends AbstractRegistryFactory { return URLBuilder.from(url) .setPath(RegistryService.class.getName()) .removeParameter(Constants.EXPORT_KEY).removeParameter(Constants.REFER_KEY) - .addParameter(Constants.INTERFACE_KEY, RegistryService.class.getName()) + .addParameter(INTERFACE_KEY, RegistryService.class.getName()) .addParameter(Constants.CLUSTER_STICKY_KEY, "true") .addParameter(Constants.LAZY_CONNECT_KEY, "true") .addParameter(RemotingConstants.RECONNECT_KEY, "false") - .addParameterIfAbsent(Constants.TIMEOUT_KEY, "10000") + .addParameterIfAbsent(TIMEOUT_KEY, "10000") .addParameterIfAbsent(Constants.CALLBACK_INSTANCES_LIMIT_KEY, "10000") .addParameterIfAbsent(RemotingConstants.CONNECT_TIMEOUT_KEY, "10000") - .addParameter(Constants.METHODS_KEY, StringUtils.join(new HashSet<>(Arrays.asList(Wrapper.getWrapper(RegistryService.class).getDeclaredMethodNames())), ",")) + .addParameter(METHODS_KEY, StringUtils.join(new HashSet<>(Arrays.asList(Wrapper.getWrapper(RegistryService.class).getDeclaredMethodNames())), ",")) //.addParameter(Constants.STUB_KEY, RegistryServiceStub.class.getName()) //.addParameter(Constants.STUB_EVENT_KEY, Boolean.TRUE.toString()) //for event dispatch //.addParameter(Constants.ON_DISCONNECT_KEY, "disconnect") @@ -87,12 +92,12 @@ public class DubboRegistryFactory extends AbstractRegistryFactory { urls.add(url.removeParameter(RemotingConstants.BACKUP_KEY)); String backup = url.getParameter(RemotingConstants.BACKUP_KEY); if (backup != null && backup.length() > 0) { - String[] addresses = Constants.COMMA_SPLIT_PATTERN.split(backup); + String[] addresses = COMMA_SPLIT_PATTERN.split(backup); for (String address : addresses) { urls.add(url.setAddress(address)); } } - RegistryDirectory directory = new RegistryDirectory<>(RegistryService.class, url.addParameter(Constants.INTERFACE_KEY, RegistryService.class.getName()).addParameterAndEncoded(Constants.REFER_KEY, url.toParameterString())); + RegistryDirectory directory = new RegistryDirectory<>(RegistryService.class, url.addParameter(INTERFACE_KEY, RegistryService.class.getName()).addParameterAndEncoded(Constants.REFER_KEY, url.toParameterString())); Invoker registryInvoker = cluster.join(directory); RegistryService registryService = proxyFactory.getProxy(registryInvoker); DubboRegistry registry = new DubboRegistry(registryInvoker, registryService); diff --git a/dubbo-registry/dubbo-registry-default/src/test/java/org/apache/dubbo/registry/dubbo/RegistryDirectoryTest.java b/dubbo-registry/dubbo-registry-default/src/test/java/org/apache/dubbo/registry/dubbo/RegistryDirectoryTest.java index e6911fd834..4bf7e2a883 100644 --- a/dubbo-registry/dubbo-registry-default/src/test/java/org/apache/dubbo/registry/dubbo/RegistryDirectoryTest.java +++ b/dubbo-registry/dubbo-registry-default/src/test/java/org/apache/dubbo/registry/dubbo/RegistryDirectoryTest.java @@ -50,6 +50,12 @@ import java.util.List; import java.util.Map; import java.util.concurrent.CountDownLatch; +import static org.apache.dubbo.common.constants.CommonConstants.ANYHOST_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.DISABLED_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.ENABLED_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.SIDE_KEY; import static org.junit.jupiter.api.Assertions.fail; @SuppressWarnings({"rawtypes", "unchecked"}) @@ -183,7 +189,7 @@ public class RegistryDirectoryTest { private void testforbid(RegistryDirectory registryDirectory) { invocation = new RpcInvocation(); List serviceUrls = new ArrayList(); - serviceUrls.add(new URL(Constants.EMPTY_PROTOCOL, Constants.ANYHOST_VALUE, 0, service, Constants.CATEGORY_KEY, Constants.PROVIDERS_CATEGORY)); + serviceUrls.add(new URL(Constants.EMPTY_PROTOCOL, ANYHOST_VALUE, 0, service, Constants.CATEGORY_KEY, Constants.PROVIDERS_CATEGORY)); registryDirectory.notify(serviceUrls); Assertions.assertEquals(false, registryDirectory.isAvailable(), "invokers size=0 ,then the registry directory is not available"); @@ -228,7 +234,7 @@ public class RegistryDirectoryTest { private void test_Notified1invokers(RegistryDirectory registryDirectory) { List serviceUrls = new ArrayList(); - serviceUrls.add(SERVICEURL.addParameter("methods", "getXXX1").addParameter(Constants.APPLICATION_KEY, "mockApplicationName"));// .addParameter("refer.autodestroy", "true") + serviceUrls.add(SERVICEURL.addParameter("methods", "getXXX1").addParameter(APPLICATION_KEY, "mockApplicationName"));// .addParameter("refer.autodestroy", "true") registryDirectory.notify(serviceUrls); Assertions.assertEquals(true, registryDirectory.isAvailable()); @@ -711,8 +717,8 @@ public class RegistryDirectoryTest { invocation = new RpcInvocation(); List durls = new ArrayList(); - durls.add(SERVICEURL.setHost("10.20.30.140").addParameter("timeout", "1").addParameter(Constants.SIDE_KEY, Constants.CONSUMER_SIDE));//One is the same, one is different - durls.add(SERVICEURL2.setHost("10.20.30.141").addParameter("timeout", "2").addParameter(Constants.SIDE_KEY, Constants.CONSUMER_SIDE)); + durls.add(SERVICEURL.setHost("10.20.30.140").addParameter("timeout", "1").addParameter(SIDE_KEY, CONSUMER_SIDE));//One is the same, one is different + durls.add(SERVICEURL2.setHost("10.20.30.141").addParameter("timeout", "2").addParameter(SIDE_KEY, CONSUMER_SIDE)); registryDirectory.notify(durls); durls = new ArrayList(); @@ -829,7 +835,7 @@ public class RegistryDirectoryTest { registryDirectory.notify(durls); durls = new ArrayList(); - durls.add(URL.valueOf("override://0.0.0.0?" + Constants.ENABLED_KEY + "=false")); + durls.add(URL.valueOf("override://0.0.0.0?" + ENABLED_KEY + "=false")); registryDirectory.notify(durls); List> invokers = registryDirectory.list(invocation); @@ -852,7 +858,7 @@ public class RegistryDirectoryTest { registryDirectory.notify(durls); durls = new ArrayList(); - durls.add(URL.valueOf("override://10.20.30.140:9091?" + Constants.DISABLED_KEY + "=true")); + durls.add(URL.valueOf("override://10.20.30.140:9091?" + DISABLED_KEY + "=true")); registryDirectory.notify(durls); List> invokers = registryDirectory.list(invocation); @@ -860,7 +866,7 @@ public class RegistryDirectoryTest { Assertions.assertEquals("10.20.30.141", invokers.get(0).getUrl().getHost()); durls = new ArrayList(); - durls.add(URL.valueOf("empty://0.0.0.0?" + Constants.DISABLED_KEY + "=true&" + Constants.CATEGORY_KEY + "=" + Constants.CONFIGURATORS_CATEGORY)); + durls.add(URL.valueOf("empty://0.0.0.0?" + DISABLED_KEY + "=true&" + Constants.CATEGORY_KEY + "=" + Constants.CONFIGURATORS_CATEGORY)); registryDirectory.notify(durls); List> invokers2 = registryDirectory.list(invocation); Assertions.assertEquals(2, invokers2.size()); @@ -891,7 +897,7 @@ public class RegistryDirectoryTest { Assertions.assertEquals("10.20.30.140", invokers2.get(0).getUrl().getHost()); durls = new ArrayList(); - durls.add(URL.valueOf("empty://0.0.0.0?" + Constants.DISABLED_KEY + "=true&" + Constants.CATEGORY_KEY + "=" + Constants.CONFIGURATORS_CATEGORY)); + durls.add(URL.valueOf("empty://0.0.0.0?" + DISABLED_KEY + "=true&" + Constants.CATEGORY_KEY + "=" + Constants.CONFIGURATORS_CATEGORY)); registryDirectory.notify(durls); List> invokers3 = registryDirectory.list(invocation); Assertions.assertEquals(1, invokers3.size()); @@ -908,7 +914,7 @@ public class RegistryDirectoryTest { // Initially disable List durls = new ArrayList(); - durls.add(SERVICEURL.setHost("10.20.30.140").addParameter(Constants.ENABLED_KEY, "false")); + durls.add(SERVICEURL.setHost("10.20.30.140").addParameter(ENABLED_KEY, "false")); durls.add(SERVICEURL.setHost("10.20.30.141")); registryDirectory.notify(durls); @@ -918,7 +924,7 @@ public class RegistryDirectoryTest { //Enabled by override rule durls = new ArrayList(); - durls.add(URL.valueOf("override://10.20.30.140:9091?" + Constants.DISABLED_KEY + "=false")); + durls.add(URL.valueOf("override://10.20.30.140:9091?" + DISABLED_KEY + "=false")); registryDirectory.notify(durls); List> invokers2 = registryDirectory.list(invocation); Assertions.assertEquals(2, invokers2.size()); diff --git a/dubbo-registry/dubbo-registry-default/src/test/java/org/apache/dubbo/registry/dubbo/RegistryProtocolTest.java b/dubbo-registry/dubbo-registry-default/src/test/java/org/apache/dubbo/registry/dubbo/RegistryProtocolTest.java index f1669d3462..40d5cb4ea0 100644 --- a/dubbo-registry/dubbo-registry-default/src/test/java/org/apache/dubbo/registry/dubbo/RegistryProtocolTest.java +++ b/dubbo-registry/dubbo-registry-default/src/test/java/org/apache/dubbo/registry/dubbo/RegistryProtocolTest.java @@ -42,7 +42,7 @@ import org.junit.jupiter.api.Test; import java.util.ArrayList; import java.util.List; -import static org.apache.dubbo.common.Constants.DEFAULT_REGISTER_PROVIDER_KEYS; +import static org.apache.dubbo.registry.integration.RegistryProtocol.DEFAULT_REGISTER_PROVIDER_KEYS; import static org.junit.jupiter.api.Assertions.assertEquals; /** diff --git a/dubbo-registry/dubbo-registry-default/src/test/java/org/apache/dubbo/registry/dubbo/SimpleRegistryExporter.java b/dubbo-registry/dubbo-registry-default/src/test/java/org/apache/dubbo/registry/dubbo/SimpleRegistryExporter.java index 2b67e63414..92f5fb4913 100644 --- a/dubbo-registry/dubbo-registry-default/src/test/java/org/apache/dubbo/registry/dubbo/SimpleRegistryExporter.java +++ b/dubbo-registry/dubbo-registry-default/src/test/java/org/apache/dubbo/registry/dubbo/SimpleRegistryExporter.java @@ -17,7 +17,6 @@ package org.apache.dubbo.registry.dubbo; import org.apache.dubbo.common.Constants; -import org.apache.dubbo.common.URL; import org.apache.dubbo.common.URLBuilder; import org.apache.dubbo.common.extension.ExtensionLoader; import org.apache.dubbo.common.utils.NetUtils; @@ -29,6 +28,8 @@ import org.apache.dubbo.rpc.ProxyFactory; import java.io.IOException; import java.net.ServerSocket; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; + /** * SimpleRegistryExporter * @@ -56,7 +57,7 @@ public class SimpleRegistryExporter { return protocol.export(proxyFactory.getInvoker(registryService, RegistryService.class, new URLBuilder(Constants.DUBBO_PROTOCOL, NetUtils.getLocalHost(), port, RegistryService.class.getName()) .setPath(RegistryService.class.getName()) - .addParameter(Constants.INTERFACE_KEY, RegistryService.class.getName()) + .addParameter(INTERFACE_KEY, RegistryService.class.getName()) .addParameter(Constants.CLUSTER_STICKY_KEY, "true") .addParameter(Constants.CALLBACK_INSTANCES_LIMIT_KEY, "1000") .addParameter("ondisconnect", "disconnect") diff --git a/dubbo-registry/dubbo-registry-etcd3/src/main/java/org/apache/dubbo/registry/etcd/EtcdRegistry.java b/dubbo-registry/dubbo-registry-etcd3/src/main/java/org/apache/dubbo/registry/etcd/EtcdRegistry.java index 1f70044c16..93612b5457 100644 --- a/dubbo-registry/dubbo-registry-etcd3/src/main/java/org/apache/dubbo/registry/etcd/EtcdRegistry.java +++ b/dubbo-registry/dubbo-registry-etcd3/src/main/java/org/apache/dubbo/registry/etcd/EtcdRegistry.java @@ -57,6 +57,11 @@ import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; +import static org.apache.dubbo.common.constants.CommonConstants.ANY_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_SEPARATOR; + /** * Support for ectd3 registry. @@ -81,9 +86,9 @@ public class EtcdRegistry extends FailbackRegistry { if (url.isAnyHost()) { throw new IllegalStateException("registry address is invalid, actual: '" + url.getHost() + "'"); } - String group = url.getParameter(Constants.GROUP_KEY, DEFAULT_ROOT); - if (!group.startsWith(Constants.PATH_SEPARATOR)) { - group = Constants.PATH_SEPARATOR + group; + String group = url.getParameter(GROUP_KEY, DEFAULT_ROOT); + if (!group.startsWith(PATH_SEPARATOR)) { + group = PATH_SEPARATOR + group; } this.root = group; etcdClient = etcdTransporter.connect(url); @@ -141,7 +146,7 @@ public class EtcdRegistry extends FailbackRegistry { @Override public void doSubscribe(URL url, NotifyListener listener) { try { - if (Constants.ANY_VALUE.equals(url.getServiceInterface())) { + if (ANY_VALUE.equals(url.getServiceInterface())) { String root = toRootPath(); /* @@ -179,7 +184,7 @@ public class EtcdRegistry extends FailbackRegistry { * if new interface event arrived, we watch their direct children, * eg: /dubbo/interface, /dubbo/interface and so on. */ - subscribe(url.setPath(child).addParameters(Constants.INTERFACE_KEY, child, + subscribe(url.setPath(child).addParameters(INTERFACE_KEY, child, RemotingConstants.CHECK_KEY, String.valueOf(false)), listener); } } @@ -196,7 +201,7 @@ public class EtcdRegistry extends FailbackRegistry { for (String service : services) { service = URL.decode(service); anyServices.add(service); - subscribe(url.setPath(service).addParameters(Constants.INTERFACE_KEY, service, + subscribe(url.setPath(service).addParameters(INTERFACE_KEY, service, RemotingConstants.CHECK_KEY, String.valueOf(false)), listener); } } else { @@ -279,10 +284,10 @@ public class EtcdRegistry extends FailbackRegistry { } protected String toRootDir() { - if (root.startsWith(Constants.PATH_SEPARATOR)) { + if (root.startsWith(PATH_SEPARATOR)) { return root; } - return Constants.PATH_SEPARATOR + root; + return PATH_SEPARATOR + root; } protected String toRootPath() { @@ -291,15 +296,15 @@ public class EtcdRegistry extends FailbackRegistry { protected String toServicePath(URL url) { String name = url.getServiceInterface(); - if (Constants.ANY_VALUE.equals(name)) { + if (ANY_VALUE.equals(name)) { return toRootPath(); } - return toRootDir() + Constants.PATH_SEPARATOR + URL.encode(name); + return toRootDir() + PATH_SEPARATOR + URL.encode(name); } protected String[] toCategoriesPath(URL url) { String[] categories; - if (Constants.ANY_VALUE.equals(url.getParameter(Constants.CATEGORY_KEY))) { + if (ANY_VALUE.equals(url.getParameter(Constants.CATEGORY_KEY))) { categories = new String[]{Constants.PROVIDERS_CATEGORY, Constants.CONSUMERS_CATEGORY, Constants.ROUTERS_CATEGORY, Constants.CONFIGURATORS_CATEGORY}; } else { @@ -307,25 +312,25 @@ public class EtcdRegistry extends FailbackRegistry { } String[] paths = new String[categories.length]; for (int i = 0; i < categories.length; i++) { - paths[i] = toServicePath(url) + Constants.PATH_SEPARATOR + categories[i]; + paths[i] = toServicePath(url) + PATH_SEPARATOR + categories[i]; } return paths; } protected String toCategoryPath(URL url) { - return toServicePath(url) + Constants.PATH_SEPARATOR + url.getParameter(Constants.CATEGORY_KEY, Constants.DEFAULT_CATEGORY); + return toServicePath(url) + PATH_SEPARATOR + url.getParameter(Constants.CATEGORY_KEY, Constants.DEFAULT_CATEGORY); } protected String toUrlPath(URL url) { - return toCategoryPath(url) + Constants.PATH_SEPARATOR + URL.encode(url.toFullString()); + return toCategoryPath(url) + PATH_SEPARATOR + URL.encode(url.toFullString()); } protected List toUnsubscribedPath(URL url) { List categories = new ArrayList<>(); - if (Constants.ANY_VALUE.equals(url.getServiceInterface())) { - String group = url.getParameter(Constants.GROUP_KEY, DEFAULT_ROOT); - if (!group.startsWith(Constants.PATH_SEPARATOR)) { - group = Constants.PATH_SEPARATOR + group; + if (ANY_VALUE.equals(url.getServiceInterface())) { + String group = url.getParameter(GROUP_KEY, DEFAULT_ROOT); + if (!group.startsWith(PATH_SEPARATOR)) { + group = PATH_SEPARATOR + group; } categories.add(group); return categories; diff --git a/dubbo-registry/dubbo-registry-etcd3/src/test/java/org/apache/dubbo/registry/etcd/EtcdRegistryTest.java b/dubbo-registry/dubbo-registry-etcd3/src/test/java/org/apache/dubbo/registry/etcd/EtcdRegistryTest.java index 7de7541179..f972242a1d 100644 --- a/dubbo-registry/dubbo-registry-etcd3/src/test/java/org/apache/dubbo/registry/etcd/EtcdRegistryTest.java +++ b/dubbo-registry/dubbo-registry-etcd3/src/test/java/org/apache/dubbo/registry/etcd/EtcdRegistryTest.java @@ -58,6 +58,7 @@ import org.apache.dubbo.common.utils.NetUtils; import org.apache.dubbo.registry.NotifyListener; import org.apache.dubbo.registry.RegistryFactory; import org.apache.dubbo.registry.support.AbstractRegistryFactory; + import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeEach; @@ -73,6 +74,13 @@ import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicReference; +import static org.apache.dubbo.common.constants.CommonConstants.ANY_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.CLASSIFIER_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.ENABLED_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + @Disabled public class EtcdRegistryTest { @@ -87,15 +95,15 @@ public class EtcdRegistryTest { EtcdRegistry registry; URL subscribe = new URL( Constants.ADMIN_PROTOCOL, NetUtils.getLocalHost(), 0, "", - Constants.INTERFACE_KEY, Constants.ANY_VALUE, - Constants.GROUP_KEY, Constants.ANY_VALUE, - Constants.VERSION_KEY, Constants.ANY_VALUE, - Constants.CLASSIFIER_KEY, Constants.ANY_VALUE, + INTERFACE_KEY, ANY_VALUE, + GROUP_KEY, ANY_VALUE, + VERSION_KEY, ANY_VALUE, + CLASSIFIER_KEY, ANY_VALUE, Constants.CATEGORY_KEY, Constants.PROVIDERS_CATEGORY + "," + Constants.CONSUMERS_CATEGORY + "," + Constants.ROUTERS_CATEGORY + "," + Constants.CONFIGURATORS_CATEGORY, - Constants.ENABLED_KEY, Constants.ANY_VALUE, + ENABLED_KEY, ANY_VALUE, RemotingConstants.CHECK_KEY, String.valueOf(false)); @Test diff --git a/dubbo-registry/dubbo-registry-multicast/src/main/java/org/apache/dubbo/registry/multicast/MulticastRegistry.java b/dubbo-registry/dubbo-registry-multicast/src/main/java/org/apache/dubbo/registry/multicast/MulticastRegistry.java index 3223532c07..ae7b004ab3 100644 --- a/dubbo-registry/dubbo-registry-multicast/src/main/java/org/apache/dubbo/registry/multicast/MulticastRegistry.java +++ b/dubbo-registry/dubbo-registry-multicast/src/main/java/org/apache/dubbo/registry/multicast/MulticastRegistry.java @@ -49,6 +49,10 @@ import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.ANY_VALUE; + /** * MulticastRegistry */ @@ -249,13 +253,13 @@ public class MulticastRegistry extends FailbackRegistry { @Override public void doSubscribe(URL url, NotifyListener listener) { - if (Constants.ANY_VALUE.equals(url.getServiceInterface())) { + if (ANY_VALUE.equals(url.getServiceInterface())) { admin = true; } multicast(Constants.SUBSCRIBE + " " + url.toFullString()); synchronized (listener) { try { - listener.wait(url.getParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT)); + listener.wait(url.getParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT)); } catch (InterruptedException e) { } } @@ -263,7 +267,7 @@ public class MulticastRegistry extends FailbackRegistry { @Override public void doUnsubscribe(URL url, NotifyListener listener) { - if (!Constants.ANY_VALUE.equals(url.getServiceInterface()) && url.getParameter(Constants.REGISTER_KEY, true)) { + if (!ANY_VALUE.equals(url.getServiceInterface()) && url.getParameter(Constants.REGISTER_KEY, true)) { unregister(url); } multicast(Constants.UNSUBSCRIBE + " " + url.toFullString()); @@ -403,7 +407,7 @@ public class MulticastRegistry extends FailbackRegistry { } } } - if (Constants.ANY_VALUE.equals(url.getServiceInterface())) { + if (ANY_VALUE.equals(url.getServiceInterface())) { for (URL u : getSubscribed().keySet()) { if (UrlUtils.isMatch(url, u)) { urls.add(u); diff --git a/dubbo-registry/dubbo-registry-nacos/src/main/java/org/apache/dubbo/registry/nacos/NacosRegistry.java b/dubbo-registry/dubbo-registry-nacos/src/main/java/org/apache/dubbo/registry/nacos/NacosRegistry.java index da00a9d35e..40d4a1355b 100644 --- a/dubbo-registry/dubbo-registry-nacos/src/main/java/org/apache/dubbo/registry/nacos/NacosRegistry.java +++ b/dubbo-registry/dubbo-registry-nacos/src/main/java/org/apache/dubbo/registry/nacos/NacosRegistry.java @@ -52,11 +52,14 @@ import static org.apache.dubbo.common.Constants.CATEGORY_KEY; import static org.apache.dubbo.common.Constants.CONFIGURATORS_CATEGORY; import static org.apache.dubbo.common.Constants.CONSUMERS_CATEGORY; import static org.apache.dubbo.common.Constants.DEFAULT_CATEGORY; -import static org.apache.dubbo.common.Constants.GROUP_KEY; -import static org.apache.dubbo.common.Constants.INTERFACE_KEY; import static org.apache.dubbo.common.Constants.PROVIDERS_CATEGORY; import static org.apache.dubbo.common.Constants.ROUTERS_CATEGORY; -import static org.apache.dubbo.common.Constants.VERSION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.ANY_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PROTOCOL_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; /** * Nacos {@link Registry} @@ -381,14 +384,14 @@ public class NacosRegistry extends FailbackRegistry { * @return non-null array */ private String[] getCategories(URL url) { - return Constants.ANY_VALUE.equals(url.getServiceInterface()) ? + return ANY_VALUE.equals(url.getServiceInterface()) ? ALL_SUPPORTED_CATEGORIES : of(Constants.DEFAULT_CATEGORY); } private URL buildURL(Instance instance) { Map metadata = instance.getMetadata(); - String protocol = metadata.get(Constants.PROTOCOL_KEY); - String path = metadata.get(Constants.PATH_KEY); + String protocol = metadata.get(PROTOCOL_KEY); + String path = metadata.get(PATH_KEY); return new URL(protocol, instance.getIp(), instance.getPort(), @@ -400,8 +403,8 @@ public class NacosRegistry extends FailbackRegistry { // Append default category if absent String category = url.getParameter(Constants.CATEGORY_KEY, Constants.DEFAULT_CATEGORY); URL newURL = url.addParameter(Constants.CATEGORY_KEY, category); - newURL = newURL.addParameter(Constants.PROTOCOL_KEY, url.getProtocol()); - newURL = newURL.addParameter(Constants.PATH_KEY, url.getPath()); + newURL = newURL.addParameter(PROTOCOL_KEY, url.getProtocol()); + newURL = newURL.addParameter(PATH_KEY, url.getPath()); String ip = url.getHost(); int port = url.getPort(); Instance instance = new Instance(); diff --git a/dubbo-registry/dubbo-registry-redis/src/main/java/org/apache/dubbo/registry/redis/RedisRegistry.java b/dubbo-registry/dubbo-registry-redis/src/main/java/org/apache/dubbo/registry/redis/RedisRegistry.java index 5303ddc495..03a8131b22 100644 --- a/dubbo-registry/dubbo-registry-redis/src/main/java/org/apache/dubbo/registry/redis/RedisRegistry.java +++ b/dubbo-registry/dubbo-registry-redis/src/main/java/org/apache/dubbo/registry/redis/RedisRegistry.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.registry.redis; -import org.apache.commons.pool2.impl.GenericObjectPoolConfig; import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.URLBuilder; @@ -32,6 +31,8 @@ import org.apache.dubbo.common.utils.UrlUtils; import org.apache.dubbo.registry.NotifyListener; import org.apache.dubbo.registry.support.FailbackRegistry; import org.apache.dubbo.rpc.RpcException; + +import org.apache.commons.pool2.impl.GenericObjectPoolConfig; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPubSub; @@ -55,6 +56,13 @@ import java.util.concurrent.ThreadLocalRandom; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; +import static org.apache.dubbo.common.constants.CommonConstants.ANYHOST_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.ANY_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_SEPARATOR; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * RedisRegistry */ @@ -143,17 +151,17 @@ public class RedisRegistry extends FailbackRegistry { port = DEFAULT_REDIS_PORT; } this.jedisPools.put(address, new JedisPool(config, host, port, - url.getParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT), StringUtils.isEmpty(url.getPassword()) ? null : url.getPassword(), + url.getParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT), StringUtils.isEmpty(url.getPassword()) ? null : url.getPassword(), url.getParameter("db.index", 0))); } this.reconnectPeriod = url.getParameter(Constants.REGISTRY_RECONNECT_PERIOD_KEY, Constants.DEFAULT_REGISTRY_RECONNECT_PERIOD); - String group = url.getParameter(Constants.GROUP_KEY, DEFAULT_ROOT); - if (!group.startsWith(Constants.PATH_SEPARATOR)) { - group = Constants.PATH_SEPARATOR + group; + String group = url.getParameter(GROUP_KEY, DEFAULT_ROOT); + if (!group.startsWith(PATH_SEPARATOR)) { + group = PATH_SEPARATOR + group; } - if (!group.endsWith(Constants.PATH_SEPARATOR)) { - group = group + Constants.PATH_SEPARATOR; + if (!group.endsWith(PATH_SEPARATOR)) { + group = group + PATH_SEPARATOR; } this.root = group; @@ -195,7 +203,7 @@ public class RedisRegistry extends FailbackRegistry { // The monitoring center is responsible for deleting outdated dirty data private void clean(Jedis jedis) { - Set keys = jedis.keys(root + Constants.ANY_VALUE); + Set keys = jedis.keys(root + ANY_VALUE); if (CollectionUtils.isNotEmpty(keys)) { for (String key : keys) { Map values = jedis.hgetAll(key); @@ -341,7 +349,7 @@ public class RedisRegistry extends FailbackRegistry { JedisPool jedisPool = entry.getValue(); try { try (Jedis jedis = jedisPool.getResource()) { - if (service.endsWith(Constants.ANY_VALUE)) { + if (service.endsWith(ANY_VALUE)) { admin = true; Set keys = jedis.keys(service); if (CollectionUtils.isNotEmpty(keys)) { @@ -356,7 +364,7 @@ public class RedisRegistry extends FailbackRegistry { } } } else { - doNotify(jedis, jedis.keys(service + Constants.PATH_SEPARATOR + Constants.ANY_VALUE), url, Collections.singletonList(listener)); + doNotify(jedis, jedis.keys(service + PATH_SEPARATOR + ANY_VALUE), url, Collections.singletonList(listener)); } success = true; break; // Just read one server's data @@ -394,14 +402,14 @@ public class RedisRegistry extends FailbackRegistry { List categories = Arrays.asList(url.getParameter(Constants.CATEGORY_KEY, new String[0])); String consumerService = url.getServiceInterface(); for (String key : keys) { - if (!Constants.ANY_VALUE.equals(consumerService)) { + if (!ANY_VALUE.equals(consumerService)) { String providerService = toServiceName(key); if (!providerService.equals(consumerService)) { continue; } } String category = toCategoryName(key); - if (!categories.contains(Constants.ANY_VALUE) && !categories.contains(category)) { + if (!categories.contains(ANY_VALUE) && !categories.contains(category)) { continue; } List urls = new ArrayList<>(); @@ -420,7 +428,7 @@ public class RedisRegistry extends FailbackRegistry { if (urls.isEmpty()) { urls.add(URLBuilder.from(url) .setProtocol(Constants.EMPTY_PROTOCOL) - .setAddress(Constants.ANYHOST_VALUE) + .setAddress(ANYHOST_VALUE) .setPath(toServiceName(key)) .addParameter(Constants.CATEGORY_KEY, category) .build()); @@ -444,16 +452,16 @@ public class RedisRegistry extends FailbackRegistry { } private String toCategoryName(String categoryPath) { - int i = categoryPath.lastIndexOf(Constants.PATH_SEPARATOR); + int i = categoryPath.lastIndexOf(PATH_SEPARATOR); return i > 0 ? categoryPath.substring(i + 1) : categoryPath; } private String toServicePath(String categoryPath) { int i; if (categoryPath.startsWith(root)) { - i = categoryPath.indexOf(Constants.PATH_SEPARATOR, root.length()); + i = categoryPath.indexOf(PATH_SEPARATOR, root.length()); } else { - i = categoryPath.indexOf(Constants.PATH_SEPARATOR); + i = categoryPath.indexOf(PATH_SEPARATOR); } return i > 0 ? categoryPath.substring(0, i) : categoryPath; } @@ -463,7 +471,7 @@ public class RedisRegistry extends FailbackRegistry { } private String toCategoryPath(URL url) { - return toServicePath(url) + Constants.PATH_SEPARATOR + url.getParameter(Constants.CATEGORY_KEY, Constants.DEFAULT_CATEGORY); + return toServicePath(url) + PATH_SEPARATOR + url.getParameter(Constants.CATEGORY_KEY, Constants.DEFAULT_CATEGORY); } private class NotifySub extends JedisPubSub { @@ -567,7 +575,7 @@ public class RedisRegistry extends FailbackRegistry { try { jedis = jedisPool.getResource(); try { - if (service.endsWith(Constants.ANY_VALUE)) { + if (service.endsWith(ANY_VALUE)) { if (first) { first = false; Set keys = jedis.keys(service); @@ -585,7 +593,7 @@ public class RedisRegistry extends FailbackRegistry { doNotify(jedis, service); resetSkip(); } - jedis.psubscribe(new NotifySub(jedisPool), service + Constants.PATH_SEPARATOR + Constants.ANY_VALUE); // blocking + jedis.psubscribe(new NotifySub(jedisPool), service + PATH_SEPARATOR + ANY_VALUE); // blocking } break; } finally { diff --git a/dubbo-registry/dubbo-registry-sofa/src/main/java/org/apache/dubbo/registry/sofa/SofaRegistry.java b/dubbo-registry/dubbo-registry-sofa/src/main/java/org/apache/dubbo/registry/sofa/SofaRegistry.java index a514d7a251..f83e0e6dad 100644 --- a/dubbo-registry/dubbo-registry-sofa/src/main/java/org/apache/dubbo/registry/sofa/SofaRegistry.java +++ b/dubbo-registry/dubbo-registry-sofa/src/main/java/org/apache/dubbo/registry/sofa/SofaRegistry.java @@ -16,6 +16,15 @@ */ package org.apache.dubbo.registry.sofa; +import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.URL; +import org.apache.dubbo.common.logger.Logger; +import org.apache.dubbo.common.logger.LoggerFactory; +import org.apache.dubbo.common.utils.ConfigUtils; +import org.apache.dubbo.common.utils.StringUtils; +import org.apache.dubbo.registry.NotifyListener; +import org.apache.dubbo.registry.support.FailbackRegistry; + import com.alipay.sofa.registry.client.api.RegistryClient; import com.alipay.sofa.registry.client.api.RegistryClientConfig; import com.alipay.sofa.registry.client.api.Subscriber; @@ -26,14 +35,6 @@ import com.alipay.sofa.registry.client.api.registration.SubscriberRegistration; import com.alipay.sofa.registry.client.provider.DefaultRegistryClient; import com.alipay.sofa.registry.client.provider.DefaultRegistryClientConfigBuilder; import com.alipay.sofa.registry.core.model.ScopeEnum; -import org.apache.dubbo.common.Constants; -import org.apache.dubbo.common.URL; -import org.apache.dubbo.common.logger.Logger; -import org.apache.dubbo.common.logger.LoggerFactory; -import org.apache.dubbo.common.utils.ConfigUtils; -import org.apache.dubbo.common.utils.StringUtils; -import org.apache.dubbo.registry.NotifyListener; -import org.apache.dubbo.registry.support.FailbackRegistry; import java.util.ArrayList; import java.util.List; @@ -42,6 +43,10 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DUBBO; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; import static org.apache.dubbo.registry.sofa.SofaRegistryConstants.ADDRESS_WAIT_TIME_KEY; import static org.apache.dubbo.registry.sofa.SofaRegistryConstants.DEFAULT_GROUP; import static org.apache.dubbo.registry.sofa.SofaRegistryConstants.LOCAL_DATA_CENTER; @@ -208,7 +213,7 @@ public class SofaRegistry extends FailbackRegistry { List datas = flatUserData(data); for (String serviceUrl : datas) { URL url = URL.valueOf(serviceUrl); - String serverApplication = url.getParameter(Constants.APPLICATION_KEY); + String serverApplication = url.getParameter(APPLICATION_KEY); if (StringUtils.isNotEmpty(serverApplication)) { url = url.addParameter("dstApp", serverApplication); } @@ -225,15 +230,15 @@ public class SofaRegistry extends FailbackRegistry { // return url.getServiceKey(); StringBuilder buf = new StringBuilder(); buf.append(url.getServiceInterface()); - String version = url.getParameter(Constants.VERSION_KEY); + String version = url.getParameter(VERSION_KEY); if (StringUtils.isNotEmpty(version)) { buf.append(":").append(version); } - String group = url.getParameter(Constants.GROUP_KEY); + String group = url.getParameter(GROUP_KEY); if (StringUtils.isNotEmpty(group)) { buf.append(":").append(group); } - buf.append("@").append(Constants.DUBBO); + buf.append("@").append(DUBBO); return buf.toString(); } diff --git a/dubbo-registry/dubbo-registry-zookeeper/src/main/java/org/apache/dubbo/registry/zookeeper/ZookeeperRegistry.java b/dubbo-registry/dubbo-registry-zookeeper/src/main/java/org/apache/dubbo/registry/zookeeper/ZookeeperRegistry.java index 102d5881af..74ed7215e2 100644 --- a/dubbo-registry/dubbo-registry-zookeeper/src/main/java/org/apache/dubbo/registry/zookeeper/ZookeeperRegistry.java +++ b/dubbo-registry/dubbo-registry-zookeeper/src/main/java/org/apache/dubbo/registry/zookeeper/ZookeeperRegistry.java @@ -39,6 +39,12 @@ import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; +import static org.apache.dubbo.common.constants.CommonConstants.ANY_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_SEPARATOR; +import static org.apache.dubbo.common.constants.CommonConstants.PROTOCOL_SEPARATOR; + /** * ZookeeperRegistry * @@ -64,9 +70,9 @@ public class ZookeeperRegistry extends FailbackRegistry { if (url.isAnyHost()) { throw new IllegalStateException("registry address == null"); } - String group = url.getParameter(Constants.GROUP_KEY, DEFAULT_ROOT); - if (!group.startsWith(Constants.PATH_SEPARATOR)) { - group = Constants.PATH_SEPARATOR + group; + String group = url.getParameter(GROUP_KEY, DEFAULT_ROOT); + if (!group.startsWith(PATH_SEPARATOR)) { + group = PATH_SEPARATOR + group; } this.root = group; zkClient = zookeeperTransporter.connect(url); @@ -117,7 +123,7 @@ public class ZookeeperRegistry extends FailbackRegistry { @Override public void doSubscribe(final URL url, final NotifyListener listener) { try { - if (Constants.ANY_VALUE.equals(url.getServiceInterface())) { + if (ANY_VALUE.equals(url.getServiceInterface())) { String root = toRootPath(); ConcurrentMap listeners = zkListeners.get(url); if (listeners == null) { @@ -131,7 +137,7 @@ public class ZookeeperRegistry extends FailbackRegistry { child = URL.decode(child); if (!anyServices.contains(child)) { anyServices.add(child); - subscribe(url.setPath(child).addParameters(Constants.INTERFACE_KEY, child, + subscribe(url.setPath(child).addParameters(INTERFACE_KEY, child, RemotingConstants.CHECK_KEY, String.valueOf(false)), listener); } } @@ -144,7 +150,7 @@ public class ZookeeperRegistry extends FailbackRegistry { for (String service : services) { service = URL.decode(service); anyServices.add(service); - subscribe(url.setPath(service).addParameters(Constants.INTERFACE_KEY, service, + subscribe(url.setPath(service).addParameters(INTERFACE_KEY, service, RemotingConstants.CHECK_KEY, String.valueOf(false)), listener); } } @@ -180,7 +186,7 @@ public class ZookeeperRegistry extends FailbackRegistry { if (listeners != null) { ChildListener zkListener = listeners.get(listener); if (zkListener != null) { - if (Constants.ANY_VALUE.equals(url.getServiceInterface())) { + if (ANY_VALUE.equals(url.getServiceInterface())) { String root = toRootPath(); zkClient.removeChildListener(root, zkListener); } else { @@ -212,10 +218,10 @@ public class ZookeeperRegistry extends FailbackRegistry { } private String toRootDir() { - if (root.equals(Constants.PATH_SEPARATOR)) { + if (root.equals(PATH_SEPARATOR)) { return root; } - return root + Constants.PATH_SEPARATOR; + return root + PATH_SEPARATOR; } private String toRootPath() { @@ -224,7 +230,7 @@ public class ZookeeperRegistry extends FailbackRegistry { private String toServicePath(URL url) { String name = url.getServiceInterface(); - if (Constants.ANY_VALUE.equals(name)) { + if (ANY_VALUE.equals(name)) { return toRootPath(); } return toRootDir() + URL.encode(name); @@ -232,7 +238,7 @@ public class ZookeeperRegistry extends FailbackRegistry { private String[] toCategoriesPath(URL url) { String[] categories; - if (Constants.ANY_VALUE.equals(url.getParameter(Constants.CATEGORY_KEY))) { + if (ANY_VALUE.equals(url.getParameter(Constants.CATEGORY_KEY))) { categories = new String[]{Constants.PROVIDERS_CATEGORY, Constants.CONSUMERS_CATEGORY, Constants.ROUTERS_CATEGORY, Constants.CONFIGURATORS_CATEGORY}; } else { @@ -240,17 +246,17 @@ public class ZookeeperRegistry extends FailbackRegistry { } String[] paths = new String[categories.length]; for (int i = 0; i < categories.length; i++) { - paths[i] = toServicePath(url) + Constants.PATH_SEPARATOR + categories[i]; + paths[i] = toServicePath(url) + PATH_SEPARATOR + categories[i]; } return paths; } private String toCategoryPath(URL url) { - return toServicePath(url) + Constants.PATH_SEPARATOR + url.getParameter(Constants.CATEGORY_KEY, Constants.DEFAULT_CATEGORY); + return toServicePath(url) + PATH_SEPARATOR + url.getParameter(Constants.CATEGORY_KEY, Constants.DEFAULT_CATEGORY); } private String toUrlPath(URL url) { - return toCategoryPath(url) + Constants.PATH_SEPARATOR + URL.encode(url.toFullString()); + return toCategoryPath(url) + PATH_SEPARATOR + URL.encode(url.toFullString()); } private List toUrlsWithoutEmpty(URL consumer, List providers) { @@ -258,7 +264,7 @@ public class ZookeeperRegistry extends FailbackRegistry { if (CollectionUtils.isNotEmpty(providers)) { for (String provider : providers) { provider = URL.decode(provider); - if (provider.contains(Constants.PROTOCOL_SEPARATOR)) { + if (provider.contains(PROTOCOL_SEPARATOR)) { URL url = URL.valueOf(provider); if (UrlUtils.isMatch(consumer, url)) { urls.add(url); @@ -272,7 +278,7 @@ public class ZookeeperRegistry extends FailbackRegistry { private List toUrlsWithEmpty(URL consumer, String path, List providers) { List urls = toUrlsWithoutEmpty(consumer, providers); if (urls == null || urls.isEmpty()) { - int i = path.lastIndexOf(Constants.PATH_SEPARATOR); + int i = path.lastIndexOf(PATH_SEPARATOR); String category = i < 0 ? path : path.substring(i + 1); URL empty = URLBuilder.from(consumer) .setProtocol(Constants.EMPTY_PROTOCOL) diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/exchange/support/DefaultFuture.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/exchange/support/DefaultFuture.java index 290d668241..6a55446984 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/exchange/support/DefaultFuture.java +++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/exchange/support/DefaultFuture.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.exchange.support; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; import org.apache.dubbo.common.timer.HashedWheelTimer; @@ -41,6 +40,9 @@ import java.util.concurrent.locks.Condition; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * DefaultFuture. */ @@ -73,7 +75,7 @@ public class DefaultFuture implements ResponseFuture { this.channel = channel; this.request = request; this.id = request.getId(); - this.timeout = timeout > 0 ? timeout : channel.getUrl().getPositiveParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); + this.timeout = timeout > 0 ? timeout : channel.getUrl().getPositiveParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT); // put into waiting map. FUTURES.put(id, this); CHANNELS.put(id, channel); @@ -167,7 +169,7 @@ public class DefaultFuture implements ResponseFuture { @Override public Object get(int timeout) throws RemotingException { if (timeout <= 0) { - timeout = Constants.DEFAULT_TIMEOUT; + timeout = DEFAULT_TIMEOUT; } if (!isDone()) { long start = System.currentTimeMillis(); diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/exchange/support/header/HeaderExchangeChannel.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/exchange/support/header/HeaderExchangeChannel.java index 4aef993a2e..f9193de3e4 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/exchange/support/header/HeaderExchangeChannel.java +++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/exchange/support/header/HeaderExchangeChannel.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.exchange.support.header; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.Version; import org.apache.dubbo.common.logger.Logger; @@ -33,6 +32,9 @@ import org.apache.dubbo.remoting.exchange.support.DefaultFuture; import java.net.InetSocketAddress; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * ExchangeReceiver */ @@ -98,7 +100,7 @@ final class HeaderExchangeChannel implements ExchangeChannel { @Override public ResponseFuture request(Object request) throws RemotingException { - return request(request, channel.getUrl().getPositiveParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT)); + return request(request, channel.getUrl().getPositiveParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT)); } @Override diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/TelnetHandlerAdapter.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/TelnetHandlerAdapter.java index 89a781c5be..1dec8162b3 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/TelnetHandlerAdapter.java +++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/TelnetHandlerAdapter.java @@ -26,6 +26,8 @@ import org.apache.dubbo.remoting.RemotingException; import org.apache.dubbo.remoting.telnet.TelnetHandler; import org.apache.dubbo.remoting.transport.ChannelHandlerAdapter; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; + public class TelnetHandlerAdapter extends ChannelHandlerAdapter implements TelnetHandler { private final ExtensionLoader extensionLoader = ExtensionLoader.getExtensionLoader(TelnetHandler.class); @@ -86,7 +88,7 @@ public class TelnetHandlerAdapter extends ChannelHandlerAdapter implements Telne if (StringUtils.isEmpty(supportCommands)) { return true; } - String[] commands = Constants.COMMA_SPLIT_PATTERN.split(supportCommands); + String[] commands = COMMA_SPLIT_PATTERN.split(supportCommands); for (String c : commands) { if (command.equals(c)) { return true; diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/command/StatusTelnetHandler.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/command/StatusTelnetHandler.java index 69611f60a0..12fbf989dc 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/command/StatusTelnetHandler.java +++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/command/StatusTelnetHandler.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.telnet.support.command; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.extension.Activate; import org.apache.dubbo.common.extension.ExtensionLoader; import org.apache.dubbo.common.status.Status; @@ -33,6 +32,8 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; + /** * StatusTelnetHandler */ @@ -81,7 +82,7 @@ public class StatusTelnetHandler implements TelnetHandler { String status = channel.getUrl().getParameter("status"); Map statuses = new HashMap(); if (CollectionUtils.isNotEmptyMap(statuses)) { - String[] ss = Constants.COMMA_SPLIT_PATTERN.split(status); + String[] ss = COMMA_SPLIT_PATTERN.split(status); for (String s : ss) { StatusChecker handler = extensionLoader.getExtension(s); Status stat; diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/AbstractClient.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/AbstractClient.java index aa10dd819f..876b5208ed 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/AbstractClient.java +++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/AbstractClient.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.transport; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.Version; import org.apache.dubbo.common.constants.RemotingConstants; @@ -37,6 +36,10 @@ import java.util.concurrent.ExecutorService; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; +import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_CLIENT_THREADPOOL; +import static org.apache.dubbo.common.constants.CommonConstants.THREADPOOL_KEY; + /** * AbstractClient */ @@ -83,14 +86,14 @@ public abstract class AbstractClient extends AbstractEndpoint implements Client } executor = (ExecutorService) ExtensionLoader.getExtensionLoader(DataStore.class) - .getDefaultExtension().get(Constants.CONSUMER_SIDE, Integer.toString(url.getPort())); + .getDefaultExtension().get(CONSUMER_SIDE, Integer.toString(url.getPort())); ExtensionLoader.getExtensionLoader(DataStore.class) - .getDefaultExtension().remove(Constants.CONSUMER_SIDE, Integer.toString(url.getPort())); + .getDefaultExtension().remove(CONSUMER_SIDE, Integer.toString(url.getPort())); } protected static ChannelHandler wrapChannelHandler(URL url, ChannelHandler handler) { url = ExecutorUtil.setThreadName(url, CLIENT_THREAD_POOL_NAME); - url = url.addParameterIfAbsent(Constants.THREADPOOL_KEY, Constants.DEFAULT_CLIENT_THREADPOOL); + url = url.addParameterIfAbsent(THREADPOOL_KEY, DEFAULT_CLIENT_THREADPOOL); return ChannelHandlers.wrap(handler, url); } diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/AbstractCodec.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/AbstractCodec.java index e5f7696437..04f700a97c 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/AbstractCodec.java +++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/AbstractCodec.java @@ -19,7 +19,6 @@ package org.apache.dubbo.remoting.transport; import java.io.IOException; import java.net.InetSocketAddress; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.constants.RemotingConstants; import org.apache.dubbo.common.logger.Logger; @@ -29,6 +28,8 @@ import org.apache.dubbo.common.utils.NetUtils; import org.apache.dubbo.remoting.Channel; import org.apache.dubbo.remoting.Codec2; +import static org.apache.dubbo.common.constants.CommonConstants.SIDE_KEY; + /** * AbstractCodec */ @@ -58,7 +59,7 @@ public abstract class AbstractCodec implements Codec2 { } protected boolean isClientSide(Channel channel) { - String side = (String)channel.getAttribute(Constants.SIDE_KEY); + String side = (String)channel.getAttribute(SIDE_KEY); if (CLIENT_SIDE.equals(side)) { return true; } else if (SERVER_SIDE.equals(side)) { @@ -70,7 +71,7 @@ public abstract class AbstractCodec implements Codec2 { && NetUtils.filterLocalHost(url.getIp()).equals( NetUtils.filterLocalHost(address.getAddress() .getHostAddress())); - channel.setAttribute(Constants.SIDE_KEY, isClient ? CLIENT_SIDE + channel.setAttribute(SIDE_KEY, isClient ? CLIENT_SIDE : SERVER_SIDE); return isClient; } diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/AbstractEndpoint.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/AbstractEndpoint.java index 0a438bf749..f366e7ce7b 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/AbstractEndpoint.java +++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/AbstractEndpoint.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.transport; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.Resetable; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.constants.RemotingConstants; @@ -28,6 +27,9 @@ import org.apache.dubbo.remoting.Codec; import org.apache.dubbo.remoting.Codec2; import org.apache.dubbo.remoting.transport.codec.CodecAdapter; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * AbstractEndpoint */ @@ -44,7 +46,7 @@ public abstract class AbstractEndpoint extends AbstractPeer implements Resetable public AbstractEndpoint(URL url, ChannelHandler handler) { super(url, handler); this.codec = getChannelCodec(url); - this.timeout = url.getPositiveParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); + this.timeout = url.getPositiveParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT); this.connectTimeout = url.getPositiveParameter(RemotingConstants.CONNECT_TIMEOUT_KEY, RemotingConstants.DEFAULT_CONNECT_TIMEOUT); } @@ -65,8 +67,8 @@ public abstract class AbstractEndpoint extends AbstractPeer implements Resetable + url + ", cause: Channel closed. channel: " + getLocalAddress()); } try { - if (url.hasParameter(Constants.TIMEOUT_KEY)) { - int t = url.getParameter(Constants.TIMEOUT_KEY, 0); + if (url.hasParameter(TIMEOUT_KEY)) { + int t = url.getParameter(TIMEOUT_KEY, 0); if (t > 0) { this.timeout = t; } diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/AbstractServer.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/AbstractServer.java index 0af47a63c3..a252ca46d3 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/AbstractServer.java +++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/AbstractServer.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.transport; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.constants.RemotingConstants; import org.apache.dubbo.common.extension.ExtensionLoader; @@ -35,6 +34,10 @@ import java.util.Collection; import java.util.concurrent.ExecutorService; import java.util.concurrent.ThreadPoolExecutor; +import static org.apache.dubbo.common.constants.CommonConstants.ANYHOST_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.ANYHOST_VALUE; +import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY; + /** * AbstractServer */ @@ -54,8 +57,8 @@ public abstract class AbstractServer extends AbstractEndpoint implements Server String bindIp = getUrl().getParameter(RemotingConstants.BIND_IP_KEY, getUrl().getHost()); int bindPort = getUrl().getParameter(RemotingConstants.BIND_PORT_KEY, getUrl().getPort()); - if (url.getParameter(Constants.ANYHOST_KEY, false) || NetUtils.isInvalidLocalHost(bindIp)) { - bindIp = Constants.ANYHOST_VALUE; + if (url.getParameter(ANYHOST_KEY, false) || NetUtils.isInvalidLocalHost(bindIp)) { + bindIp = ANYHOST_VALUE; } bindAddress = new InetSocketAddress(bindIp, bindPort); this.accepts = url.getParameter(RemotingConstants.ACCEPTS_KEY, RemotingConstants.DEFAULT_ACCEPTS); @@ -104,10 +107,10 @@ public abstract class AbstractServer extends AbstractEndpoint implements Server logger.error(t.getMessage(), t); } try { - if (url.hasParameter(Constants.THREADS_KEY) + if (url.hasParameter(THREADS_KEY) && executor instanceof ThreadPoolExecutor && !executor.isShutdown()) { ThreadPoolExecutor threadPoolExecutor = (ThreadPoolExecutor) executor; - int threads = url.getParameter(Constants.THREADS_KEY, 0); + int threads = url.getParameter(THREADS_KEY, 0); int max = threadPoolExecutor.getMaximumPoolSize(); int core = threadPoolExecutor.getCorePoolSize(); if (threads > 0 && (threads != max || threads != core)) { diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/dispatcher/WrappedChannelHandler.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/dispatcher/WrappedChannelHandler.java index f545a413d3..bd41ca25ac 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/dispatcher/WrappedChannelHandler.java +++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/dispatcher/WrappedChannelHandler.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.transport.dispatcher; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.constants.RemotingConstants; import org.apache.dubbo.common.extension.ExtensionLoader; @@ -33,6 +32,9 @@ import org.apache.dubbo.remoting.transport.ChannelHandlerDelegate; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; +import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.SIDE_KEY; + public class WrappedChannelHandler implements ChannelHandlerDelegate { protected static final Logger logger = LoggerFactory.getLogger(WrappedChannelHandler.class); @@ -51,8 +53,8 @@ public class WrappedChannelHandler implements ChannelHandlerDelegate { executor = (ExecutorService) ExtensionLoader.getExtensionLoader(ThreadPool.class).getAdaptiveExtension().getExecutor(url); String componentKey = RemotingConstants.EXECUTOR_SERVICE_COMPONENT_KEY; - if (Constants.CONSUMER_SIDE.equalsIgnoreCase(url.getParameter(Constants.SIDE_KEY))) { - componentKey = Constants.CONSUMER_SIDE; + if (CONSUMER_SIDE.equalsIgnoreCase(url.getParameter(SIDE_KEY))) { + componentKey = CONSUMER_SIDE; } DataStore dataStore = ExtensionLoader.getExtensionLoader(DataStore.class).getDefaultExtension(); dataStore.put(componentKey, Integer.toString(url.getPort()), executor); diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/dispatcher/connection/ConnectionOrderedChannelHandler.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/dispatcher/connection/ConnectionOrderedChannelHandler.java index 79465e6867..91310ef0f8 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/dispatcher/connection/ConnectionOrderedChannelHandler.java +++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/dispatcher/connection/ConnectionOrderedChannelHandler.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.transport.dispatcher.connection; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.constants.RemotingConstants; import org.apache.dubbo.common.threadpool.support.AbortPolicyWithReport; @@ -37,6 +36,9 @@ import java.util.concurrent.RejectedExecutionException; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.THREAD_NAME_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_THREAD_NAME; + public class ConnectionOrderedChannelHandler extends WrappedChannelHandler { protected final ThreadPoolExecutor connectionExecutor; @@ -44,7 +46,7 @@ public class ConnectionOrderedChannelHandler extends WrappedChannelHandler { public ConnectionOrderedChannelHandler(ChannelHandler handler, URL url) { super(handler, url); - String threadName = url.getParameter(Constants.THREAD_NAME_KEY, Constants.DEFAULT_THREAD_NAME); + String threadName = url.getParameter(THREAD_NAME_KEY, DEFAULT_THREAD_NAME); connectionExecutor = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue(url.getPositiveParameter(RemotingConstants.CONNECT_QUEUE_CAPACITY, Integer.MAX_VALUE)), diff --git a/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/ChanelHandlerTest.java b/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/ChanelHandlerTest.java index 2d87e54ed1..d4cd13a79c 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/ChanelHandlerTest.java +++ b/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/ChanelHandlerTest.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.constants.RemotingConstants; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -24,9 +23,11 @@ import org.apache.dubbo.remoting.exchange.ExchangeClient; import org.apache.dubbo.remoting.exchange.Exchangers; import org.apache.dubbo.remoting.exchange.support.ExchangeHandlerAdapter; -import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * ChanelHandlerTest *

    @@ -82,7 +83,7 @@ public class ChanelHandlerTest { final String server = System.getProperty("server", "127.0.0.1:9911"); final String transporter = PerformanceUtils.getProperty(RemotingConstants.TRANSPORTER_KEY, RemotingConstants.DEFAULT_TRANSPORTER); final String serialization = PerformanceUtils.getProperty(RemotingConstants.SERIALIZATION_KEY, RemotingConstants.DEFAULT_REMOTING_SERIALIZATION); - final int timeout = PerformanceUtils.getIntProperty(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); + final int timeout = PerformanceUtils.getIntProperty(TIMEOUT_KEY, DEFAULT_TIMEOUT); int sleep = PerformanceUtils.getIntProperty("sleep", 60 * 1000 * 60); final String url = "exchange://" + server + "?transporter=" + transporter + "&serialization=" + serialization + "&timeout=" + timeout; diff --git a/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/PerformanceClientCloseTest.java b/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/PerformanceClientCloseTest.java index d92648ac7d..46e1a10c01 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/PerformanceClientCloseTest.java +++ b/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/PerformanceClientCloseTest.java @@ -16,18 +16,19 @@ */ package org.apache.dubbo.remoting; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.constants.RemotingConstants; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; import org.apache.dubbo.remoting.exchange.ExchangeClient; import org.apache.dubbo.remoting.exchange.Exchangers; -import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; import java.util.concurrent.atomic.AtomicInteger; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * ProformanceClient * The test class will report abnormal thread pool, because the judgment on the thread pool concurrency problems produced in DefaultChannelHandler (connected event has been executed asynchronously, judgment, then closed the thread pool, thread pool and execution error, this problem can be specified through the Constants.CHANNEL_HANDLER_KEY=connection.) @@ -46,7 +47,7 @@ public class PerformanceClientCloseTest { final String server = System.getProperty("server", "127.0.0.1:9911"); final String transporter = PerformanceUtils.getProperty(RemotingConstants.TRANSPORTER_KEY, RemotingConstants.DEFAULT_TRANSPORTER); final String serialization = PerformanceUtils.getProperty(RemotingConstants.SERIALIZATION_KEY, RemotingConstants.DEFAULT_REMOTING_SERIALIZATION); - final int timeout = PerformanceUtils.getIntProperty(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); + final int timeout = PerformanceUtils.getIntProperty(TIMEOUT_KEY, DEFAULT_TIMEOUT); final int concurrent = PerformanceUtils.getIntProperty("concurrent", 1); final int runs = PerformanceUtils.getIntProperty("runs", Integer.MAX_VALUE); final String onerror = PerformanceUtils.getProperty("onerror", "continue"); @@ -102,4 +103,4 @@ public class PerformanceClientCloseTest { } } -} \ No newline at end of file +} diff --git a/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/PerformanceClientFixedTest.java b/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/PerformanceClientFixedTest.java index ae2aecc77b..d0bbfd7af8 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/PerformanceClientFixedTest.java +++ b/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/PerformanceClientFixedTest.java @@ -23,12 +23,14 @@ import org.apache.dubbo.common.logger.LoggerFactory; import org.apache.dubbo.remoting.exchange.ExchangeClient; import org.apache.dubbo.remoting.exchange.Exchangers; -import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; import java.util.ArrayList; import java.util.Random; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + public class PerformanceClientFixedTest { private static final Logger logger = LoggerFactory.getLogger(PerformanceClientTest.class); @@ -43,7 +45,7 @@ public class PerformanceClientFixedTest { final String server = System.getProperty("server", "127.0.0.1:9911"); final String transporter = PerformanceUtils.getProperty(RemotingConstants.TRANSPORTER_KEY, RemotingConstants.DEFAULT_TRANSPORTER); final String serialization = PerformanceUtils.getProperty(RemotingConstants.SERIALIZATION_KEY, RemotingConstants.DEFAULT_REMOTING_SERIALIZATION); - final int timeout = PerformanceUtils.getIntProperty(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); + final int timeout = PerformanceUtils.getIntProperty(TIMEOUT_KEY, DEFAULT_TIMEOUT); //final int length = PerformanceUtils.getIntProperty("length", 1024); final int connectionCount = PerformanceUtils.getIntProperty(Constants.CONNECTIONS_KEY, 1); //final int concurrent = PerformanceUtils.getIntProperty("concurrent", 100); @@ -134,4 +136,4 @@ public class PerformanceClientFixedTest { } } -} \ No newline at end of file +} diff --git a/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/PerformanceClientTest.java b/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/PerformanceClientTest.java index 43570b6c5a..acf1353bb3 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/PerformanceClientTest.java +++ b/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/PerformanceClientTest.java @@ -34,6 +34,9 @@ import java.util.concurrent.CountDownLatch; import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicLong; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * PerformanceClientTest *

    @@ -54,7 +57,7 @@ public class PerformanceClientTest { final String server = System.getProperty("server", "127.0.0.1:9911"); final String transporter = PerformanceUtils.getProperty(RemotingConstants.TRANSPORTER_KEY, RemotingConstants.DEFAULT_TRANSPORTER); final String serialization = PerformanceUtils.getProperty(RemotingConstants.SERIALIZATION_KEY, RemotingConstants.DEFAULT_REMOTING_SERIALIZATION); - final int timeout = PerformanceUtils.getIntProperty(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); + final int timeout = PerformanceUtils.getIntProperty(TIMEOUT_KEY, DEFAULT_TIMEOUT); final int length = PerformanceUtils.getIntProperty("length", 1024); final int connections = PerformanceUtils.getIntProperty(Constants.CONNECTIONS_KEY, 1); final int concurrent = PerformanceUtils.getIntProperty("concurrent", 100); diff --git a/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/PerformanceServerTest.java b/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/PerformanceServerTest.java index 580dbb3e98..04c9c67342 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/PerformanceServerTest.java +++ b/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/PerformanceServerTest.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.constants.RemotingConstants; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -26,13 +25,18 @@ import org.apache.dubbo.remoting.exchange.Exchangers; import org.apache.dubbo.remoting.exchange.support.ExchangeHandlerAdapter; import org.apache.dubbo.remoting.transport.dispatcher.execution.ExecutionDispatcher; -import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; import java.util.ArrayList; import java.util.List; import java.util.concurrent.CompletableFuture; +import static org.apache.dubbo.common.constants.CommonConstants.IO_THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_THREADPOOL; +import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREADPOOL_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_THREADS; + /** * PerformanceServer *

    @@ -64,9 +68,9 @@ public class PerformanceServerTest { final int port = PerformanceUtils.getIntProperty("port", 9911); final String transporter = PerformanceUtils.getProperty(RemotingConstants.TRANSPORTER_KEY, RemotingConstants.DEFAULT_TRANSPORTER); final String serialization = PerformanceUtils.getProperty(RemotingConstants.SERIALIZATION_KEY, RemotingConstants.DEFAULT_REMOTING_SERIALIZATION); - final String threadpool = PerformanceUtils.getProperty(Constants.THREADPOOL_KEY, Constants.DEFAULT_THREADPOOL); - final int threads = PerformanceUtils.getIntProperty(Constants.THREADS_KEY, Constants.DEFAULT_THREADS); - final int iothreads = PerformanceUtils.getIntProperty(Constants.IO_THREADS_KEY, RemotingConstants.DEFAULT_IO_THREADS); + final String threadpool = PerformanceUtils.getProperty(THREADPOOL_KEY, DEFAULT_THREADPOOL); + final int threads = PerformanceUtils.getIntProperty(THREADS_KEY, DEFAULT_THREADS); + final int iothreads = PerformanceUtils.getIntProperty(IO_THREADS_KEY, RemotingConstants.DEFAULT_IO_THREADS); final int buffer = PerformanceUtils.getIntProperty(RemotingConstants.BUFFER_KEY, RemotingConstants.DEFAULT_BUFFER_SIZE); final String channelHandler = PerformanceUtils.getProperty(RemotingConstants.DISPATCHER_KEY, ExecutionDispatcher.NAME); @@ -163,4 +167,4 @@ public class PerformanceServerTest { } } -} \ No newline at end of file +} diff --git a/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/transport/codec/DeprecatedTelnetCodec.java b/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/transport/codec/DeprecatedTelnetCodec.java index 5b30d5cbab..7342b9c233 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/transport/codec/DeprecatedTelnetCodec.java +++ b/dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/transport/codec/DeprecatedTelnetCodec.java @@ -39,6 +39,8 @@ import java.util.Arrays; import java.util.LinkedList; import java.util.List; +import static org.apache.dubbo.common.constants.CommonConstants.SIDE_KEY; + public class DeprecatedTelnetCodec implements Codec { private static final Logger logger = LoggerFactory.getLogger(DeprecatedTelnetCodec.class); @@ -152,7 +154,7 @@ public class DeprecatedTelnetCodec implements Codec { } protected boolean isClientSide(Channel channel) { - String side = (String) channel.getAttribute(Constants.SIDE_KEY); + String side = (String) channel.getAttribute(SIDE_KEY); if ("client".equals(side)) { return true; } else if ("server".equals(side)) { @@ -164,7 +166,7 @@ public class DeprecatedTelnetCodec implements Codec { && NetUtils.filterLocalHost(url.getIp()).equals( NetUtils.filterLocalHost(address.getAddress() .getHostAddress())); - channel.setAttribute(Constants.SIDE_KEY, client ? "client" + channel.setAttribute(SIDE_KEY, client ? "client" : "server"); return client; } diff --git a/dubbo-remoting/dubbo-remoting-etcd3/src/main/java/org/apache/dubbo/remoting/etcd/jetcd/JEtcdClient.java b/dubbo-remoting/dubbo-remoting-etcd3/src/main/java/org/apache/dubbo/remoting/etcd/jetcd/JEtcdClient.java index c1f8e2cb93..bb994e6ca7 100644 --- a/dubbo-remoting/dubbo-remoting-etcd3/src/main/java/org/apache/dubbo/remoting/etcd/jetcd/JEtcdClient.java +++ b/dubbo-remoting/dubbo-remoting-etcd3/src/main/java/org/apache/dubbo/remoting/etcd/jetcd/JEtcdClient.java @@ -17,7 +17,6 @@ package org.apache.dubbo.remoting.etcd.jetcd; -import io.grpc.ManagedChannel; import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.logger.Logger; @@ -39,6 +38,7 @@ import io.etcd.jetcd.api.WatchGrpc; import io.etcd.jetcd.api.WatchRequest; import io.etcd.jetcd.api.WatchResponse; import io.etcd.jetcd.common.exception.ClosedClientException; +import io.grpc.ManagedChannel; import io.grpc.Status; import io.grpc.stub.StreamObserver; import io.netty.util.internal.ConcurrentSet; @@ -60,6 +60,7 @@ import java.util.concurrent.TimeoutException; import java.util.concurrent.locks.ReentrantLock; import static java.util.stream.Collectors.toList; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_SEPARATOR; import static org.apache.dubbo.remoting.etcd.Constants.DEFAULT_ETCD3_NOTIFY_QUEUES_KEY; import static org.apache.dubbo.remoting.etcd.Constants.DEFAULT_ETCD3_NOTIFY_THREADS; import static org.apache.dubbo.remoting.etcd.Constants.DEFAULT_GRPC_QUEUES; @@ -338,7 +339,7 @@ public class JEtcdClient extends AbstractEtcdClient { int len = path.length(), index = len, count = 0; if (key.length() >= index) { - for (; (index = key.indexOf(Constants.PATH_SEPARATOR, index)) != -1; ++index) { + for (; (index = key.indexOf(PATH_SEPARATOR, index)) != -1; ++index) { if (count++ > 1) { break; } @@ -370,7 +371,7 @@ public class JEtcdClient extends AbstractEtcdClient { .filter(child -> { int index = len, count = 0; if (child.length() > len) { - for (; (index = child.indexOf(Constants.PATH_SEPARATOR, index)) != -1; ++index) { + for (; (index = child.indexOf(PATH_SEPARATOR, index)) != -1; ++index) { if (count++ > 1) { break; } diff --git a/dubbo-remoting/dubbo-remoting-etcd3/src/main/java/org/apache/dubbo/remoting/etcd/jetcd/JEtcdClientWrapper.java b/dubbo-remoting/dubbo-remoting-etcd3/src/main/java/org/apache/dubbo/remoting/etcd/jetcd/JEtcdClientWrapper.java index 01bf17d264..7bfb12120d 100644 --- a/dubbo-remoting/dubbo-remoting-etcd3/src/main/java/org/apache/dubbo/remoting/etcd/jetcd/JEtcdClientWrapper.java +++ b/dubbo-remoting/dubbo-remoting-etcd3/src/main/java/org/apache/dubbo/remoting/etcd/jetcd/JEtcdClientWrapper.java @@ -17,7 +17,6 @@ package org.apache.dubbo.remoting.etcd.jetcd; -import io.etcd.jetcd.kv.PutResponse; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -37,6 +36,7 @@ import io.etcd.jetcd.Observers; import io.etcd.jetcd.common.exception.ErrorCode; import io.etcd.jetcd.common.exception.EtcdException; import io.etcd.jetcd.kv.GetResponse; +import io.etcd.jetcd.kv.PutResponse; import io.etcd.jetcd.lease.LeaseKeepAliveResponse; import io.etcd.jetcd.options.GetOption; import io.etcd.jetcd.options.PutOption; @@ -66,6 +66,8 @@ import java.util.concurrent.atomic.AtomicReference; import java.util.function.Consumer; import static java.util.stream.Collectors.toList; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SEPARATOR; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_SEPARATOR; public class JEtcdClientWrapper { @@ -185,7 +187,7 @@ public class JEtcdClientWrapper { String key = pair.getKey().toString(UTF_8); int index = len, count = 0; if (key.length() > len) { - for (; (index = key.indexOf(Constants.PATH_SEPARATOR, index)) != -1; ++index) { + for (; (index = key.indexOf(PATH_SEPARATOR, index)) != -1; ++index) { if (count++ > 1) { break; } @@ -479,7 +481,7 @@ public class JEtcdClientWrapper { } public String[] endPoints(String backupAddress) { - String[] endpoints = backupAddress.split(Constants.COMMA_SEPARATOR); + String[] endpoints = backupAddress.split(COMMA_SEPARATOR); List addresses = Arrays.stream(endpoints) .map(address -> address.contains(Constants.HTTP_SUBFIX_KEY) ? address diff --git a/dubbo-remoting/dubbo-remoting-etcd3/src/main/java/org/apache/dubbo/remoting/etcd/support/AbstractEtcdClient.java b/dubbo-remoting/dubbo-remoting-etcd3/src/main/java/org/apache/dubbo/remoting/etcd/support/AbstractEtcdClient.java index 0a6d26f90e..cdc7ed5056 100644 --- a/dubbo-remoting/dubbo-remoting-etcd3/src/main/java/org/apache/dubbo/remoting/etcd/support/AbstractEtcdClient.java +++ b/dubbo-remoting/dubbo-remoting-etcd3/src/main/java/org/apache/dubbo/remoting/etcd/support/AbstractEtcdClient.java @@ -49,6 +49,8 @@ import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_SEPARATOR; + public abstract class AbstractEtcdClient implements EtcdClient { protected static final Logger logger = LoggerFactory.getLogger(AbstractEtcdClient.class); @@ -151,7 +153,7 @@ public abstract class AbstractEtcdClient implements EtcdClient if (StringUtils.isEmpty(path)) { throw new IllegalArgumentException("path is required, actual null or ''"); } - return (path.charAt(0) != '/') ? (Constants.PATH_SEPARATOR + path) : path; + return (path.charAt(0) != '/') ? (PATH_SEPARATOR + path) : path; } protected void createParentIfAbsent(String fixedPath) { diff --git a/dubbo-remoting/dubbo-remoting-grizzly/src/main/java/org/apache/dubbo/remoting/transport/grizzly/GrizzlyChannel.java b/dubbo-remoting/dubbo-remoting-grizzly/src/main/java/org/apache/dubbo/remoting/transport/grizzly/GrizzlyChannel.java index 4732676a08..02caca61c9 100644 --- a/dubbo-remoting/dubbo-remoting-grizzly/src/main/java/org/apache/dubbo/remoting/transport/grizzly/GrizzlyChannel.java +++ b/dubbo-remoting/dubbo-remoting-grizzly/src/main/java/org/apache/dubbo/remoting/transport/grizzly/GrizzlyChannel.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.transport.grizzly; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -33,6 +32,9 @@ import java.net.InetSocketAddress; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * GrizzlyChannel * @@ -105,7 +107,7 @@ final class GrizzlyChannel extends AbstractChannel { try { GrizzlyFuture future = connection.write(message); if (sent) { - timeout = getUrl().getPositiveParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); + timeout = getUrl().getPositiveParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT); future.get(timeout, TimeUnit.MILLISECONDS); } } catch (TimeoutException e) { diff --git a/dubbo-remoting/dubbo-remoting-grizzly/src/main/java/org/apache/dubbo/remoting/transport/grizzly/GrizzlyClient.java b/dubbo-remoting/dubbo-remoting-grizzly/src/main/java/org/apache/dubbo/remoting/transport/grizzly/GrizzlyClient.java index 2753d21526..e4a0e345d8 100644 --- a/dubbo-remoting/dubbo-remoting-grizzly/src/main/java/org/apache/dubbo/remoting/transport/grizzly/GrizzlyClient.java +++ b/dubbo-remoting/dubbo-remoting-grizzly/src/main/java/org/apache/dubbo/remoting/transport/grizzly/GrizzlyClient.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.transport.grizzly; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -35,6 +34,9 @@ import org.glassfish.grizzly.threadpool.ThreadPoolConfig; import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * GrizzlyClient * @@ -77,7 +79,7 @@ public class GrizzlyClient extends AbstractClient { @Override protected void doConnect() throws Throwable { connection = transport.connect(getConnectAddress()) - .get(getUrl().getPositiveParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT), TimeUnit.MILLISECONDS); + .get(getUrl().getPositiveParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT), TimeUnit.MILLISECONDS); } @Override @@ -107,4 +109,4 @@ public class GrizzlyClient extends AbstractClient { return GrizzlyChannel.getOrAddChannel(c, getUrl(), this); } -} \ No newline at end of file +} diff --git a/dubbo-remoting/dubbo-remoting-grizzly/src/main/java/org/apache/dubbo/remoting/transport/grizzly/GrizzlyServer.java b/dubbo-remoting/dubbo-remoting-grizzly/src/main/java/org/apache/dubbo/remoting/transport/grizzly/GrizzlyServer.java index 65a8726305..38608603a5 100644 --- a/dubbo-remoting/dubbo-remoting-grizzly/src/main/java/org/apache/dubbo/remoting/transport/grizzly/GrizzlyServer.java +++ b/dubbo-remoting/dubbo-remoting-grizzly/src/main/java/org/apache/dubbo/remoting/transport/grizzly/GrizzlyServer.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.transport.grizzly; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -39,6 +38,11 @@ import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_THREADPOOL; +import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREADPOOL_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_THREADS; + /** * GrizzlyServer */ @@ -64,13 +68,13 @@ public class GrizzlyServer extends AbstractServer { TCPNIOTransportBuilder builder = TCPNIOTransportBuilder.newInstance(); ThreadPoolConfig config = builder.getWorkerThreadPoolConfig(); config.setPoolName(SERVER_THREAD_POOL_NAME).setQueueLimit(-1); - String threadpool = getUrl().getParameter(Constants.THREADPOOL_KEY, Constants.DEFAULT_THREADPOOL); - if (Constants.DEFAULT_THREADPOOL.equals(threadpool)) { - int threads = getUrl().getPositiveParameter(Constants.THREADS_KEY, Constants.DEFAULT_THREADS); + String threadpool = getUrl().getParameter(THREADPOOL_KEY, DEFAULT_THREADPOOL); + if (DEFAULT_THREADPOOL.equals(threadpool)) { + int threads = getUrl().getPositiveParameter(THREADS_KEY, DEFAULT_THREADS); config.setCorePoolSize(threads).setMaxPoolSize(threads) .setKeepAliveTime(0L, TimeUnit.SECONDS); } else if ("cached".equals(threadpool)) { - int threads = getUrl().getPositiveParameter(Constants.THREADS_KEY, Integer.MAX_VALUE); + int threads = getUrl().getPositiveParameter(THREADS_KEY, Integer.MAX_VALUE); config.setCorePoolSize(0).setMaxPoolSize(threads) .setKeepAliveTime(60L, TimeUnit.SECONDS); } else { diff --git a/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/jetty/JettyHttpServer.java b/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/jetty/JettyHttpServer.java index 0274271b85..77442e29de 100644 --- a/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/jetty/JettyHttpServer.java +++ b/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/jetty/JettyHttpServer.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.http.jetty; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.constants.RemotingConstants; import org.apache.dubbo.common.logger.Logger; @@ -36,6 +35,9 @@ import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.StdErrLog; import org.eclipse.jetty.util.thread.QueuedThreadPool; +import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_THREADS; + public class JettyHttpServer extends AbstractHttpServer { private static final Logger logger = LoggerFactory.getLogger(JettyHttpServer.class); @@ -54,7 +56,7 @@ public class JettyHttpServer extends AbstractHttpServer { DispatcherServlet.addHttpHandler(url.getParameter(RemotingConstants.BIND_PORT_KEY, url.getPort()), handler); - int threads = url.getParameter(Constants.THREADS_KEY, Constants.DEFAULT_THREADS); + int threads = url.getParameter(THREADS_KEY, DEFAULT_THREADS); QueuedThreadPool threadPool = new QueuedThreadPool(); threadPool.setDaemon(true); threadPool.setMaxThreads(threads); diff --git a/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/tomcat/TomcatHttpServer.java b/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/tomcat/TomcatHttpServer.java index 901d588047..e59f8f6bd9 100755 --- a/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/tomcat/TomcatHttpServer.java +++ b/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/tomcat/TomcatHttpServer.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.http.tomcat; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.constants.RemotingConstants; import org.apache.dubbo.common.logger.Logger; @@ -32,6 +31,9 @@ import org.apache.catalina.startup.Tomcat; import java.io.File; +import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_THREADS; + public class TomcatHttpServer extends AbstractHttpServer { private static final Logger logger = LoggerFactory.getLogger(TomcatHttpServer.class); @@ -50,7 +52,7 @@ public class TomcatHttpServer extends AbstractHttpServer { tomcat.setBaseDir(baseDir); tomcat.setPort(url.getPort()); tomcat.getConnector().setProperty( - "maxThreads", String.valueOf(url.getParameter(Constants.THREADS_KEY, Constants.DEFAULT_THREADS))); + "maxThreads", String.valueOf(url.getParameter(THREADS_KEY, DEFAULT_THREADS))); // tomcat.getConnector().setProperty( // "minSpareThreads", String.valueOf(url.getParameter(Constants.THREADS_KEY, Constants.DEFAULT_THREADS))); diff --git a/dubbo-remoting/dubbo-remoting-mina/src/main/java/org/apache/dubbo/remoting/transport/mina/MinaChannel.java b/dubbo-remoting/dubbo-remoting-mina/src/main/java/org/apache/dubbo/remoting/transport/mina/MinaChannel.java index 093ce21694..7229cb1607 100644 --- a/dubbo-remoting/dubbo-remoting-mina/src/main/java/org/apache/dubbo/remoting/transport/mina/MinaChannel.java +++ b/dubbo-remoting/dubbo-remoting-mina/src/main/java/org/apache/dubbo/remoting/transport/mina/MinaChannel.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.transport.mina; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -29,6 +28,9 @@ import org.apache.mina.common.WriteFuture; import java.net.InetSocketAddress; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * MinaChannel */ @@ -96,7 +98,7 @@ final class MinaChannel extends AbstractChannel { try { WriteFuture future = session.write(message); if (sent) { - timeout = getUrl().getPositiveParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); + timeout = getUrl().getPositiveParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT); success = future.join(timeout); } } catch (Throwable e) { diff --git a/dubbo-remoting/dubbo-remoting-mina/src/main/java/org/apache/dubbo/remoting/transport/mina/MinaServer.java b/dubbo-remoting/dubbo-remoting-mina/src/main/java/org/apache/dubbo/remoting/transport/mina/MinaServer.java index 4937944ecc..2a6af51a87 100644 --- a/dubbo-remoting/dubbo-remoting-mina/src/main/java/org/apache/dubbo/remoting/transport/mina/MinaServer.java +++ b/dubbo-remoting/dubbo-remoting-mina/src/main/java/org/apache/dubbo/remoting/transport/mina/MinaServer.java @@ -16,9 +16,7 @@ */ package org.apache.dubbo.remoting.transport.mina; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; -import org.apache.dubbo.common.constants.RemotingConstants; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; import org.apache.dubbo.common.utils.ExecutorUtil; @@ -41,6 +39,9 @@ import java.util.HashSet; import java.util.Set; import java.util.concurrent.Executors; +import static org.apache.dubbo.common.Constants.DEFAULT_IO_THREADS; +import static org.apache.dubbo.common.constants.CommonConstants.IO_THREADS_KEY; + /** * MinaServer */ @@ -57,7 +58,7 @@ public class MinaServer extends AbstractServer { @Override protected void doOpen() throws Throwable { // set thread pool. - acceptor = new SocketAcceptor(getUrl().getPositiveParameter(Constants.IO_THREADS_KEY, RemotingConstants.DEFAULT_IO_THREADS), + acceptor = new SocketAcceptor(getUrl().getPositiveParameter(IO_THREADS_KEY, DEFAULT_IO_THREADS), Executors.newCachedThreadPool(new NamedThreadFactory("MinaServerWorker", true))); // config diff --git a/dubbo-remoting/dubbo-remoting-netty/src/main/java/org/apache/dubbo/remoting/transport/netty/NettyChannel.java b/dubbo-remoting/dubbo-remoting-netty/src/main/java/org/apache/dubbo/remoting/transport/netty/NettyChannel.java index f5e02131a3..45633b9e64 100644 --- a/dubbo-remoting/dubbo-remoting-netty/src/main/java/org/apache/dubbo/remoting/transport/netty/NettyChannel.java +++ b/dubbo-remoting/dubbo-remoting-netty/src/main/java/org/apache/dubbo/remoting/transport/netty/NettyChannel.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.transport.netty; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -31,6 +30,9 @@ import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * NettyChannel. */ @@ -99,7 +101,7 @@ final class NettyChannel extends AbstractChannel { try { ChannelFuture future = channel.write(message); if (sent) { - timeout = getUrl().getPositiveParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); + timeout = getUrl().getPositiveParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT); success = future.await(timeout); } Throwable cause = future.getCause(); diff --git a/dubbo-remoting/dubbo-remoting-netty/src/main/java/org/apache/dubbo/remoting/transport/netty/NettyServer.java b/dubbo-remoting/dubbo-remoting-netty/src/main/java/org/apache/dubbo/remoting/transport/netty/NettyServer.java index b25461e0f1..9e782ccfbe 100644 --- a/dubbo-remoting/dubbo-remoting-netty/src/main/java/org/apache/dubbo/remoting/transport/netty/NettyServer.java +++ b/dubbo-remoting/dubbo-remoting-netty/src/main/java/org/apache/dubbo/remoting/transport/netty/NettyServer.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.transport.netty; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.constants.RemotingConstants; import org.apache.dubbo.common.logger.Logger; @@ -46,6 +45,8 @@ import java.util.Map; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; +import static org.apache.dubbo.common.constants.CommonConstants.IO_THREADS_KEY; + /** * NettyServer */ @@ -68,7 +69,7 @@ public class NettyServer extends AbstractServer implements Server { NettyHelper.setNettyLoggerFactory(); ExecutorService boss = Executors.newCachedThreadPool(new NamedThreadFactory("NettyServerBoss", true)); ExecutorService worker = Executors.newCachedThreadPool(new NamedThreadFactory("NettyServerWorker", true)); - ChannelFactory channelFactory = new NioServerSocketChannelFactory(boss, worker, getUrl().getPositiveParameter(Constants.IO_THREADS_KEY, RemotingConstants.DEFAULT_IO_THREADS)); + ChannelFactory channelFactory = new NioServerSocketChannelFactory(boss, worker, getUrl().getPositiveParameter(IO_THREADS_KEY, RemotingConstants.DEFAULT_IO_THREADS)); bootstrap = new ServerBootstrap(channelFactory); final NettyHandler nettyHandler = new NettyHandler(getUrl(), this); diff --git a/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyChannel.java b/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyChannel.java index 21bf241948..b4202e1a21 100644 --- a/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyChannel.java +++ b/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyChannel.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.transport.netty4; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -32,6 +31,9 @@ import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * NettyChannel. */ @@ -100,7 +102,7 @@ final class NettyChannel extends AbstractChannel { try { ChannelFuture future = channel.writeAndFlush(message); if (sent) { - timeout = getUrl().getPositiveParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); + timeout = getUrl().getPositiveParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT); success = future.await(timeout); } Throwable cause = future.cause(); diff --git a/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyServer.java b/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyServer.java index ad952a75ce..6bc5f89573 100644 --- a/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyServer.java +++ b/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyServer.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.transport.netty4; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.constants.RemotingConstants; import org.apache.dubbo.common.logger.Logger; @@ -49,6 +48,7 @@ import java.util.HashSet; import java.util.Map; import static java.util.concurrent.TimeUnit.MILLISECONDS; +import static org.apache.dubbo.common.constants.CommonConstants.IO_THREADS_KEY; /** * NettyServer @@ -75,7 +75,7 @@ public class NettyServer extends AbstractServer implements Server { bootstrap = new ServerBootstrap(); bossGroup = new NioEventLoopGroup(1, new DefaultThreadFactory("NettyServerBoss", true)); - workerGroup = new NioEventLoopGroup(getUrl().getPositiveParameter(Constants.IO_THREADS_KEY, RemotingConstants.DEFAULT_IO_THREADS), + workerGroup = new NioEventLoopGroup(getUrl().getPositiveParameter(IO_THREADS_KEY, RemotingConstants.DEFAULT_IO_THREADS), new DefaultThreadFactory("NettyServerWorker", true)); final NettyServerHandler nettyServerHandler = new NettyServerHandler(getUrl(), this); diff --git a/dubbo-remoting/dubbo-remoting-zookeeper/src/main/java/org/apache/dubbo/remoting/zookeeper/curator/CuratorZookeeperClient.java b/dubbo-remoting/dubbo-remoting-zookeeper/src/main/java/org/apache/dubbo/remoting/zookeeper/curator/CuratorZookeeperClient.java index a97eb7e5f2..e3a06e5998 100644 --- a/dubbo-remoting/dubbo-remoting-zookeeper/src/main/java/org/apache/dubbo/remoting/zookeeper/curator/CuratorZookeeperClient.java +++ b/dubbo-remoting/dubbo-remoting-zookeeper/src/main/java/org/apache/dubbo/remoting/zookeeper/curator/CuratorZookeeperClient.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.zookeeper.curator; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.utils.StringUtils; import org.apache.dubbo.remoting.zookeeper.ChildListener; @@ -46,6 +45,8 @@ import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.Executor; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + public class CuratorZookeeperClient extends AbstractZookeeperClient { static final Charset CHARSET = Charset.forName("UTF-8"); @@ -56,7 +57,7 @@ public class CuratorZookeeperClient extends AbstractZookeeperClient @@ -136,8 +137,8 @@ public abstract class AbstractZookeeperTransporter implements ZookeeperTransport URL toClientURL(URL url) { Map parameterMap = new HashMap<>(); // for CuratorZookeeperClient - if (url.getParameter(Constants.TIMEOUT_KEY) != null) { - parameterMap.put(Constants.TIMEOUT_KEY, url.getParameter(Constants.TIMEOUT_KEY)); + if (url.getParameter(TIMEOUT_KEY) != null) { + parameterMap.put(TIMEOUT_KEY, url.getParameter(TIMEOUT_KEY)); } if (url.getParameter(RemotingConstants.BACKUP_KEY) != null) { parameterMap.put(RemotingConstants.BACKUP_KEY, url.getParameter(RemotingConstants.BACKUP_KEY)); diff --git a/dubbo-remoting/dubbo-remoting-zookeeper/src/test/java/org/apache/dubbo/remoting/zookeeper/support/AbstractZookeeperTransporterTest.java b/dubbo-remoting/dubbo-remoting-zookeeper/src/test/java/org/apache/dubbo/remoting/zookeeper/support/AbstractZookeeperTransporterTest.java index eb6965a0c6..a1644a359e 100644 --- a/dubbo-remoting/dubbo-remoting-zookeeper/src/test/java/org/apache/dubbo/remoting/zookeeper/support/AbstractZookeeperTransporterTest.java +++ b/dubbo-remoting/dubbo-remoting-zookeeper/src/test/java/org/apache/dubbo/remoting/zookeeper/support/AbstractZookeeperTransporterTest.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.remoting.zookeeper.support; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.utils.NetUtils; import org.apache.dubbo.remoting.zookeeper.ZookeeperClient; @@ -31,6 +30,7 @@ import org.junit.jupiter.api.Test; import java.util.List; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.core.IsNot.not; import static org.hamcrest.core.IsNull.nullValue; @@ -74,7 +74,7 @@ public class AbstractZookeeperTransporterTest { Assertions.assertEquals(newUrl.getPort(), zkServerPort); Assertions.assertNull(newUrl.getUsername()); Assertions.assertNull(newUrl.getPassword()); - Assertions.assertEquals(newUrl.getParameter(Constants.TIMEOUT_KEY, 5000), 2300); + Assertions.assertEquals(newUrl.getParameter(TIMEOUT_KEY, 5000), 2300); Assertions.assertEquals(newUrl.getParameters().size(), 1); Assertions.assertEquals(newUrl.getPath(), ZookeeperTransporter.class.getName()); } diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcContext.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcContext.java index fa63b7e4c1..3378e19887 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcContext.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcContext.java @@ -36,6 +36,10 @@ import java.util.concurrent.Future; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; +import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER_SIDE; +import static org.apache.dubbo.common.constants.CommonConstants.SIDE_KEY; + /** * Thread local context. (API, ThreadLocal, ThreadSafe) @@ -235,7 +239,7 @@ public class RpcContext { * @return consumer side. */ public boolean isConsumerSide() { - return getUrl().getParameter(Constants.SIDE_KEY, Constants.PROVIDER_SIDE).equals(Constants.CONSUMER_SIDE); + return getUrl().getParameter(SIDE_KEY, PROVIDER_SIDE).equals(CONSUMER_SIDE); } /** diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcInvocation.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcInvocation.java index 707bf3b77a..7688705c35 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcInvocation.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcInvocation.java @@ -26,6 +26,13 @@ import java.util.Arrays; import java.util.HashMap; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * RPC Invocation. * @@ -54,24 +61,24 @@ public class RpcInvocation implements Invocation, Serializable { invocation.getInvoker()); if (invoker != null) { URL url = invoker.getUrl(); - setAttachment(Constants.PATH_KEY, url.getPath()); - if (url.hasParameter(Constants.INTERFACE_KEY)) { - setAttachment(Constants.INTERFACE_KEY, url.getParameter(Constants.INTERFACE_KEY)); + setAttachment(PATH_KEY, url.getPath()); + if (url.hasParameter(INTERFACE_KEY)) { + setAttachment(INTERFACE_KEY, url.getParameter(INTERFACE_KEY)); } - if (url.hasParameter(Constants.GROUP_KEY)) { - setAttachment(Constants.GROUP_KEY, url.getParameter(Constants.GROUP_KEY)); + if (url.hasParameter(GROUP_KEY)) { + setAttachment(GROUP_KEY, url.getParameter(GROUP_KEY)); } - if (url.hasParameter(Constants.VERSION_KEY)) { - setAttachment(Constants.VERSION_KEY, url.getParameter(Constants.VERSION_KEY, "0.0.0")); + if (url.hasParameter(VERSION_KEY)) { + setAttachment(VERSION_KEY, url.getParameter(VERSION_KEY, "0.0.0")); } - if (url.hasParameter(Constants.TIMEOUT_KEY)) { - setAttachment(Constants.TIMEOUT_KEY, url.getParameter(Constants.TIMEOUT_KEY)); + if (url.hasParameter(TIMEOUT_KEY)) { + setAttachment(TIMEOUT_KEY, url.getParameter(TIMEOUT_KEY)); } if (url.hasParameter(Constants.TOKEN_KEY)) { setAttachment(Constants.TOKEN_KEY, url.getParameter(Constants.TOKEN_KEY)); } - if (url.hasParameter(Constants.APPLICATION_KEY)) { - setAttachment(Constants.APPLICATION_KEY, url.getParameter(Constants.APPLICATION_KEY)); + if (url.hasParameter(APPLICATION_KEY)) { + setAttachment(APPLICATION_KEY, url.getParameter(APPLICATION_KEY)); } } } diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/AccessLogFilter.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/AccessLogFilter.java index 23fa1ea52c..0990daf2eb 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/AccessLogFilter.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/AccessLogFilter.java @@ -45,6 +45,10 @@ import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * Record access log for the service. *

    @@ -59,7 +63,7 @@ import java.util.concurrent.TimeUnit; * </logger> * */ -@Activate(group = Constants.PROVIDER, value = Constants.ACCESS_LOG_KEY) +@Activate(group = PROVIDER, value = Constants.ACCESS_LOG_KEY) public class AccessLogFilter implements Filter { private static final Logger logger = LoggerFactory.getLogger(AccessLogFilter.class); @@ -162,8 +166,8 @@ public class AccessLogFilter implements Filter { AccessLogData logData = AccessLogData.newLogData(); logData.setServiceName(invoker.getInterface().getName()); logData.setMethodName(inv.getMethodName()); - logData.setVersion(invoker.getUrl().getParameter(Constants.VERSION_KEY)); - logData.setGroup(invoker.getUrl().getParameter(Constants.GROUP_KEY)); + logData.setVersion(invoker.getUrl().getParameter(VERSION_KEY)); + logData.setGroup(invoker.getUrl().getParameter(GROUP_KEY)); logData.setInvocationTime(new Date()); logData.setTypes(inv.getParameterTypes()); logData.setArguments(inv.getArguments()); diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ActiveLimitFilter.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ActiveLimitFilter.java index 926fd01942..143544bbf5 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ActiveLimitFilter.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ActiveLimitFilter.java @@ -26,6 +26,9 @@ import org.apache.dubbo.rpc.Result; import org.apache.dubbo.rpc.RpcException; import org.apache.dubbo.rpc.RpcStatus; +import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * ActiveLimitFilter restrict the concurrent client invocation for a service or service's method from client side. * To use active limit filter, configured url with actives and provide valid >0 integer value. @@ -38,7 +41,7 @@ import org.apache.dubbo.rpc.RpcStatus; * * @see Filter */ -@Activate(group = Constants.CONSUMER, value = Constants.ACTIVES_KEY) +@Activate(group = CONSUMER, value = Constants.ACTIVES_KEY) public class ActiveLimitFilter implements Filter { @Override @@ -48,7 +51,7 @@ public class ActiveLimitFilter implements Filter { int max = invoker.getUrl().getMethodParameter(methodName, Constants.ACTIVES_KEY, 0); RpcStatus count = RpcStatus.getStatus(invoker.getUrl(), invocation.getMethodName()); if (!RpcStatus.beginCount(url, methodName, max)) { - long timeout = invoker.getUrl().getMethodParameter(invocation.getMethodName(), Constants.TIMEOUT_KEY, 0); + long timeout = invoker.getUrl().getMethodParameter(invocation.getMethodName(), TIMEOUT_KEY, 0); long start = System.currentTimeMillis(); long remain = timeout; synchronized (count) { diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ClassLoaderFilter.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ClassLoaderFilter.java index 17d265ef6b..62ba78598b 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ClassLoaderFilter.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ClassLoaderFilter.java @@ -16,7 +16,7 @@ */ package org.apache.dubbo.rpc.filter; -import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.Activate; import org.apache.dubbo.rpc.Filter; import org.apache.dubbo.rpc.Invocation; @@ -27,7 +27,7 @@ import org.apache.dubbo.rpc.RpcException; /** * Set the current execution thread class loader to service interface's class loader. */ -@Activate(group = Constants.PROVIDER, order = -30000) +@Activate(group = CommonConstants.PROVIDER, order = -30000) public class ClassLoaderFilter implements Filter { @Override diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ConsumerContextFilter.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ConsumerContextFilter.java index 5db6b889d3..f1696f4a07 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ConsumerContextFilter.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ConsumerContextFilter.java @@ -16,7 +16,7 @@ */ package org.apache.dubbo.rpc.filter; -import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.Activate; import org.apache.dubbo.common.utils.NetUtils; import org.apache.dubbo.rpc.Filter; @@ -34,7 +34,7 @@ import org.apache.dubbo.rpc.RpcInvocation; * @see org.apache.dubbo.rpc.Filter * @see RpcContext */ -@Activate(group = Constants.CONSUMER, order = -10000) +@Activate(group = CommonConstants.CONSUMER, order = -10000) public class ConsumerContextFilter implements Filter { @Override diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ContextFilter.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ContextFilter.java index fe85da0386..1fcb52c929 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ContextFilter.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ContextFilter.java @@ -29,7 +29,14 @@ import org.apache.dubbo.rpc.RpcInvocation; import java.util.HashMap; import java.util.Map; -import static org.apache.dubbo.common.Constants.REMOTE_APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER; +import static org.apache.dubbo.common.constants.CommonConstants.REMOTE_APPLICATION_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * ContextFilter set the provider RpcContext with invoker, invocation, local port it is using and host for @@ -37,7 +44,7 @@ import static org.apache.dubbo.common.Constants.REMOTE_APPLICATION_KEY; * * @see RpcContext */ -@Activate(group = Constants.PROVIDER, order = -10000) +@Activate(group = PROVIDER, order = -10000) public class ContextFilter implements Filter { @Override @@ -45,13 +52,13 @@ public class ContextFilter implements Filter { Map attachments = invocation.getAttachments(); if (attachments != null) { attachments = new HashMap<>(attachments); - attachments.remove(Constants.PATH_KEY); - attachments.remove(Constants.INTERFACE_KEY); - attachments.remove(Constants.GROUP_KEY); - attachments.remove(Constants.VERSION_KEY); + attachments.remove(PATH_KEY); + attachments.remove(INTERFACE_KEY); + attachments.remove(GROUP_KEY); + attachments.remove(VERSION_KEY); attachments.remove(Constants.DUBBO_VERSION_KEY); attachments.remove(Constants.TOKEN_KEY); - attachments.remove(Constants.TIMEOUT_KEY); + attachments.remove(TIMEOUT_KEY); // Remove async property to avoid being passed to the following invoke chain. attachments.remove(Constants.ASYNC_KEY); attachments.remove(Constants.TAG_KEY); diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/DeprecatedFilter.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/DeprecatedFilter.java index 95803cbd1a..c373e79eb4 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/DeprecatedFilter.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/DeprecatedFilter.java @@ -17,6 +17,7 @@ package org.apache.dubbo.rpc.filter; import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.Activate; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -35,7 +36,7 @@ import java.util.Set; * * @see Filter */ -@Activate(group = Constants.CONSUMER, value = Constants.DEPRECATED_KEY) +@Activate(group = CommonConstants.CONSUMER, value = Constants.DEPRECATED_KEY) public class DeprecatedFilter implements Filter { private static final Logger LOGGER = LoggerFactory.getLogger(DeprecatedFilter.class); diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/EchoFilter.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/EchoFilter.java index cba9e7f4f4..9df24c4cd0 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/EchoFilter.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/EchoFilter.java @@ -17,6 +17,7 @@ package org.apache.dubbo.rpc.filter; import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.Activate; import org.apache.dubbo.rpc.Filter; import org.apache.dubbo.rpc.Invocation; @@ -28,7 +29,7 @@ import org.apache.dubbo.rpc.RpcResult; /** * Dubbo provided default Echo echo service, which is available for all dubbo provider service interface. */ -@Activate(group = Constants.PROVIDER, order = -110000) +@Activate(group = CommonConstants.PROVIDER, order = -110000) public class EchoFilter implements Filter { @Override diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ExceptionFilter.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ExceptionFilter.java index 7715348f82..bc4018513f 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ExceptionFilter.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ExceptionFilter.java @@ -16,7 +16,7 @@ */ package org.apache.dubbo.rpc.filter; -import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.Activate; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -44,7 +44,7 @@ import java.lang.reflect.Method; *

  • Wrap the exception not introduced in API package into RuntimeException. Framework will serialize the outer exception but stringnize its cause in order to avoid of possible serialization problem on client side
  • * */ -@Activate(group = Constants.PROVIDER) +@Activate(group = CommonConstants.PROVIDER) public class ExceptionFilter implements Filter { private final Logger logger; diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ExecuteLimitFilter.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ExecuteLimitFilter.java index b335a4141f..42298e7c9e 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ExecuteLimitFilter.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/ExecuteLimitFilter.java @@ -18,6 +18,7 @@ package org.apache.dubbo.rpc.filter; import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.Activate; import org.apache.dubbo.rpc.Filter; import org.apache.dubbo.rpc.Invocation; @@ -32,7 +33,7 @@ import org.apache.dubbo.rpc.RpcStatus; * continue the same behaviour un till it is <10. * */ -@Activate(group = Constants.PROVIDER, value = Constants.EXECUTES_KEY) +@Activate(group = CommonConstants.PROVIDER, value = Constants.EXECUTES_KEY) public class ExecuteLimitFilter implements Filter { @Override diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericFilter.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericFilter.java index fdbfdef275..be629a5a54 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericFilter.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericFilter.java @@ -20,6 +20,7 @@ import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.beanutil.JavaBeanAccessor; import org.apache.dubbo.common.beanutil.JavaBeanDescriptor; import org.apache.dubbo.common.beanutil.JavaBeanSerializeUtil; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.Activate; import org.apache.dubbo.common.extension.ExtensionLoader; import org.apache.dubbo.common.io.UnsafeByteArrayInputStream; @@ -46,7 +47,7 @@ import java.lang.reflect.Method; /** * GenericInvokerFilter. */ -@Activate(group = Constants.PROVIDER, order = -20000) +@Activate(group = CommonConstants.PROVIDER, order = -20000) public class GenericFilter implements Filter { @Override diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericImplFilter.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericImplFilter.java index 6df1262fbe..8c23043c3f 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericImplFilter.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericImplFilter.java @@ -20,6 +20,7 @@ import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.beanutil.JavaBeanAccessor; import org.apache.dubbo.common.beanutil.JavaBeanDescriptor; import org.apache.dubbo.common.beanutil.JavaBeanSerializeUtil; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.Activate; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -42,7 +43,7 @@ import java.lang.reflect.Method; /** * GenericImplInvokerFilter */ -@Activate(group = Constants.CONSUMER, value = Constants.GENERIC_KEY, order = 20000) +@Activate(group = CommonConstants.CONSUMER, value = Constants.GENERIC_KEY, order = 20000) public class GenericImplFilter implements Filter { private static final Logger logger = LoggerFactory.getLogger(GenericImplFilter.class); diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/TimeoutFilter.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/TimeoutFilter.java index c00689fc1c..d0f7b57249 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/TimeoutFilter.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/TimeoutFilter.java @@ -16,7 +16,7 @@ */ package org.apache.dubbo.rpc.filter; -import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.Activate; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -32,7 +32,7 @@ import java.util.Arrays; /** * Log any invocation timeout, but don't stop server from running */ -@Activate(group = Constants.PROVIDER) +@Activate(group = CommonConstants.PROVIDER) public class TimeoutFilter implements Filter { private static final Logger logger = LoggerFactory.getLogger(TimeoutFilter.class); diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/TokenFilter.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/TokenFilter.java index 35ef2aca52..7ac23b0b22 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/TokenFilter.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/TokenFilter.java @@ -17,6 +17,7 @@ package org.apache.dubbo.rpc.filter; import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.Activate; import org.apache.dubbo.common.utils.ConfigUtils; import org.apache.dubbo.rpc.Filter; @@ -34,7 +35,7 @@ import java.util.Map; * * @see Filter */ -@Activate(group = Constants.PROVIDER, value = Constants.TOKEN_KEY) +@Activate(group = CommonConstants.PROVIDER, value = Constants.TOKEN_KEY) public class TokenFilter implements Filter { @Override diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/TpsLimitFilter.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/TpsLimitFilter.java index 5ce78d141e..bf05dad352 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/TpsLimitFilter.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/TpsLimitFilter.java @@ -18,6 +18,7 @@ package org.apache.dubbo.rpc.filter; import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.Activate; import org.apache.dubbo.rpc.Filter; import org.apache.dubbo.rpc.Invocation; @@ -34,7 +35,7 @@ import org.apache.dubbo.rpc.filter.tps.TPSLimiter; * if invocation count exceed the configured tps value (default is -1 which means unlimited) then invocation will get * RpcException. * */ -@Activate(group = Constants.PROVIDER, value = Constants.TPS_LIMIT_RATE_KEY) +@Activate(group = CommonConstants.PROVIDER, value = Constants.TPS_LIMIT_RATE_KEY) public class TpsLimitFilter implements Filter { private final TPSLimiter tpsLimiter = new DefaultTPSLimiter(); diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/AbstractProtocol.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/AbstractProtocol.java index afac729e26..5c1b780dc5 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/AbstractProtocol.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/AbstractProtocol.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.rpc.protocol; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.constants.RemotingConstants; import org.apache.dubbo.common.logger.Logger; @@ -32,6 +31,9 @@ import java.util.Map; import java.util.Set; import java.util.concurrent.ConcurrentHashMap; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * abstract ProtocolSupport. */ @@ -46,8 +48,7 @@ public abstract class AbstractProtocol implements Protocol { protected static String serviceKey(URL url) { int port = url.getParameter(RemotingConstants.BIND_PORT_KEY, url.getPort()); - return serviceKey(port, url.getPath(), url.getParameter(Constants.VERSION_KEY), - url.getParameter(Constants.GROUP_KEY)); + return serviceKey(port, url.getPath(), url.getParameter(VERSION_KEY), url.getParameter(GROUP_KEY)); } protected static String serviceKey(int port, String serviceName, String serviceVersion, String serviceGroup) { diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/AbstractProxyProtocol.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/AbstractProxyProtocol.java index ef9ab321cb..dafbd32851 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/AbstractProxyProtocol.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/AbstractProxyProtocol.java @@ -17,7 +17,6 @@ package org.apache.dubbo.rpc.protocol; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.constants.RemotingConstants; import org.apache.dubbo.common.utils.NetUtils; @@ -32,6 +31,9 @@ import java.util.List; import java.util.Objects; import java.util.concurrent.CopyOnWriteArrayList; +import static org.apache.dubbo.common.constants.CommonConstants.ANYHOST_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.ANYHOST_VALUE; + /** * AbstractProxyProtocol */ @@ -132,8 +134,8 @@ public abstract class AbstractProxyProtocol extends AbstractProtocol { protected String getAddr(URL url) { String bindIp = url.getParameter(RemotingConstants.BIND_IP_KEY, url.getHost()); - if (url.getParameter(Constants.ANYHOST_KEY, false)) { - bindIp = Constants.ANYHOST_VALUE; + if (url.getParameter(ANYHOST_KEY, false)) { + bindIp = ANYHOST_VALUE; } return NetUtils.getIpByHost(bindIp) + ":" + url.getParameter(RemotingConstants.BIND_PORT_KEY, url.getPort()); } diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/ProtocolFilterWrapper.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/ProtocolFilterWrapper.java index c5ed5943cd..766971c4eb 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/ProtocolFilterWrapper.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/ProtocolFilterWrapper.java @@ -18,6 +18,7 @@ package org.apache.dubbo.rpc.protocol; import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.ExtensionLoader; import org.apache.dubbo.rpc.AsyncRpcResult; import org.apache.dubbo.rpc.Exporter; @@ -105,7 +106,7 @@ public class ProtocolFilterWrapper implements Protocol { if (Constants.REGISTRY_PROTOCOL.equals(invoker.getUrl().getProtocol())) { return protocol.export(invoker); } - return protocol.export(buildInvokerChain(invoker, Constants.SERVICE_FILTER_KEY, Constants.PROVIDER)); + return protocol.export(buildInvokerChain(invoker, Constants.SERVICE_FILTER_KEY, CommonConstants.PROVIDER)); } @Override @@ -113,7 +114,7 @@ public class ProtocolFilterWrapper implements Protocol { if (Constants.REGISTRY_PROTOCOL.equals(url.getProtocol())) { return protocol.refer(type, url); } - return buildInvokerChain(protocol.refer(type, url), Constants.REFERENCE_FILTER_KEY, Constants.CONSUMER); + return buildInvokerChain(protocol.refer(type, url), Constants.REFERENCE_FILTER_KEY, CommonConstants.CONSUMER); } @Override diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/proxy/AbstractProxyFactory.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/proxy/AbstractProxyFactory.java index c46aada701..b2d48916fb 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/proxy/AbstractProxyFactory.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/proxy/AbstractProxyFactory.java @@ -25,6 +25,8 @@ import org.apache.dubbo.rpc.service.GenericService; import com.alibaba.dubbo.rpc.service.EchoService; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; + /** * AbstractProxyFactory */ @@ -40,7 +42,7 @@ public abstract class AbstractProxyFactory implements ProxyFactory { Class[] interfaces = null; String config = invoker.getUrl().getParameter(Constants.INTERFACES); if (config != null && config.length() > 0) { - String[] types = Constants.COMMA_SPLIT_PATTERN.split(config); + String[] types = COMMA_SPLIT_PATTERN.split(config); if (types != null && types.length > 0) { interfaces = new Class[types.length + 2]; interfaces[0] = invoker.getInterface(); diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/support/ProtocolUtils.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/support/ProtocolUtils.java index a64717c26c..75b77f8185 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/support/ProtocolUtils.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/support/ProtocolUtils.java @@ -20,14 +20,17 @@ import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.utils.StringUtils; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + public class ProtocolUtils { private ProtocolUtils() { } public static String serviceKey(URL url) { - return serviceKey(url.getPort(), url.getPath(), url.getParameter(Constants.VERSION_KEY), - url.getParameter(Constants.GROUP_KEY)); + return serviceKey(url.getPort(), url.getPath(), url.getParameter(VERSION_KEY), + url.getParameter(GROUP_KEY)); } public static String serviceKey(int port, String serviceName, String serviceVersion, String serviceGroup) { diff --git a/dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/filter/tps/DefaultTPSLimiterTest.java b/dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/filter/tps/DefaultTPSLimiterTest.java index 7852e42e8d..cd1e9be3d2 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/filter/tps/DefaultTPSLimiterTest.java +++ b/dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/filter/tps/DefaultTPSLimiterTest.java @@ -20,14 +20,12 @@ import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.rpc.Invocation; import org.apache.dubbo.rpc.support.MockInvocation; + import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; -/** - * @author: lizhen - * @since: 2019-03-19 - * @description: - */ +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; + public class DefaultTPSLimiterTest { private DefaultTPSLimiter defaultTPSLimiter = new DefaultTPSLimiter(); @@ -36,7 +34,7 @@ public class DefaultTPSLimiterTest { public void testIsAllowable() throws Exception { Invocation invocation = new MockInvocation(); URL url = URL.valueOf("test://test"); - url = url.addParameter(Constants.INTERFACE_KEY, "org.apache.dubbo.rpc.file.TpsService"); + url = url.addParameter(INTERFACE_KEY, "org.apache.dubbo.rpc.file.TpsService"); url = url.addParameter(Constants.TPS_LIMIT_RATE_KEY, 2); url = url.addParameter(Constants.TPS_LIMIT_INTERVAL_KEY, 1000); for (int i = 0; i < 3; i++) { @@ -48,7 +46,7 @@ public class DefaultTPSLimiterTest { public void testIsNotAllowable() throws Exception { Invocation invocation = new MockInvocation(); URL url = URL.valueOf("test://test"); - url = url.addParameter(Constants.INTERFACE_KEY, "org.apache.dubbo.rpc.file.TpsService"); + url = url.addParameter(INTERFACE_KEY, "org.apache.dubbo.rpc.file.TpsService"); url = url.addParameter(Constants.TPS_LIMIT_RATE_KEY, 2); url = url.addParameter(Constants.TPS_LIMIT_INTERVAL_KEY, 1000); for (int i = 0; i < 4; i++) { @@ -65,7 +63,7 @@ public class DefaultTPSLimiterTest { public void testConfigChange() throws Exception { Invocation invocation = new MockInvocation(); URL url = URL.valueOf("test://test"); - url = url.addParameter(Constants.INTERFACE_KEY, "org.apache.dubbo.rpc.file.TpsService"); + url = url.addParameter(INTERFACE_KEY, "org.apache.dubbo.rpc.file.TpsService"); url = url.addParameter(Constants.TPS_LIMIT_RATE_KEY, 2); url = url.addParameter(Constants.TPS_LIMIT_INTERVAL_KEY, 1000); for (int i = 0; i < 3; i++) { diff --git a/dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/filter/tps/TpsLimitFilterTest.java b/dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/filter/tps/TpsLimitFilterTest.java index 235eeddd6e..4466224172 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/filter/tps/TpsLimitFilterTest.java +++ b/dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/filter/tps/TpsLimitFilterTest.java @@ -28,6 +28,7 @@ import org.apache.dubbo.rpc.support.MyInvoker; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; import static org.junit.jupiter.api.Assertions.assertTrue; public class TpsLimitFilterTest { @@ -37,8 +38,7 @@ public class TpsLimitFilterTest { @Test public void testWithoutCount() throws Exception { URL url = URL.valueOf("test://test"); - url = url.addParameter(Constants.INTERFACE_KEY, - "org.apache.dubbo.rpc.file.TpsService"); + url = url.addParameter(INTERFACE_KEY, "org.apache.dubbo.rpc.file.TpsService"); url = url.addParameter(Constants.TPS_LIMIT_RATE_KEY, 5); Invoker invoker = new MyInvoker(url); Invocation invocation = new MockInvocation(); @@ -49,8 +49,7 @@ public class TpsLimitFilterTest { public void testFail() throws Exception { Assertions.assertThrows(RpcException.class, () -> { URL url = URL.valueOf("test://test"); - url = url.addParameter(Constants.INTERFACE_KEY, - "org.apache.dubbo.rpc.file.TpsService"); + url = url.addParameter(INTERFACE_KEY, "org.apache.dubbo.rpc.file.TpsService"); url = url.addParameter(Constants.TPS_LIMIT_RATE_KEY, 5); Invoker invoker = new MyInvoker(url); Invocation invocation = new MockInvocation(); @@ -65,4 +64,4 @@ public class TpsLimitFilterTest { }); } -} \ No newline at end of file +} diff --git a/dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/support/MockInvocation.java b/dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/support/MockInvocation.java index 5b7261de7b..b017ed6ea8 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/support/MockInvocation.java +++ b/dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/support/MockInvocation.java @@ -23,6 +23,11 @@ import org.apache.dubbo.rpc.Invoker; import java.util.HashMap; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * MockInvocation.java */ @@ -42,12 +47,12 @@ public class MockInvocation implements Invocation { public Map getAttachments() { Map attachments = new HashMap(); - attachments.put(Constants.PATH_KEY, "dubbo"); - attachments.put(Constants.GROUP_KEY, "dubbo"); - attachments.put(Constants.VERSION_KEY, "1.0.0"); + attachments.put(PATH_KEY, "dubbo"); + attachments.put(GROUP_KEY, "dubbo"); + attachments.put(VERSION_KEY, "1.0.0"); attachments.put(Constants.DUBBO_VERSION_KEY, "1.0.0"); attachments.put(Constants.TOKEN_KEY, "sfag"); - attachments.put(Constants.TIMEOUT_KEY, "1000"); + attachments.put(TIMEOUT_KEY, "1000"); return attachments; } @@ -63,4 +68,4 @@ public class MockInvocation implements Invocation { return getAttachments().get(key); } -} \ No newline at end of file +} diff --git a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/CallbackServiceCodec.java b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/CallbackServiceCodec.java index 5eb4dd9205..dadd4a43ea 100644 --- a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/CallbackServiceCodec.java +++ b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/CallbackServiceCodec.java @@ -37,6 +37,11 @@ import java.util.HashMap; import java.util.Map; import java.util.Set; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.METHODS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * callback service helper */ @@ -85,17 +90,17 @@ class CallbackServiceCodec { params.put(Constants.IS_SERVER_KEY, Boolean.FALSE.toString()); // mark it's a callback, for troubleshooting params.put(Constants.IS_CALLBACK_SERVICE, Boolean.TRUE.toString()); - String group = (url == null ? null : url.getParameter(Constants.GROUP_KEY)); + String group = (url == null ? null : url.getParameter(GROUP_KEY)); if (group != null && group.length() > 0) { - params.put(Constants.GROUP_KEY, group); + params.put(GROUP_KEY, group); } // add method, for verifying against method, automatic fallback (see dubbo protocol) - params.put(Constants.METHODS_KEY, StringUtils.join(Wrapper.getWrapper(clazz).getDeclaredMethodNames(), ",")); + params.put(METHODS_KEY, StringUtils.join(Wrapper.getWrapper(clazz).getDeclaredMethodNames(), ",")); Map tmpMap = new HashMap<>(url.getParameters()); tmpMap.putAll(params); - tmpMap.remove(Constants.VERSION_KEY);// doesn't need to distinguish version for callback - tmpMap.put(Constants.INTERFACE_KEY, clazz.getName()); + tmpMap.remove(VERSION_KEY);// doesn't need to distinguish version for callback + tmpMap.put(INTERFACE_KEY, clazz.getName()); URL exportUrl = new URL(DubboProtocol.NAME, channel.getLocalAddress().getAddress().getHostAddress(), channel.getLocalAddress().getPort(), clazz.getName() + "." + instid, tmpMap); // no need to generate multiple exporters for different channel in the same JVM, cache key cannot collide. @@ -139,8 +144,8 @@ class CallbackServiceCodec { String countkey = getServerSideCountKey(channel, clazz.getName()); if (isRefer) { if (proxy == null) { - URL referurl = URL.valueOf("callback://" + url.getAddress() + "/" + clazz.getName() + "?" + Constants.INTERFACE_KEY + "=" + clazz.getName()); - referurl = referurl.addParametersIfAbsent(url.getParameters()).removeParameter(Constants.METHODS_KEY); + URL referurl = URL.valueOf("callback://" + url.getAddress() + "/" + clazz.getName() + "?" + INTERFACE_KEY + "=" + clazz.getName()); + referurl = referurl.addParametersIfAbsent(url.getParameters()).removeParameter(METHODS_KEY); if (!isInstancesOverLimit(channel, referurl, clazz.getName(), instid, true)) { @SuppressWarnings("rawtypes") Invoker invoker = new ChannelWrappedInvoker(clazz, channel, referurl, String.valueOf(instid)); diff --git a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/ChannelWrappedInvoker.java b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/ChannelWrappedInvoker.java index 14c7644614..02fc3d9a14 100644 --- a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/ChannelWrappedInvoker.java +++ b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/ChannelWrappedInvoker.java @@ -35,6 +35,11 @@ import org.apache.dubbo.rpc.protocol.AbstractInvoker; import java.net.InetSocketAddress; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * Wrap the existing invoker on the channel. */ @@ -45,7 +50,7 @@ class ChannelWrappedInvoker extends AbstractInvoker { private final ExchangeClient currentClient; ChannelWrappedInvoker(Class serviceType, Channel channel, URL url, String serviceKey) { - super(serviceType, url, new String[]{Constants.GROUP_KEY, Constants.TOKEN_KEY, Constants.TIMEOUT_KEY}); + super(serviceType, url, new String[]{GROUP_KEY, Constants.TOKEN_KEY, TIMEOUT_KEY}); this.channel = channel; this.serviceKey = serviceKey; this.currentClient = new HeaderExchangeClient(new ChannelWrapper(this.channel), false); @@ -55,7 +60,7 @@ class ChannelWrappedInvoker extends AbstractInvoker { protected Result doInvoke(Invocation invocation) throws Throwable { RpcInvocation inv = (RpcInvocation) invocation; // use interface's name as service path to export if it's not found on client side - inv.setAttachment(Constants.PATH_KEY, getInterface().getName()); + inv.setAttachment(PATH_KEY, getInterface().getName()); inv.setAttachment(Constants.CALLBACK_SERVICE_KEY, serviceKey); try { @@ -63,7 +68,7 @@ class ChannelWrappedInvoker extends AbstractInvoker { currentClient.send(inv, getUrl().getMethodParameter(invocation.getMethodName(), RemotingConstants.SENT_KEY, false)); return new RpcResult(); } - int timeout = getUrl().getMethodParameter(invocation.getMethodName(), Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); + int timeout = getUrl().getMethodParameter(invocation.getMethodName(), TIMEOUT_KEY, DEFAULT_TIMEOUT); if (timeout > 0) { return (Result) currentClient.request(inv, timeout).get(); } else { diff --git a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DecodeableRpcInvocation.java b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DecodeableRpcInvocation.java index fdf541b35d..9f3a367c8b 100644 --- a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DecodeableRpcInvocation.java +++ b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DecodeableRpcInvocation.java @@ -37,6 +37,8 @@ import java.io.OutputStream; import java.util.HashMap; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; import static org.apache.dubbo.rpc.protocol.dubbo.CallbackServiceCodec.decodeInvocationArgument; public class DecodeableRpcInvocation extends RpcInvocation implements Codec, Decodeable { @@ -94,8 +96,8 @@ public class DecodeableRpcInvocation extends RpcInvocation implements Codec, Dec request.setVersion(dubboVersion); setAttachment(Constants.DUBBO_VERSION_KEY, dubboVersion); - setAttachment(Constants.PATH_KEY, in.readUTF()); - setAttachment(Constants.VERSION_KEY, in.readUTF()); + setAttachment(PATH_KEY, in.readUTF()); + setAttachment(VERSION_KEY, in.readUTF()); setMethodName(in.readUTF()); try { diff --git a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DubboCodec.java b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DubboCodec.java index bc8c747018..1685f06fbc 100644 --- a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DubboCodec.java +++ b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DubboCodec.java @@ -39,6 +39,8 @@ import org.apache.dubbo.rpc.support.RpcUtils; import java.io.IOException; import java.io.InputStream; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; import static org.apache.dubbo.rpc.protocol.dubbo.CallbackServiceCodec.encodeInvocationArgument; /** @@ -175,8 +177,8 @@ public class DubboCodec extends ExchangeCodec { RpcInvocation inv = (RpcInvocation) data; out.writeUTF(version); - out.writeUTF(inv.getAttachment(Constants.PATH_KEY)); - out.writeUTF(inv.getAttachment(Constants.VERSION_KEY)); + out.writeUTF(inv.getAttachment(PATH_KEY)); + out.writeUTF(inv.getAttachment(VERSION_KEY)); out.writeUTF(inv.getMethodName()); out.writeUTF(ReflectUtils.getDesc(inv.getParameterTypes())); diff --git a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DubboInvoker.java b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DubboInvoker.java index 0bddaf1638..823c561078 100644 --- a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DubboInvoker.java +++ b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DubboInvoker.java @@ -40,6 +40,13 @@ import org.apache.dubbo.rpc.support.RpcUtils; import java.util.Set; import java.util.concurrent.locks.ReentrantLock; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * DubboInvoker */ @@ -60,10 +67,10 @@ public class DubboInvoker extends AbstractInvoker { } public DubboInvoker(Class serviceType, URL url, ExchangeClient[] clients, Set> invokers) { - super(serviceType, url, new String[]{Constants.INTERFACE_KEY, Constants.GROUP_KEY, Constants.TOKEN_KEY, Constants.TIMEOUT_KEY}); + super(serviceType, url, new String[]{INTERFACE_KEY, GROUP_KEY, Constants.TOKEN_KEY, TIMEOUT_KEY}); this.clients = clients; // get version. - this.version = url.getParameter(Constants.VERSION_KEY, "0.0.0"); + this.version = url.getParameter(VERSION_KEY, "0.0.0"); this.invokers = invokers; } @@ -71,8 +78,8 @@ public class DubboInvoker extends AbstractInvoker { protected Result doInvoke(final Invocation invocation) throws Throwable { RpcInvocation inv = (RpcInvocation) invocation; final String methodName = RpcUtils.getMethodName(invocation); - inv.setAttachment(Constants.PATH_KEY, getUrl().getPath()); - inv.setAttachment(Constants.VERSION_KEY, version); + inv.setAttachment(PATH_KEY, getUrl().getPath()); + inv.setAttachment(VERSION_KEY, version); ExchangeClient currentClient; if (clients.length == 1) { @@ -84,7 +91,7 @@ public class DubboInvoker extends AbstractInvoker { boolean isAsync = RpcUtils.isAsync(getUrl(), invocation); boolean isAsyncFuture = RpcUtils.isReturnTypeFuture(inv); boolean isOneway = RpcUtils.isOneway(getUrl(), invocation); - int timeout = getUrl().getMethodParameter(methodName, Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); + int timeout = getUrl().getMethodParameter(methodName, TIMEOUT_KEY, DEFAULT_TIMEOUT); if (isOneway) { boolean isSent = getUrl().getMethodParameter(methodName, RemotingConstants.SENT_KEY, false); currentClient.send(inv, isSent); diff --git a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DubboProtocol.java b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DubboProtocol.java index 9d881d08f0..52c64c3aed 100644 --- a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DubboProtocol.java +++ b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/DubboProtocol.java @@ -61,6 +61,11 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; import java.util.concurrent.CopyOnWriteArrayList; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; + /** * dubbo protocol support. */ @@ -177,10 +182,10 @@ public class DubboProtocol extends AbstractProtocol { } RpcInvocation invocation = new RpcInvocation(method, new Class[0], new Object[0]); - invocation.setAttachment(Constants.PATH_KEY, url.getPath()); - invocation.setAttachment(Constants.GROUP_KEY, url.getParameter(Constants.GROUP_KEY)); - invocation.setAttachment(Constants.INTERFACE_KEY, url.getParameter(Constants.INTERFACE_KEY)); - invocation.setAttachment(Constants.VERSION_KEY, url.getParameter(Constants.VERSION_KEY)); + invocation.setAttachment(PATH_KEY, url.getPath()); + invocation.setAttachment(GROUP_KEY, url.getParameter(GROUP_KEY)); + invocation.setAttachment(INTERFACE_KEY, url.getParameter(INTERFACE_KEY)); + invocation.setAttachment(VERSION_KEY, url.getParameter(VERSION_KEY)); if (url.getParameter(Constants.STUB_EVENT_KEY, false)) { invocation.setAttachment(Constants.STUB_EVENT_KEY, Boolean.TRUE.toString()); } @@ -226,7 +231,7 @@ public class DubboProtocol extends AbstractProtocol { boolean isCallBackServiceInvoke = false; boolean isStubServiceInvoke = false; int port = channel.getLocalAddress().getPort(); - String path = inv.getAttachments().get(Constants.PATH_KEY); + String path = inv.getAttachments().get(PATH_KEY); // if it's callback service on client side isStubServiceInvoke = Boolean.TRUE.toString().equals(inv.getAttachments().get(Constants.STUB_EVENT_KEY)); @@ -241,7 +246,7 @@ public class DubboProtocol extends AbstractProtocol { inv.getAttachments().put(IS_CALLBACK_SERVICE_INVOKE, Boolean.TRUE.toString()); } - String serviceKey = serviceKey(port, path, inv.getAttachments().get(Constants.VERSION_KEY), inv.getAttachments().get(Constants.GROUP_KEY)); + String serviceKey = serviceKey(port, path, inv.getAttachments().get(VERSION_KEY), inv.getAttachments().get(GROUP_KEY)); DubboExporter exporter = (DubboExporter) exporterMap.get(serviceKey); if (exporter == null) { @@ -277,7 +282,7 @@ public class DubboProtocol extends AbstractProtocol { String stubServiceMethods = url.getParameter(Constants.STUB_EVENT_METHODS_KEY); if (stubServiceMethods == null || stubServiceMethods.length() == 0) { if (logger.isWarnEnabled()) { - logger.warn(new IllegalStateException("consumer [" + url.getParameter(Constants.INTERFACE_KEY) + + logger.warn(new IllegalStateException("consumer [" + url.getParameter(INTERFACE_KEY) + "], has set stubproxy support event ,but no stub methods founded.")); } diff --git a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/filter/FutureFilter.java b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/filter/FutureFilter.java index 98283f450c..24e72d607a 100644 --- a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/filter/FutureFilter.java +++ b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/filter/FutureFilter.java @@ -17,6 +17,7 @@ package org.apache.dubbo.rpc.protocol.dubbo.filter; import org.apache.dubbo.common.Constants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.Activate; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -36,7 +37,7 @@ import java.lang.reflect.Method; /** * EventFilter */ -@Activate(group = Constants.CONSUMER) +@Activate(group = CommonConstants.CONSUMER) public class FutureFilter implements Filter { protected static final Logger logger = LoggerFactory.getLogger(FutureFilter.class); diff --git a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/filter/TraceFilter.java b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/filter/TraceFilter.java index 004e47f158..b2aae4496d 100644 --- a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/filter/TraceFilter.java +++ b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/filter/TraceFilter.java @@ -16,8 +16,8 @@ */ package org.apache.dubbo.rpc.protocol.dubbo.filter; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.constants.RemotingConstants; +import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.Activate; import org.apache.dubbo.common.logger.Logger; import org.apache.dubbo.common.logger.LoggerFactory; @@ -42,7 +42,7 @@ import java.util.concurrent.atomic.AtomicInteger; /** * TraceFilter */ -@Activate(group = Constants.PROVIDER) +@Activate(group = CommonConstants.PROVIDER) public class TraceFilter implements Filter { private static final Logger logger = LoggerFactory.getLogger(TraceFilter.class); diff --git a/dubbo-rpc/dubbo-rpc-hessian/src/main/java/org/apache/dubbo/rpc/protocol/hessian/HessianProtocol.java b/dubbo-rpc/dubbo-rpc-hessian/src/main/java/org/apache/dubbo/rpc/protocol/hessian/HessianProtocol.java index 0c76e1e766..caa5b597eb 100644 --- a/dubbo-rpc/dubbo-rpc-hessian/src/main/java/org/apache/dubbo/rpc/protocol/hessian/HessianProtocol.java +++ b/dubbo-rpc/dubbo-rpc-hessian/src/main/java/org/apache/dubbo/rpc/protocol/hessian/HessianProtocol.java @@ -45,6 +45,9 @@ import java.util.Enumeration; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * http rpc support. */ @@ -120,7 +123,7 @@ public class HessianProtocol extends AbstractProxyProtocol { factory.setHessianProxyFactory(hessianProxyFactory); hessianProxyFactory.setConnectionFactory(factory); } - int timeout = url.getParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); + int timeout = url.getParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT); hessianProxyFactory.setConnectTimeout(timeout); hessianProxyFactory.setReadTimeout(timeout); return (T) hessianProxyFactory.create(serviceType, url.setProtocol("http").toJavaURL(), Thread.currentThread().getContextClassLoader()); diff --git a/dubbo-rpc/dubbo-rpc-http/src/main/java/org/apache/dubbo/rpc/protocol/http/HttpProtocol.java b/dubbo-rpc/dubbo-rpc-http/src/main/java/org/apache/dubbo/rpc/protocol/http/HttpProtocol.java index d744ebfc0e..a3c91d0af4 100644 --- a/dubbo-rpc/dubbo-rpc-http/src/main/java/org/apache/dubbo/rpc/protocol/http/HttpProtocol.java +++ b/dubbo-rpc/dubbo-rpc-http/src/main/java/org/apache/dubbo/rpc/protocol/http/HttpProtocol.java @@ -48,6 +48,10 @@ import java.net.SocketTimeoutException; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; +import static org.apache.dubbo.common.constants.CommonConstants.RELEASE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * HttpProtocol */ @@ -124,7 +128,7 @@ public class HttpProtocol extends AbstractProxyProtocol { package was renamed to 'org.apache.dubbo' in v2.7.0, so only provider versions after v2.7.0 can recognize org.apache.xxx.HttpRemoteInvocation'. */ - if (Version.isRelease270OrHigher(url.getParameter(Constants.RELEASE_KEY))) { + if (Version.isRelease270OrHigher(url.getParameter(RELEASE_KEY))) { invocation = new HttpRemoteInvocation(methodInvocation); } else { /* @@ -161,14 +165,14 @@ public class HttpProtocol extends AbstractProxyProtocol { protected void prepareConnection(HttpURLConnection con, int contentLength) throws IOException { super.prepareConnection(con, contentLength); - con.setReadTimeout(url.getParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT)); + con.setReadTimeout(url.getParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT)); con.setConnectTimeout(url.getParameter(RemotingConstants.CONNECT_TIMEOUT_KEY, RemotingConstants.DEFAULT_CONNECT_TIMEOUT)); } }; httpProxyFactoryBean.setHttpInvokerRequestExecutor(httpInvokerRequestExecutor); } else if ("commons".equals(client)) { HttpComponentsHttpInvokerRequestExecutor httpInvokerRequestExecutor = new HttpComponentsHttpInvokerRequestExecutor(); - httpInvokerRequestExecutor.setReadTimeout(url.getParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT)); + httpInvokerRequestExecutor.setReadTimeout(url.getParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT)); httpInvokerRequestExecutor.setConnectTimeout(url.getParameter(RemotingConstants.CONNECT_TIMEOUT_KEY, RemotingConstants.DEFAULT_CONNECT_TIMEOUT)); httpProxyFactoryBean.setHttpInvokerRequestExecutor(httpInvokerRequestExecutor); } else { diff --git a/dubbo-rpc/dubbo-rpc-injvm/src/main/java/org/apache/dubbo/rpc/protocol/injvm/InjvmInvoker.java b/dubbo-rpc/dubbo-rpc-injvm/src/main/java/org/apache/dubbo/rpc/protocol/injvm/InjvmInvoker.java index 37d23d5bdf..480014a091 100644 --- a/dubbo-rpc/dubbo-rpc-injvm/src/main/java/org/apache/dubbo/rpc/protocol/injvm/InjvmInvoker.java +++ b/dubbo-rpc/dubbo-rpc-injvm/src/main/java/org/apache/dubbo/rpc/protocol/injvm/InjvmInvoker.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.rpc.protocol.injvm; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.rpc.Exporter; import org.apache.dubbo.rpc.Invocation; @@ -27,6 +26,8 @@ import org.apache.dubbo.rpc.protocol.AbstractInvoker; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.LOCALHOST_VALUE; + /** * InjvmInvoker */ @@ -58,7 +59,7 @@ class InjvmInvoker extends AbstractInvoker { if (exporter == null) { throw new RpcException("Service [" + key + "] not found."); } - RpcContext.getContext().setRemoteAddress(Constants.LOCALHOST_VALUE, 0); + RpcContext.getContext().setRemoteAddress(LOCALHOST_VALUE, 0); return exporter.getInvoker().invoke(invocation); } } diff --git a/dubbo-rpc/dubbo-rpc-injvm/src/test/java/org/apache/dubbo/rpc/protocol/injvm/InjvmProtocolTest.java b/dubbo-rpc/dubbo-rpc-injvm/src/test/java/org/apache/dubbo/rpc/protocol/injvm/InjvmProtocolTest.java index 5285e92507..cd19b8fcb0 100644 --- a/dubbo-rpc/dubbo-rpc-injvm/src/test/java/org/apache/dubbo/rpc/protocol/injvm/InjvmProtocolTest.java +++ b/dubbo-rpc/dubbo-rpc-injvm/src/test/java/org/apache/dubbo/rpc/protocol/injvm/InjvmProtocolTest.java @@ -32,6 +32,9 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.VERSION_KEY; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; @@ -61,11 +64,11 @@ public class InjvmProtocolTest { @Test public void testLocalProtocol() throws Exception { DemoService service = new DemoServiceImpl(); - Invoker invoker = proxy.getInvoker(service, DemoService.class, URL.valueOf("injvm://127.0.0.1/TestService").addParameter(Constants.INTERFACE_KEY, DemoService.class.getName())); + Invoker invoker = proxy.getInvoker(service, DemoService.class, URL.valueOf("injvm://127.0.0.1/TestService").addParameter(INTERFACE_KEY, DemoService.class.getName())); assertTrue(invoker.isAvailable()); Exporter exporter = protocol.export(invoker); exporters.add(exporter); - service = proxy.getProxy(protocol.refer(DemoService.class, URL.valueOf("injvm://127.0.0.1/TestService").addParameter(Constants.INTERFACE_KEY, DemoService.class.getName()))); + service = proxy.getProxy(protocol.refer(DemoService.class, URL.valueOf("injvm://127.0.0.1/TestService").addParameter(INTERFACE_KEY, DemoService.class.getName()))); assertEquals(service.getSize(new String[]{"", "", ""}), 3); service.invoke("injvm://127.0.0.1/TestService", "invoke"); @@ -78,15 +81,15 @@ public class InjvmProtocolTest { public void testIsInjvmRefer() throws Exception { DemoService service = new DemoServiceImpl(); URL url = URL.valueOf("injvm://127.0.0.1/TestService") - .addParameter(Constants.INTERFACE_KEY, DemoService.class.getName()); + .addParameter(INTERFACE_KEY, DemoService.class.getName()); Exporter exporter = protocol.export(proxy.getInvoker(service, DemoService.class, url)); exporters.add(exporter); url = url.setProtocol("dubbo"); assertTrue(InjvmProtocol.getInjvmProtocol().isInjvmRefer(url)); - url = url.addParameter(Constants.GROUP_KEY, "*") - .addParameter(Constants.VERSION_KEY, "*"); + url = url.addParameter(GROUP_KEY, "*") + .addParameter(VERSION_KEY, "*"); assertTrue(InjvmProtocol.getInjvmProtocol().isInjvmRefer(url)); url = URL.valueOf("fake://127.0.0.1/TestService").addParameter(Constants.SCOPE_KEY, Constants.SCOPE_LOCAL); @@ -103,4 +106,4 @@ public class InjvmProtocolTest { } -} \ No newline at end of file +} diff --git a/dubbo-rpc/dubbo-rpc-redis/src/main/java/org/apache/dubbo/rpc/protocol/redis/RedisProtocol.java b/dubbo-rpc/dubbo-rpc-redis/src/main/java/org/apache/dubbo/rpc/protocol/redis/RedisProtocol.java index f93b444792..5678beb979 100644 --- a/dubbo-rpc/dubbo-rpc-redis/src/main/java/org/apache/dubbo/rpc/protocol/redis/RedisProtocol.java +++ b/dubbo-rpc/dubbo-rpc-redis/src/main/java/org/apache/dubbo/rpc/protocol/redis/RedisProtocol.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.rpc.protocol.redis; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.constants.RemotingConstants; import org.apache.dubbo.common.extension.ExtensionLoader; @@ -46,6 +45,9 @@ import java.net.SocketTimeoutException; import java.util.Map; import java.util.concurrent.TimeoutException; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * RedisProtocol @@ -100,7 +102,7 @@ public class RedisProtocol extends AbstractProtocol { config.setMinEvictableIdleTimeMillis(url.getParameter("min.evictable.idle.time.millis", 0)); } final JedisPool jedisPool = new JedisPool(config, url.getHost(), url.getPort(DEFAULT_PORT), - url.getParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT), + url.getParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT), StringUtils.isBlank(url.getPassword()) ? null : url.getPassword(), url.getParameter("db.index", 0)); final int expiry = url.getParameter("expiry", 0); diff --git a/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/BaseRestServer.java b/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/BaseRestServer.java index 50648e6fb9..f10abdd797 100644 --- a/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/BaseRestServer.java +++ b/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/BaseRestServer.java @@ -22,6 +22,8 @@ import org.apache.dubbo.common.utils.StringUtils; import org.jboss.resteasy.spi.ResteasyDeployment; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; + public abstract class BaseRestServer implements RestServer { @Override @@ -53,7 +55,7 @@ public abstract class BaseRestServer implements RestServer { } protected void loadProviders(String value) { - for (String clazz : Constants.COMMA_SPLIT_PATTERN.split(value)) { + for (String clazz : COMMA_SPLIT_PATTERN.split(value)) { if (!StringUtils.isEmpty(clazz)) { getDeployment().getProviderClasses().add(clazz.trim()); } diff --git a/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/NettyServer.java b/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/NettyServer.java index d8380f54b8..f17f8576fc 100644 --- a/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/NettyServer.java +++ b/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/NettyServer.java @@ -28,6 +28,10 @@ import org.jboss.resteasy.spi.ResteasyDeployment; import java.util.HashMap; import java.util.Map; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_THREADS; +import static org.apache.dubbo.common.constants.CommonConstants.IO_THREADS_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY; + /** * Netty server can't support @Context injection of servlet objects since it's not a servlet container * @@ -46,8 +50,8 @@ public class NettyServer extends BaseRestServer { Map channelOption = new HashMap(); channelOption.put(ChannelOption.SO_KEEPALIVE, url.getParameter(Constants.KEEP_ALIVE_KEY, Constants.DEFAULT_KEEP_ALIVE)); server.setChildChannelOptions(channelOption); - server.setExecutorThreadCount(url.getParameter(Constants.THREADS_KEY, Constants.DEFAULT_THREADS)); - server.setIoWorkerCount(url.getParameter(Constants.IO_THREADS_KEY, RemotingConstants.DEFAULT_IO_THREADS)); + server.setExecutorThreadCount(url.getParameter(THREADS_KEY, DEFAULT_THREADS)); + server.setIoWorkerCount(url.getParameter(IO_THREADS_KEY, RemotingConstants.DEFAULT_IO_THREADS)); server.setMaxRequestSize(url.getParameter(RemotingConstants.PAYLOAD_KEY, RemotingConstants.DEFAULT_PAYLOAD)); server.start(); } diff --git a/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/RestProtocol.java b/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/RestProtocol.java index 4934ca50ba..977bea2daa 100644 --- a/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/RestProtocol.java +++ b/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/RestProtocol.java @@ -52,6 +52,11 @@ import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.TimeUnit; +import static org.apache.dubbo.common.constants.CommonConstants.COMMA_SPLIT_PATTERN; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + public class RestProtocol extends AbstractProxyProtocol { private static final int DEFAULT_PORT = 80; @@ -144,7 +149,7 @@ public class RestProtocol extends AbstractProxyProtocol { connectionMonitor.addConnectionManager(connectionManager); RequestConfig requestConfig = RequestConfig.custom() .setConnectTimeout(url.getParameter(RemotingConstants.CONNECT_TIMEOUT_KEY, RemotingConstants.DEFAULT_CONNECT_TIMEOUT)) - .setSocketTimeout(url.getParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT)) + .setSocketTimeout(url.getParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT)) .build(); SocketConfig socketConfig = SocketConfig.custom() @@ -159,7 +164,7 @@ public class RestProtocol extends AbstractProxyProtocol { HeaderElement he = it.nextElement(); String param = he.getName(); String value = he.getValue(); - if (value != null && param.equalsIgnoreCase(Constants.TIMEOUT_KEY)) { + if (value != null && param.equalsIgnoreCase(TIMEOUT_KEY)) { return Long.parseLong(value) * 1000; } } @@ -175,7 +180,7 @@ public class RestProtocol extends AbstractProxyProtocol { clients.add(client); client.register(RpcContextFilter.class); - for (String clazz : Constants.COMMA_SPLIT_PATTERN.split(url.getParameter(Constants.EXTENSION_KEY, ""))) { + for (String clazz : COMMA_SPLIT_PATTERN.split(url.getParameter(Constants.EXTENSION_KEY, ""))) { if (!StringUtils.isEmpty(clazz)) { try { client.register(Thread.currentThread().getContextClassLoader().loadClass(clazz.trim())); @@ -239,11 +244,11 @@ public class RestProtocol extends AbstractProxyProtocol { protected String getContextPath(URL url) { String contextPath = url.getPath(); if (contextPath != null) { - if (contextPath.equalsIgnoreCase(url.getParameter(Constants.INTERFACE_KEY))) { + if (contextPath.equalsIgnoreCase(url.getParameter(INTERFACE_KEY))) { return ""; } - if (contextPath.endsWith(url.getParameter(Constants.INTERFACE_KEY))) { - contextPath = contextPath.substring(0, contextPath.lastIndexOf(url.getParameter(Constants.INTERFACE_KEY))); + if (contextPath.endsWith(url.getParameter(INTERFACE_KEY))) { + contextPath = contextPath.substring(0, contextPath.lastIndexOf(url.getParameter(INTERFACE_KEY))); } return contextPath.endsWith("/") ? contextPath.substring(0, contextPath.length() - 1) : contextPath; } else { diff --git a/dubbo-rpc/dubbo-rpc-rmi/src/main/java/org/apache/dubbo/rpc/protocol/rmi/RmiProtocol.java b/dubbo-rpc/dubbo-rpc-rmi/src/main/java/org/apache/dubbo/rpc/protocol/rmi/RmiProtocol.java index 63e9fcdfff..13d8cae220 100644 --- a/dubbo-rpc/dubbo-rpc-rmi/src/main/java/org/apache/dubbo/rpc/protocol/rmi/RmiProtocol.java +++ b/dubbo-rpc/dubbo-rpc-rmi/src/main/java/org/apache/dubbo/rpc/protocol/rmi/RmiProtocol.java @@ -31,6 +31,7 @@ import java.io.IOException; import java.net.SocketTimeoutException; import java.rmi.RemoteException; +import static org.apache.dubbo.common.constants.CommonConstants.RELEASE_KEY; import static org.apache.dubbo.common.Version.isRelease263OrHigher; import static org.apache.dubbo.common.Version.isRelease270OrHigher; @@ -82,7 +83,7 @@ public class RmiProtocol extends AbstractProxyProtocol { 2. if the provider version is v2.6.3 or higher, send 'com.alibaba.dubbo.rpc.protocol.rmi.RmiRemoteInvocation'. 3. if the provider version is lower than v2.6.3, does not use customized RemoteInvocation. */ - if (isRelease270OrHigher(url.getParameter(Constants.RELEASE_KEY))) { + if (isRelease270OrHigher(url.getParameter(RELEASE_KEY))) { rmiProxyFactoryBean.setRemoteInvocationFactory((methodInvocation) -> { RemoteInvocation invocation = new RmiRemoteInvocation(methodInvocation); if (invocation != null && isGeneric) { diff --git a/dubbo-rpc/dubbo-rpc-thrift/src/main/java/org/apache/dubbo/rpc/protocol/thrift/ThriftCodec.java b/dubbo-rpc/dubbo-rpc-thrift/src/main/java/org/apache/dubbo/rpc/protocol/thrift/ThriftCodec.java index 93a5900d75..e37fab6a68 100644 --- a/dubbo-rpc/dubbo-rpc-thrift/src/main/java/org/apache/dubbo/rpc/protocol/thrift/ThriftCodec.java +++ b/dubbo-rpc/dubbo-rpc-thrift/src/main/java/org/apache/dubbo/rpc/protocol/thrift/ThriftCodec.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.rpc.protocol.thrift; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.extension.ExtensionLoader; import org.apache.dubbo.common.utils.ClassUtils; import org.apache.dubbo.common.utils.StringUtils; @@ -30,6 +29,7 @@ import org.apache.dubbo.rpc.RpcException; import org.apache.dubbo.rpc.RpcInvocation; import org.apache.dubbo.rpc.RpcResult; import org.apache.dubbo.rpc.protocol.thrift.io.RandomAccessByteArrayOutputStream; + import org.apache.thrift.TApplicationException; import org.apache.thrift.TBase; import org.apache.thrift.TException; @@ -51,6 +51,9 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; import java.util.concurrent.atomic.AtomicInteger; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; + /** * Thrift framed protocol codec. * @@ -181,8 +184,8 @@ public class ThriftCodec implements Codec2 { if (message.type == TMessageType.CALL) { RpcInvocation result = new RpcInvocation(); - result.setAttachment(Constants.INTERFACE_KEY, serviceName); - result.setAttachment(Constants.PATH_KEY, path); + result.setAttachment(INTERFACE_KEY, serviceName); + result.setAttachment(PATH_KEY, path); result.setMethodName(message.name); String argsClassName = ExtensionLoader.getExtensionLoader(ClassNameGenerator.class) @@ -401,11 +404,11 @@ public class ThriftCodec implements Codec2 { int seqId = nextSeqId(); - String serviceName = inv.getAttachment(Constants.INTERFACE_KEY); + String serviceName = inv.getAttachment(INTERFACE_KEY); if (StringUtils.isEmpty(serviceName)) { throw new IllegalArgumentException("Could not find service name in attachment with key " - + Constants.INTERFACE_KEY); + + INTERFACE_KEY); } TMessage message = new TMessage( @@ -499,7 +502,7 @@ public class ThriftCodec implements Codec2 { // service name protocol.writeString(serviceName); // path - protocol.writeString(inv.getAttachment(Constants.PATH_KEY)); + protocol.writeString(inv.getAttachment(PATH_KEY)); // dubbo request id protocol.writeI64(request.getId()); protocol.getTransport().flush(); diff --git a/dubbo-rpc/dubbo-rpc-thrift/src/main/java/org/apache/dubbo/rpc/protocol/thrift/ThriftInvoker.java b/dubbo-rpc/dubbo-rpc-thrift/src/main/java/org/apache/dubbo/rpc/protocol/thrift/ThriftInvoker.java index a6aeba1ebe..8b79c2ac6c 100644 --- a/dubbo-rpc/dubbo-rpc-thrift/src/main/java/org/apache/dubbo/rpc/protocol/thrift/ThriftInvoker.java +++ b/dubbo-rpc/dubbo-rpc-thrift/src/main/java/org/apache/dubbo/rpc/protocol/thrift/ThriftInvoker.java @@ -33,6 +33,13 @@ import org.apache.dubbo.rpc.protocol.AbstractInvoker; import java.util.Set; import java.util.concurrent.locks.ReentrantLock; + +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * @since 2.7.0, use https://github.com/dubbo/dubbo-rpc-native-thrift instead */ @@ -52,9 +59,7 @@ public class ThriftInvoker extends AbstractInvoker { } public ThriftInvoker(Class type, URL url, ExchangeClient[] clients, Set> invokers) { - super(type, url, - new String[]{Constants.INTERFACE_KEY, Constants.GROUP_KEY, - Constants.TOKEN_KEY, Constants.TIMEOUT_KEY}); + super(type, url, new String[]{INTERFACE_KEY, GROUP_KEY, Constants.TOKEN_KEY, TIMEOUT_KEY}); this.clients = clients; this.invokers = invokers; } @@ -68,7 +73,7 @@ public class ThriftInvoker extends AbstractInvoker { methodName = invocation.getMethodName(); - inv.setAttachment(Constants.PATH_KEY, getUrl().getPath()); + inv.setAttachment(PATH_KEY, getUrl().getPath()); // for thrift codec inv.setAttachment(ThriftCodec.PARAMETER_CLASS_NAME_GENERATOR, getUrl().getParameter( @@ -83,8 +88,7 @@ public class ThriftInvoker extends AbstractInvoker { } try { - int timeout = getUrl().getMethodParameter( - methodName, Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); + int timeout = getUrl().getMethodParameter(methodName, TIMEOUT_KEY, DEFAULT_TIMEOUT); RpcContext.getContext().setFuture(null); diff --git a/dubbo-rpc/dubbo-rpc-thrift/src/main/java/org/apache/dubbo/rpc/protocol/thrift/ThriftProtocol.java b/dubbo-rpc/dubbo-rpc-thrift/src/main/java/org/apache/dubbo/rpc/protocol/thrift/ThriftProtocol.java index ec6370938c..d5fc0b3a4b 100644 --- a/dubbo-rpc/dubbo-rpc-thrift/src/main/java/org/apache/dubbo/rpc/protocol/thrift/ThriftProtocol.java +++ b/dubbo-rpc/dubbo-rpc-thrift/src/main/java/org/apache/dubbo/rpc/protocol/thrift/ThriftProtocol.java @@ -43,6 +43,9 @@ import java.util.Set; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; + +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; + /** * @since 2.7.0, use https://github.com/dubbo/dubbo-rpc-native-thrift instead */ @@ -64,7 +67,7 @@ public class ThriftProtocol extends AbstractProtocol { if (msg instanceof Invocation) { Invocation inv = (Invocation) msg; - String path = inv.getAttachments().get(Constants.PATH_KEY); + String path = inv.getAttachments().get(PATH_KEY); String serviceKey = serviceKey(channel.getLocalAddress().getPort(), path, null, null); DubboExporter exporter = (DubboExporter) exporterMap.get(serviceKey); diff --git a/dubbo-rpc/dubbo-rpc-thrift/src/test/java/org/apache/dubbo/rpc/protocol/thrift/ThriftCodecTest.java b/dubbo-rpc/dubbo-rpc-thrift/src/test/java/org/apache/dubbo/rpc/protocol/thrift/ThriftCodecTest.java index a1d5daadea..93421c4bcf 100644 --- a/dubbo-rpc/dubbo-rpc-thrift/src/test/java/org/apache/dubbo/rpc/protocol/thrift/ThriftCodecTest.java +++ b/dubbo-rpc/dubbo-rpc-thrift/src/test/java/org/apache/dubbo/rpc/protocol/thrift/ThriftCodecTest.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.rpc.protocol.thrift; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.remoting.Channel; import org.apache.dubbo.remoting.buffer.ChannelBuffer; @@ -29,6 +28,7 @@ import org.apache.dubbo.rpc.RpcInvocation; import org.apache.dubbo.rpc.RpcResult; import org.apache.dubbo.rpc.gen.thrift.Demo; import org.apache.dubbo.rpc.protocol.thrift.io.RandomAccessByteArrayOutputStream; + import org.apache.thrift.TApplicationException; import org.apache.thrift.protocol.TBinaryProtocol; import org.apache.thrift.protocol.TMessage; @@ -41,6 +41,9 @@ import org.junit.jupiter.api.Test; import java.io.ByteArrayInputStream; +import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY; +import static org.apache.dubbo.common.constants.CommonConstants.PATH_KEY; + public class ThriftCodecTest { private ThriftCodec codec = new ThriftCodec(); @@ -400,10 +403,10 @@ public class ThriftCodecTest { protocol.writeByte(ThriftCodec.VERSION); protocol.writeString( ((RpcInvocation) request.getData()) - .getAttachment(Constants.INTERFACE_KEY)); + .getAttachment(INTERFACE_KEY)); protocol.writeString( ((RpcInvocation) request.getData()) - .getAttachment(Constants.PATH_KEY)); + .getAttachment(PATH_KEY)); protocol.writeI64(request.getId()); protocol.getTransport().flush(); headerLength = bos.size(); @@ -455,8 +458,8 @@ public class ThriftCodecTest { invocation.setParameterTypes(new Class[]{String.class}); - invocation.setAttachment(Constants.INTERFACE_KEY, Demo.Iface.class.getName()); - invocation.setAttachment(Constants.PATH_KEY, Demo.Iface.class.getName()); + invocation.setAttachment(INTERFACE_KEY, Demo.Iface.class.getName()); + invocation.setAttachment(PATH_KEY, Demo.Iface.class.getName()); Request request = new Request(1L); diff --git a/dubbo-rpc/dubbo-rpc-webservice/src/main/java/org/apache/dubbo/rpc/protocol/webservice/WebServiceProtocol.java b/dubbo-rpc/dubbo-rpc-webservice/src/main/java/org/apache/dubbo/rpc/protocol/webservice/WebServiceProtocol.java index 62215aa6d2..928b01c45f 100644 --- a/dubbo-rpc/dubbo-rpc-webservice/src/main/java/org/apache/dubbo/rpc/protocol/webservice/WebServiceProtocol.java +++ b/dubbo-rpc/dubbo-rpc-webservice/src/main/java/org/apache/dubbo/rpc/protocol/webservice/WebServiceProtocol.java @@ -16,7 +16,6 @@ */ package org.apache.dubbo.rpc.protocol.webservice; -import org.apache.dubbo.common.Constants; import org.apache.dubbo.common.URL; import org.apache.dubbo.common.constants.RemotingConstants; import org.apache.dubbo.remoting.http.HttpBinder; @@ -49,6 +48,9 @@ import java.net.SocketTimeoutException; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; +import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_TIMEOUT; +import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY; + /** * WebServiceProtocol. */ @@ -118,7 +120,7 @@ public class WebServiceProtocol extends AbstractProxyProtocol { HTTPConduit conduit = (HTTPConduit) proxy.getConduit(); HTTPClientPolicy policy = new HTTPClientPolicy(); policy.setConnectionTimeout(url.getParameter(RemotingConstants.CONNECT_TIMEOUT_KEY, RemotingConstants.DEFAULT_CONNECT_TIMEOUT)); - policy.setReceiveTimeout(url.getParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT)); + policy.setReceiveTimeout(url.getParameter(TIMEOUT_KEY, DEFAULT_TIMEOUT)); conduit.setClient(policy); return ref; }