diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/SingleRouterChain.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/SingleRouterChain.java index c217bdb0d69..5c6dec6efce 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/SingleRouterChain.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/SingleRouterChain.java @@ -212,7 +212,7 @@ private void printRouterSnapshot(URL url, BitList> availableInvokers, public RouterSnapshotNode buildRouterSnapshot( URL url, BitList> availableInvokers, Invocation invocation) { BitList> resultInvokers = availableInvokers.clone(); - RouterSnapshotNode parentNode = new RouterSnapshotNode("Parent", resultInvokers.clone()); + RouterSnapshotNode parentNode = new RouterSnapshotNode<>("Parent", resultInvokers.clone()); parentNode.setNodeOutputInvokers(resultInvokers.clone()); // 1. route state router @@ -227,7 +227,7 @@ public RouterSnapshotNode buildRouterSnapshot( return parentNode; } - RouterSnapshotNode commonRouterNode = new RouterSnapshotNode("CommonRouter", resultInvokers.clone()); + RouterSnapshotNode commonRouterNode = new RouterSnapshotNode<>("CommonRouter", resultInvokers.clone()); parentNode.appendNode(commonRouterNode); List> commonRouterResult = resultInvokers; @@ -237,7 +237,7 @@ public RouterSnapshotNode buildRouterSnapshot( List> inputInvokers = new ArrayList<>(commonRouterResult); RouterSnapshotNode currentNode = - new RouterSnapshotNode(router.getClass().getSimpleName(), inputInvokers); + new RouterSnapshotNode<>(router.getClass().getSimpleName(), inputInvokers); // append to router node chain commonRouterNode.appendNode(currentNode); 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 a72956054a9..406756ad03d 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 @@ -223,7 +223,7 @@ private boolean isDeprecatedConditionMatch(Set conditionKeys, URL url) { } private Set genConditionKeys() { - Set conditionKeys = new HashSet(); + Set conditionKeys = new HashSet<>(); conditionKeys.add(CATEGORY_KEY); conditionKeys.add(Constants.CHECK_KEY); conditionKeys.add(DYNAMIC_KEY); 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 fb777ef03a8..82421e460fe 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 @@ -46,8 +46,7 @@ public class ConsistentHashLoadBalance extends AbstractLoadBalance { */ public static final String HASH_ARGUMENTS = "hash.arguments"; - private final ConcurrentMap> selectors = - new ConcurrentHashMap>(); + private final ConcurrentMap> selectors = new ConcurrentHashMap<>(); @SuppressWarnings("unchecked") @Override @@ -75,7 +74,7 @@ private static final class ConsistentHashSelector { private final int[] argumentIndex; ConsistentHashSelector(List> invokers, String methodName, int identityHashCode) { - this.virtualInvokers = new TreeMap>(); + this.virtualInvokers = new TreeMap<>(); this.identityHashCode = identityHashCode; URL url = invokers.get(0).getUrl(); this.replicaNumber = url.getMethodParameter(methodName, HASH_NODES, 160); diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/merger/MapMerger.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/merger/MapMerger.java index eaa863ed640..dca9c34b25d 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/merger/MapMerger.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/merger/MapMerger.java @@ -32,7 +32,7 @@ public class MapMerger implements Merger> { if (ArrayUtils.isEmpty(items)) { return Collections.emptyMap(); } - Map result = new HashMap(); + Map result = new HashMap<>(); Stream.of(items).filter(Objects::nonNull).forEach(result::putAll); return result; } diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/merger/MergerFactory.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/merger/MergerFactory.java index 3aa07f2ad3b..0ac9949470f 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/merger/MergerFactory.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/merger/MergerFactory.java @@ -36,7 +36,7 @@ public class MergerFactory implements ScopeModelAware { private static final ErrorTypeAwareLogger logger = LoggerFactory.getErrorTypeAwareLogger(MergerFactory.class); - private ConcurrentMap, Merger> MERGER_CACHE = new ConcurrentHashMap, Merger>(); + private ConcurrentMap, Merger> MERGER_CACHE = new ConcurrentHashMap<>(); private ScopeModel scopeModel; @Override diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/merger/SetMerger.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/merger/SetMerger.java index 5b0dc5e0c3f..5b77177cd0a 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/merger/SetMerger.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/merger/SetMerger.java @@ -32,7 +32,7 @@ public Set merge(Set... items) { if (ArrayUtils.isEmpty(items)) { return Collections.emptySet(); } - Set result = new HashSet(); + Set result = new HashSet<>(); Stream.of(items).filter(Objects::nonNull).forEach(result::addAll); return result; } diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/condition/ConditionStateRouterFactory.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/condition/ConditionStateRouterFactory.java index 06a40e81dfa..c18f674c3ea 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/condition/ConditionStateRouterFactory.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/condition/ConditionStateRouterFactory.java @@ -30,6 +30,6 @@ public class ConditionStateRouterFactory extends CacheableStateRouterFactory { @Override protected StateRouter createRouter(Class interfaceClass, URL url) { - return new ConditionStateRouter(url); + return new ConditionStateRouter<>(url); } } diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/condition/config/ServiceStateRouterFactory.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/condition/config/ServiceStateRouterFactory.java index ecc536953b3..d35baf6ee38 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/condition/config/ServiceStateRouterFactory.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/condition/config/ServiceStateRouterFactory.java @@ -32,6 +32,6 @@ public class ServiceStateRouterFactory extends CacheableStateRouterFactory { @Override protected StateRouter createRouter(Class interfaceClass, URL url) { - return new ServiceStateRouter(url); + return new ServiceStateRouter<>(url); } } diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/mesh/route/MeshRuleCache.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/mesh/route/MeshRuleCache.java index 098b9bd4cf0..a53e47280a2 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/mesh/route/MeshRuleCache.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/mesh/route/MeshRuleCache.java @@ -136,7 +136,7 @@ public static MeshRuleCache build( Collections.unmodifiableMap(totalSubsetMap), unmatchedInvokers); } else { - return new MeshRuleCache( + return new MeshRuleCache<>( Collections.emptyList(), Collections.emptyMap(), Collections.emptyMap(), invokers); } } diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/mock/MockStateRouterFactory.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/mock/MockStateRouterFactory.java index 9bff80a573a..d81b578ae3c 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/mock/MockStateRouterFactory.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/mock/MockStateRouterFactory.java @@ -30,6 +30,6 @@ public class MockStateRouterFactory implements StateRouterFactory { @Override public StateRouter getRouter(Class interfaceClass, URL url) { - return new MockInvokersSelector(url); + return new MockInvokersSelector<>(url); } } diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/tag/TagStateRouterFactory.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/tag/TagStateRouterFactory.java index b05e09e7032..de38ff8f7fd 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/tag/TagStateRouterFactory.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/tag/TagStateRouterFactory.java @@ -31,6 +31,6 @@ public class TagStateRouterFactory extends CacheableStateRouterFactory { @Override protected StateRouter createRouter(Class interfaceClass, URL url) { - return new TagStateRouter(url); + return new TagStateRouter<>(url); } } diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/FailoverClusterInvoker.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/FailoverClusterInvoker.java index a840773c51c..1fc3cadcc11 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/FailoverClusterInvoker.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/FailoverClusterInvoker.java @@ -63,8 +63,8 @@ public Result doInvoke(Invocation invocation, final List> invokers, L int len = calculateInvokeTimes(methodName); // retry loop. RpcException le = null; // last exception. - List> invoked = new ArrayList>(copyInvokers.size()); // invoked invokers. - Set providers = new HashSet(len); + List> invoked = new ArrayList<>(copyInvokers.size()); // invoked invokers. + Set providers = new HashSet<>(len); for (int i = 0; i < len; i++) { // Reselect before retry to avoid a change of candidate `invokers`. // NOTE: if `invokers` changed, then `invoked` also lose accuracy. diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/MergeableCluster.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/MergeableCluster.java index 9bc030729f6..c219745b38f 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/MergeableCluster.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/MergeableCluster.java @@ -26,6 +26,6 @@ public class MergeableCluster extends AbstractCluster { @Override public AbstractClusterInvoker doJoin(Directory directory) throws RpcException { - return new MergeableClusterInvoker(directory); + return new MergeableClusterInvoker<>(directory); } } diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/registry/ZoneAwareCluster.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/registry/ZoneAwareCluster.java index a1cbf14e60f..10a12979838 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/registry/ZoneAwareCluster.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/registry/ZoneAwareCluster.java @@ -27,6 +27,6 @@ public class ZoneAwareCluster extends AbstractCluster { @Override protected AbstractClusterInvoker doJoin(Directory directory) throws RpcException { - return new ZoneAwareClusterInvoker(directory); + return new ZoneAwareClusterInvoker<>(directory); } } diff --git a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/wrapper/MockClusterWrapper.java b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/wrapper/MockClusterWrapper.java index 0836e48e258..0a2a2e73881 100644 --- a/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/wrapper/MockClusterWrapper.java +++ b/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/wrapper/MockClusterWrapper.java @@ -35,7 +35,7 @@ public MockClusterWrapper(Cluster cluster) { @Override public Invoker join(Directory directory, boolean buildFilterChain) throws RpcException { - return new MockClusterInvoker(directory, this.cluster.join(directory, buildFilterChain)); + return new MockClusterInvoker<>(directory, this.cluster.join(directory, buildFilterChain)); } public Cluster getCluster() { diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/Version.java b/dubbo-common/src/main/java/org/apache/dubbo/common/Version.java index a33be42ddcc..90f2b707045 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/Version.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/Version.java @@ -60,7 +60,7 @@ public final class Version { public static final int LOWEST_VERSION_FOR_RESPONSE_ATTACHMENT = 2000200; // 2.0.2 public static final int HIGHEST_PROTOCOL_VERSION = 2009900; // 2.0.99 - private static final Map VERSION2INT = new HashMap(); + private static final Map VERSION2INT = new HashMap<>(); static { // get dubbo version and last commit id diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/beanutil/JavaBeanSerializeUtil.java b/dubbo-common/src/main/java/org/apache/dubbo/common/beanutil/JavaBeanSerializeUtil.java index 6a3afbde425..0149cc9ee7c 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/beanutil/JavaBeanSerializeUtil.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/beanutil/JavaBeanSerializeUtil.java @@ -35,7 +35,7 @@ public final class JavaBeanSerializeUtil { private static final Logger logger = LoggerFactory.getLogger(JavaBeanSerializeUtil.class); - private static final Map> TYPES = new HashMap>(); + private static final Map> TYPES = new HashMap<>(); private static final String ARRAY_PREFIX = "["; private static final String REFERENCE_TYPE_PREFIX = "L"; private static final String REFERENCE_TYPE_SUFFIX = ";"; @@ -72,7 +72,7 @@ public static JavaBeanDescriptor serialize(Object obj, JavaBeanAccessor accessor if (obj instanceof JavaBeanDescriptor) { return (JavaBeanDescriptor) obj; } - IdentityHashMap cache = new IdentityHashMap(); + IdentityHashMap cache = new IdentityHashMap<>(); return createDescriptorIfAbsent(obj, accessor, cache); } @@ -209,7 +209,7 @@ public static Object deserialize(JavaBeanDescriptor beanDescriptor, ClassLoader if (beanDescriptor == null) { return null; } - IdentityHashMap cache = new IdentityHashMap(); + IdentityHashMap cache = new IdentityHashMap<>(); Object result = instantiateForDeserialize(beanDescriptor, loader, cache); deserializeInternal(result, beanDescriptor, loader, cache); return result; diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/bytecode/Mixin.java b/dubbo-common/src/main/java/org/apache/dubbo/common/bytecode/Mixin.java index 81cadc0d76a..4a6e37c8839 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/bytecode/Mixin.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/bytecode/Mixin.java @@ -120,7 +120,7 @@ public static Mixin mixin(Class[] ics, Class[] dcs, ClassLoader cl) { Class neighbor = null; // impl methods. - Set worked = new HashSet(); + Set worked = new HashSet<>(); for (int i = 0; i < ics.length; i++) { if (!Modifier.isPublic(ics[i].getModifiers())) { String npkg = ics[i].getPackage().getName(); diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/bytecode/Wrapper.java b/dubbo-common/src/main/java/org/apache/dubbo/common/bytecode/Wrapper.java index b42d5e286fb..b68e1ab5e14 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/bytecode/Wrapper.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/bytecode/Wrapper.java @@ -42,8 +42,8 @@ * Wrapper. */ public abstract class Wrapper { - private static final ConcurrentMap, Wrapper> WRAPPER_MAP = - new ConcurrentHashMap, Wrapper>(); // class wrapper map + // class wrapper map + private static final ConcurrentMap, Wrapper> WRAPPER_MAP = new ConcurrentHashMap<>(); private static final String[] EMPTY_STRING_ARRAY = new String[0]; private static final String[] OBJECT_METHODS = new String[] {"getClass", "hashCode", "toString", "equals"}; private static final Wrapper OBJECT_WRAPPER = new Wrapper() { diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/compiler/support/ClassUtils.java b/dubbo-common/src/main/java/org/apache/dubbo/common/compiler/support/ClassUtils.java index d2c39053d60..aba14f4cea5 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/compiler/support/ClassUtils.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/compiler/support/ClassUtils.java @@ -392,7 +392,7 @@ public static String getInitCode(Class type) { } public static Map toMap(Map.Entry[] entries) { - Map map = new HashMap(); + Map map = new HashMap<>(); if (entries != null && entries.length > 0) { for (Map.Entry entry : entries) { map.put(entry.getKey(), entry.getValue()); diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/threadlocal/InternalThreadLocalMap.java b/dubbo-common/src/main/java/org/apache/dubbo/common/threadlocal/InternalThreadLocalMap.java index 58b269a4f3e..88a4fc74f40 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/threadlocal/InternalThreadLocalMap.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/threadlocal/InternalThreadLocalMap.java @@ -28,7 +28,7 @@ public final class InternalThreadLocalMap { private Object[] indexedVariables; - private static ThreadLocal slowThreadLocalMap = new ThreadLocal(); + private static ThreadLocal slowThreadLocalMap = new ThreadLocal<>(); private static final AtomicInteger NEXT_INDEX = new AtomicInteger(); diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/timer/HashedWheelTimer.java b/dubbo-common/src/main/java/org/apache/dubbo/common/timer/HashedWheelTimer.java index 29207a1b3ee..8b6d57589ca 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/timer/HashedWheelTimer.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/timer/HashedWheelTimer.java @@ -428,7 +428,7 @@ private static void reportTooManyInstances() { } private final class Worker implements Runnable { - private final Set unprocessedTimeouts = new HashSet(); + private final Set unprocessedTimeouts = new HashSet<>(); private long tick; diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/CIDRUtils.java b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/CIDRUtils.java index 5d9dc8bcbdf..5f3632af7af 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/CIDRUtils.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/CIDRUtils.java @@ -98,7 +98,7 @@ private void calculate() throws UnknownHostException { private byte[] toBytes(byte[] array, int targetSize) { int counter = 0; - List newArr = new ArrayList(); + List newArr = new ArrayList<>(); while (counter < targetSize && (array.length - 1 - counter >= 0)) { newArr.add(0, array[array.length - 1 - counter]); counter++; 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 f6754ad0649..8c12944ef38 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 @@ -87,7 +87,7 @@ public static boolean isDefault(String value) { */ public static List mergeValues( ExtensionDirector extensionDirector, Class type, String cfg, List def) { - List defaults = new ArrayList(); + List defaults = new ArrayList<>(); if (def != null) { for (String name : def) { if (extensionDirector.getExtensionLoader(type).hasExtension(name)) { @@ -96,7 +96,7 @@ public static List mergeValues( } } - List names = new ArrayList(); + List names = new ArrayList<>(); // add initial values String[] configs = (cfg == null || cfg.trim().length() == 0) ? new String[0] : COMMA_SPLIT_PATTERN.split(cfg); diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/IOUtils.java b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/IOUtils.java index 0578feed909..c2ee5587b3b 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/IOUtils.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/IOUtils.java @@ -179,7 +179,7 @@ public static String[] readLines(File file) throws IOException { * @throws IOException If an I/O error occurs */ public static String[] readLines(InputStream is) throws IOException { - List lines = new ArrayList(); + List lines = new ArrayList<>(); try (BufferedReader reader = new BufferedReader(new InputStreamReader(is))) { String line; while ((line = reader.readLine()) != null) { diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/Stack.java b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/Stack.java index 13e7ae4e7d4..38f274d98f8 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/Stack.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/Stack.java @@ -26,7 +26,7 @@ public class Stack { private int mSize = 0; - private final List mElements = new ArrayList(); + private final List mElements = new ArrayList<>(); public Stack() {} 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 2b86d0e256f..74786e8a2e1 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 @@ -878,7 +878,7 @@ public static String join(final Object[] array, final char delimiter, final int */ private static Map parseKeyValuePair(String str, String itemSeparator) { String[] tmp = str.split(itemSeparator); - Map map = new HashMap(tmp.length); + Map map = new HashMap<>(tmp.length); for (int i = 0; i < tmp.length; i++) { Matcher matcher = KVP_PATTERN.matcher(tmp[i]); if (!matcher.matches()) { @@ -902,7 +902,7 @@ public static String getQueryStringValue(String qs, String key) { */ public static Map parseQueryString(String qs) { if (isEmpty(qs)) { - return new HashMap(); + return new HashMap<>(); } return parseKeyValuePair(qs, "\\&"); } 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 ec1745e431f..89e6b52b8d6 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 @@ -181,7 +181,7 @@ public static List parseURLs(String address, Map defaults) throw new IllegalArgumentException( "Addresses is not allowed to be empty, please re-enter."); // here won't be empty } - List registries = new ArrayList(); + List registries = new ArrayList<>(); for (String addr : addresses) { registries.add(parseURL(addr, defaults)); } diff --git a/dubbo-common/src/main/java/org/apache/dubbo/config/AbstractInterfaceConfig.java b/dubbo-common/src/main/java/org/apache/dubbo/config/AbstractInterfaceConfig.java index 78b85744c7e..368f8f56ecb 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/config/AbstractInterfaceConfig.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/config/AbstractInterfaceConfig.java @@ -221,7 +221,7 @@ public AbstractInterfaceConfig(ModuleModel moduleModel) { /** * The url of the reference service */ - protected final transient List urls = new ArrayList(); + protected final transient List urls = new ArrayList<>(); @Transient public List getExportedUrls() { diff --git a/dubbo-common/src/main/java/org/apache/dubbo/config/ModuleConfig.java b/dubbo-common/src/main/java/org/apache/dubbo/config/ModuleConfig.java index af6d99cf323..7126d64ef4b 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/config/ModuleConfig.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/config/ModuleConfig.java @@ -186,7 +186,7 @@ public RegistryConfig getRegistry() { } public void setRegistry(RegistryConfig registry) { - List registries = new ArrayList(1); + List registries = new ArrayList<>(1); registries.add(registry); this.registries = registries; } diff --git a/dubbo-common/src/main/java/org/apache/dubbo/metadata/definition/util/ClassUtils.java b/dubbo-common/src/main/java/org/apache/dubbo/metadata/definition/util/ClassUtils.java index 1115c451b20..b7441b76b06 100755 --- a/dubbo-common/src/main/java/org/apache/dubbo/metadata/definition/util/ClassUtils.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/metadata/definition/util/ClassUtils.java @@ -96,7 +96,7 @@ public static List getNonStaticFields(final Class clazz) { * @return methods list */ public static List getPublicNonStaticMethods(final Class clazz) { - List result = new ArrayList(); + List result = new ArrayList<>(); Method[] methods = clazz.getMethods(); for (Method method : methods) { diff --git a/dubbo-common/src/main/java/org/apache/dubbo/rpc/model/ProviderModel.java b/dubbo-common/src/main/java/org/apache/dubbo/rpc/model/ProviderModel.java index bb1f0ed8a00..a509506ec51 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/rpc/model/ProviderModel.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/rpc/model/ProviderModel.java @@ -135,7 +135,7 @@ public void setRegistryUrl(URL registryUrl) { } public List getAllMethodModels() { - List result = new ArrayList(); + List result = new ArrayList<>(); for (List models : methods.values()) { result.addAll(models); } 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 05a9c25d52d..eba2fa5613a 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 @@ -30,7 +30,7 @@ @Deprecated public abstract class AbstractCacheFactory implements CacheFactory { - private final ConcurrentMap caches = new ConcurrentHashMap(); + private final ConcurrentMap caches = new ConcurrentHashMap<>(); @Override public Cache getCache(URL url, Invocation invocation) { diff --git a/dubbo-compatible/src/main/java/com/alibaba/dubbo/config/ServiceConfig.java b/dubbo-compatible/src/main/java/com/alibaba/dubbo/config/ServiceConfig.java index fbd752f3582..58ad1e779ce 100644 --- a/dubbo-compatible/src/main/java/com/alibaba/dubbo/config/ServiceConfig.java +++ b/dubbo-compatible/src/main/java/com/alibaba/dubbo/config/ServiceConfig.java @@ -86,7 +86,7 @@ private static List convertProviderToProtocol(List protocols = new ArrayList(providers.size()); + List protocols = new ArrayList<>(providers.size()); for (ProviderConfig provider : providers) { protocols.add(convertProviderToProtocol(provider)); } diff --git a/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/Page.java b/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/Page.java index 24042939a80..387723e82fe 100644 --- a/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/Page.java +++ b/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/Page.java @@ -57,8 +57,8 @@ public Page(String navigation, String title, List columns, List> stringToList(String str) { - List> rows = new ArrayList>(); - List row = new ArrayList(); + List> rows = new ArrayList<>(); + List row = new ArrayList<>(); row.add(str); rows.add(row); return rows; diff --git a/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/PageServlet.java b/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/PageServlet.java index 25486c07edb..f9cf0fb3fa7 100644 --- a/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/PageServlet.java +++ b/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/PageServlet.java @@ -49,8 +49,8 @@ public class PageServlet extends HttpServlet { private static final long serialVersionUID = -8370312705453328501L; private static PageServlet INSTANCE; protected final Random random = new Random(); - protected final Map pages = new ConcurrentHashMap(); - protected final List menus = new ArrayList(); + protected final Map pages = new ConcurrentHashMap<>(); + protected final List menus = new ArrayList<>(); public static PageServlet getInstance() { return INSTANCE; diff --git a/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/ResourceFilter.java b/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/ResourceFilter.java index 62f3da3d8e4..981508e4aeb 100644 --- a/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/ResourceFilter.java +++ b/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/ResourceFilter.java @@ -46,7 +46,7 @@ public class ResourceFilter implements Filter { private final long start = System.currentTimeMillis(); - private final List resources = new ArrayList(); + private final List resources = new ArrayList<>(); public void init(FilterConfig filterConfig) throws ServletException { String config = filterConfig.getInitParameter("resources"); diff --git a/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/pages/HomePageHandler.java b/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/pages/HomePageHandler.java index 306706c22cc..0556a55a55b 100644 --- a/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/pages/HomePageHandler.java +++ b/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/pages/HomePageHandler.java @@ -35,11 +35,11 @@ public class HomePageHandler implements PageHandler { @Override public Page handle(URL url) { - List> rows = new ArrayList>(); + List> rows = new ArrayList<>(); for (PageHandler handler : PageServlet.getInstance().getMenus()) { String uri = ExtensionLoader.getExtensionLoader(PageHandler.class).getExtensionName(handler); Menu menu = handler.getClass().getAnnotation(Menu.class); - List row = new ArrayList(); + List row = new ArrayList<>(); row.add("" + menu.name() + ""); row.add(menu.desc()); rows.add(row); diff --git a/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/pages/LogPageHandler.java b/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/pages/LogPageHandler.java index ee9f3670d53..cc5a5b3ec0c 100644 --- a/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/pages/LogPageHandler.java +++ b/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/pages/LogPageHandler.java @@ -97,8 +97,8 @@ public Page handle(URL url) { } } Level level = LogManager.getRootLogger().getLevel(); - List> rows = new ArrayList>(); - List row = new ArrayList(); + List> rows = new ArrayList<>(); + List row = new ArrayList<>(); row.add(content); rows.add(row); return new Page( diff --git a/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/pages/StatusPageHandler.java b/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/pages/StatusPageHandler.java index f0fdb34a2ad..7a6b762309b 100644 --- a/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/pages/StatusPageHandler.java +++ b/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/pages/StatusPageHandler.java @@ -40,14 +40,14 @@ public class StatusPageHandler implements PageHandler { @Override public Page handle(URL url) { - List> rows = new ArrayList>(); + List> rows = new ArrayList<>(); Set names = ExtensionLoader.getExtensionLoader(StatusChecker.class).getSupportedExtensions(); - Map statuses = new HashMap(); + Map statuses = new HashMap<>(); for (String name : names) { StatusChecker checker = ExtensionLoader.getExtensionLoader(StatusChecker.class).getExtension(name); - List row = new ArrayList(); + List row = new ArrayList<>(); row.add(name); Status status = checker.check(); if (status != null && !Status.Level.UNKNOWN.equals(status.getLevel())) { @@ -61,7 +61,7 @@ public Page handle(URL url) { if ("status".equals(url.getPath())) { return new Page("", "", "", status.getLevel().toString()); } else { - List row = new ArrayList(); + List row = new ArrayList<>(); row.add("summary"); row.add(getLevelHtml(status.getLevel())); row.add("summary"); diff --git a/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/pages/SystemPageHandler.java b/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/pages/SystemPageHandler.java index 84c3e9439a2..2eebd49702e 100644 --- a/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/pages/SystemPageHandler.java +++ b/dubbo-compatible/src/main/java/com/alibaba/dubbo/container/page/pages/SystemPageHandler.java @@ -46,27 +46,27 @@ public class SystemPageHandler implements PageHandler { @Override public Page handle(URL url) { - List> rows = new ArrayList>(); + List> rows = new ArrayList<>(); List row; - row = new ArrayList(); + row = new ArrayList<>(); row.add("Version"); row.add(Version.getVersion(SystemPageHandler.class, "2.0.0")); rows.add(row); - row = new ArrayList(); + row = new ArrayList<>(); row.add("Host"); String address = NetUtils.getLocalHost(); row.add(NetUtils.getHostName(address) + "/" + address); rows.add(row); - row = new ArrayList(); + row = new ArrayList<>(); row.add("OS"); row.add(SystemPropertyConfigUtils.getSystemProperty(CommonConstants.SystemProperty.SYSTEM_OS_NAME) + " " + SystemPropertyConfigUtils.getSystemProperty(CommonConstants.SystemProperty.SYSTEM_OS_VERSION)); rows.add(row); - row = new ArrayList(); + row = new ArrayList<>(); row.add("JVM"); row.add(SystemPropertyConfigUtils.getSystemProperty(CommonConstants.SystemProperty.JAVA_RUNTIME_NAME) + " " + SystemPropertyConfigUtils.getSystemProperty(CommonConstants.SystemProperty.JAVA_RUNTIME_VERSION) @@ -76,24 +76,24 @@ public Page handle(URL url) { + SystemPropertyConfigUtils.getSystemProperty(CommonConstants.SystemProperty.JAVA_VM_INFO, "")); rows.add(row); - row = new ArrayList(); + row = new ArrayList<>(); row.add("CPU"); row.add(SystemPropertyConfigUtils.getSystemProperty(CommonConstants.SystemProperty.OS_ARCH, "") + ", " + String.valueOf(Runtime.getRuntime().availableProcessors()) + " cores"); rows.add(row); - row = new ArrayList(); + row = new ArrayList<>(); row.add("Locale"); row.add(Locale.getDefault().toString() + "/" + SystemPropertyConfigUtils.getSystemProperty(CommonConstants.SystemProperty.SYSTEM_FILE_ENCODING)); rows.add(row); - row = new ArrayList(); + row = new ArrayList<>(); row.add("Uptime"); row.add(formatUptime(ManagementFactory.getRuntimeMXBean().getUptime())); rows.add(row); - row = new ArrayList(); + row = new ArrayList<>(); row.add("Time"); row.add(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS Z").format(new Date())); rows.add(row); diff --git a/dubbo-compatible/src/main/java/com/alibaba/dubbo/rpc/RpcContext.java b/dubbo-compatible/src/main/java/com/alibaba/dubbo/rpc/RpcContext.java index 6f1b383e629..0f19232bca9 100644 --- a/dubbo-compatible/src/main/java/com/alibaba/dubbo/rpc/RpcContext.java +++ b/dubbo-compatible/src/main/java/com/alibaba/dubbo/rpc/RpcContext.java @@ -353,7 +353,7 @@ public Future asyncCall(Callable callable) { final T o = callable.call(); // local invoke will return directly if (o != null) { - FutureTask f = new FutureTask(new Callable() { + FutureTask f = new FutureTask<>(new Callable() { @Override public T call() throws Exception { return o; diff --git a/dubbo-compatible/src/main/java/com/alibaba/dubbo/rpc/RpcInvocation.java b/dubbo-compatible/src/main/java/com/alibaba/dubbo/rpc/RpcInvocation.java index d9bc2dd6627..2a741489d09 100644 --- a/dubbo-compatible/src/main/java/com/alibaba/dubbo/rpc/RpcInvocation.java +++ b/dubbo-compatible/src/main/java/com/alibaba/dubbo/rpc/RpcInvocation.java @@ -162,14 +162,14 @@ public void setAttachments(Map attachments) { public void setAttachment(String key, String value) { if (attachments == null) { - attachments = new HashMap(); + attachments = new HashMap<>(); } attachments.put(key, value); } public void setAttachmentIfAbsent(String key, String value) { if (attachments == null) { - attachments = new HashMap(); + attachments = new HashMap<>(); } if (!attachments.containsKey(key)) { attachments.put(key, value); @@ -181,7 +181,7 @@ public void addAttachments(Map attachments) { return; } if (this.attachments == null) { - this.attachments = new HashMap(); + this.attachments = new HashMap<>(); } this.attachments.putAll(attachments); } 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 cca118bbfa6..c14d6697675 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 @@ -349,6 +349,7 @@ protected synchronized void init(boolean check) { if (CommonConstants.NATIVE_STUB.equals(getProxy())) { serviceDescriptor = StubSuppliers.getServiceDescriptor(interfaceName); repository.registerService(serviceDescriptor); + setInterface(serviceDescriptor.getInterfaceName()); } else { serviceDescriptor = repository.registerService(interfaceClass); } 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 4b13e2dcfca..53bf3c84e95 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 @@ -131,7 +131,7 @@ public class ServiceConfig extends ServiceConfigBase { /** * A random port cache, the different protocols who have no port specified have different random port */ - private static final Map RANDOM_PORT_MAP = new HashMap(); + private static final Map RANDOM_PORT_MAP = new HashMap<>(); private Protocol protocolSPI; @@ -671,7 +671,7 @@ private void processServiceExecutor(URL url) { private Map buildAttributes(ProtocolConfig protocolConfig) { - Map map = new HashMap(); + Map map = new HashMap<>(); map.put(SIDE_KEY, PROVIDER_SIDE); // append params with basic configs, diff --git a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/utils/ConfigValidationUtils.java b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/utils/ConfigValidationUtils.java index 810e862cd34..c1dd4105d8f 100644 --- a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/utils/ConfigValidationUtils.java +++ b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/utils/ConfigValidationUtils.java @@ -210,7 +210,7 @@ public static List loadRegistries(AbstractInterfaceConfig interfaceConfig, address = ANYHOST_VALUE; } if (!RegistryConfig.NO_AVAILABLE.equalsIgnoreCase(address)) { - Map map = new HashMap(); + Map map = new HashMap<>(); AbstractConfig.appendParameters(map, application); AbstractConfig.appendParameters(map, config); map.put(PATH_KEY, RegistryService.class.getName()); @@ -313,7 +313,7 @@ private static boolean registryNotExists(URL registryURL, List registryList } public static URL loadMonitor(AbstractInterfaceConfig interfaceConfig, URL registryURL) { - Map map = new HashMap(); + Map map = new HashMap<>(); map.put(INTERFACE_KEY, MonitorService.class.getName()); AbstractInterfaceConfig.appendRuntimeParameters(map); // set ip diff --git a/dubbo-config/dubbo-config-spring/pom.xml b/dubbo-config/dubbo-config-spring/pom.xml index a09bb6ab894..0c14921e6e3 100644 --- a/dubbo-config/dubbo-config-spring/pom.xml +++ b/dubbo-config/dubbo-config-spring/pom.xml @@ -74,7 +74,7 @@ org.aspectj aspectjweaver - 1.9.21.2 + 1.9.22 test diff --git a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/AbstractAnnotationBeanPostProcessor.java b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/AbstractAnnotationBeanPostProcessor.java index 37594fffe23..554473f5675 100644 --- a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/AbstractAnnotationBeanPostProcessor.java +++ b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/AbstractAnnotationBeanPostProcessor.java @@ -78,8 +78,7 @@ public abstract class AbstractAnnotationBeanPostProcessor private final Class[] annotationTypes; private final ConcurrentMap - injectionMetadataCache = new ConcurrentHashMap< - String, AbstractAnnotationBeanPostProcessor.AnnotatedInjectionMetadata>(CACHE_SIZE); + injectionMetadataCache = new ConcurrentHashMap<>(CACHE_SIZE); private ConfigurableListableBeanFactory beanFactory; @@ -98,7 +97,7 @@ public AbstractAnnotationBeanPostProcessor(Class... annota } private static Collection combine(Collection... elements) { - List allElements = new ArrayList(); + List allElements = new ArrayList<>(); for (Collection e : elements) { allElements.addAll(e); } diff --git a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/util/AnnotationUtils.java b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/util/AnnotationUtils.java index 713a1918356..02771ca1217 100644 --- a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/util/AnnotationUtils.java +++ b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/util/AnnotationUtils.java @@ -87,7 +87,7 @@ public static Map getAttributes( Set ignoreAttributeNamesSet = new HashSet<>(Arrays.asList(ignoreAttributeNames)); - Map actualAttributes = new LinkedHashMap(); + Map actualAttributes = new LinkedHashMap<>(); for (Map.Entry annotationAttribute : annotationAttributes.entrySet()) { @@ -143,7 +143,7 @@ public static Map getAttributes( if (ignoreDefaultValue && !isEmpty(annotationAttributes)) { - List attributeNamesToIgnore = new LinkedList(asList(ignoreAttributeNames)); + List attributeNamesToIgnore = new LinkedList<>(asList(ignoreAttributeNames)); for (Map.Entry annotationAttribute : annotationAttributes.entrySet()) { String attributeName = annotationAttribute.getKey(); diff --git a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/util/PropertySourcesUtils.java b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/util/PropertySourcesUtils.java index 15e164b5eee..8a5eff73e5e 100644 --- a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/util/PropertySourcesUtils.java +++ b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/util/PropertySourcesUtils.java @@ -103,7 +103,7 @@ public static Map getSubProperties(PropertySources propertySourc public static Map getSubProperties( PropertySources propertySources, PropertyResolver propertyResolver, String prefix) { - Map subProperties = new LinkedHashMap(); + Map subProperties = new LinkedHashMap<>(); String normalizedPrefix = normalizePrefix(prefix); diff --git a/dubbo-configcenter/dubbo-configcenter-nacos/pom.xml b/dubbo-configcenter/dubbo-configcenter-nacos/pom.xml index 4d8eb91d364..991a961c5ff 100644 --- a/dubbo-configcenter/dubbo-configcenter-nacos/pom.xml +++ b/dubbo-configcenter/dubbo-configcenter-nacos/pom.xml @@ -1,19 +1,19 @@ 4.0.0 diff --git a/dubbo-demo/dubbo-demo-annotation/dubbo-demo-annotation-consumer/pom.xml b/dubbo-demo/dubbo-demo-annotation/dubbo-demo-annotation-consumer/pom.xml index b66dadc983b..85b651833c1 100644 --- a/dubbo-demo/dubbo-demo-annotation/dubbo-demo-annotation-consumer/pom.xml +++ b/dubbo-demo/dubbo-demo-annotation/dubbo-demo-annotation-consumer/pom.xml @@ -1,21 +1,19 @@ 4.0.0 diff --git a/dubbo-demo/dubbo-demo-annotation/pom.xml b/dubbo-demo/dubbo-demo-annotation/pom.xml index d881d55fdce..8e82740451a 100644 --- a/dubbo-demo/dubbo-demo-annotation/pom.xml +++ b/dubbo-demo/dubbo-demo-annotation/pom.xml @@ -1,21 +1,19 @@ 4.0.0 diff --git a/dubbo-demo/dubbo-demo-api/dubbo-demo-api-consumer/pom.xml b/dubbo-demo/dubbo-demo-api/dubbo-demo-api-consumer/pom.xml index bfe5d422ce1..ce9ef312488 100644 --- a/dubbo-demo/dubbo-demo-api/dubbo-demo-api-consumer/pom.xml +++ b/dubbo-demo/dubbo-demo-api/dubbo-demo-api-consumer/pom.xml @@ -1,21 +1,19 @@ 4.0.0 diff --git a/dubbo-demo/dubbo-demo-api/pom.xml b/dubbo-demo/dubbo-demo-api/pom.xml index deaf2b0dbd8..33ed7504dbd 100644 --- a/dubbo-demo/dubbo-demo-api/pom.xml +++ b/dubbo-demo/dubbo-demo-api/pom.xml @@ -1,21 +1,19 @@ 4.0.0 diff --git a/dubbo-demo/dubbo-demo-generic-call/pom.xml b/dubbo-demo/dubbo-demo-generic-call/pom.xml index 85e74c5f3ae..47d82bcc454 100644 --- a/dubbo-demo/dubbo-demo-generic-call/pom.xml +++ b/dubbo-demo/dubbo-demo-generic-call/pom.xml @@ -1,21 +1,19 @@ 4.0.0 diff --git a/dubbo-demo/dubbo-demo-native/dubbo-demo-native-consumer/pom.xml b/dubbo-demo/dubbo-demo-native/dubbo-demo-native-consumer/pom.xml index ae8b187b0b8..99b98506120 100644 --- a/dubbo-demo/dubbo-demo-native/dubbo-demo-native-consumer/pom.xml +++ b/dubbo-demo/dubbo-demo-native/dubbo-demo-native-consumer/pom.xml @@ -189,7 +189,7 @@ org.apache.maven.plugins maven-compiler-plugin - 3.12.1 + 3.13.0 1.8 1.8 diff --git a/dubbo-demo/dubbo-demo-native/dubbo-demo-native-provider/pom.xml b/dubbo-demo/dubbo-demo-native/dubbo-demo-native-provider/pom.xml index d57cfa60339..90d06fdfa37 100644 --- a/dubbo-demo/dubbo-demo-native/dubbo-demo-native-provider/pom.xml +++ b/dubbo-demo/dubbo-demo-native/dubbo-demo-native-provider/pom.xml @@ -189,7 +189,7 @@ org.apache.maven.plugins maven-compiler-plugin - 3.12.1 + 3.13.0 1.8 1.8 diff --git a/dubbo-demo/dubbo-demo-triple/pom.xml b/dubbo-demo/dubbo-demo-triple/pom.xml index 1a519c084d1..9889eb8a2ed 100644 --- a/dubbo-demo/dubbo-demo-triple/pom.xml +++ b/dubbo-demo/dubbo-demo-triple/pom.xml @@ -1,21 +1,19 @@ 4.0.0 @@ -32,7 +30,7 @@ true 1.8 1.8 - 3.12.1 + 3.13.0 diff --git a/dubbo-dependencies-bom/pom.xml b/dubbo-dependencies-bom/pom.xml index 496c7ce9b4c..9a93a45edef 100644 --- a/dubbo-dependencies-bom/pom.xml +++ b/dubbo-dependencies-bom/pom.xml @@ -90,16 +90,16 @@ - 5.3.25 - 5.8.10 + 5.3.33 + 5.8.11 3.30.2-GA - 1.14.12 + 1.14.13 3.2.10.Final - 4.1.107.Final + 4.1.108.Final 4.5.14 4.4.16 1.2.83 - 2.0.47 + 2.0.48 3.7.2 5.1.0 2.12.0 @@ -133,22 +133,22 @@ 2.1.1 3.15.6.Final 1.9.13 - 8.5.99 - 2.3.1 + 8.5.100 + 2.3.2 1.8.6 1.6.1 - 1.62.2 + 1.63.0 0.8.1 1.2.2 0.9.10 1.7.36 - 1.3.0 + 1.3.1 1.2.17 1.2.13 2.23.1 - 2.15.1 + 2.16.0 1.16.0 0.13.0 @@ -168,7 +168,7 @@ 1.2.0 1.19.7 3.2.13 - 1.6.13 + 1.6.14 1.1.10.5 1.70 diff --git a/dubbo-dependencies/dubbo-dependencies-zookeeper-curator5/pom.xml b/dubbo-dependencies/dubbo-dependencies-zookeeper-curator5/pom.xml index 1fc649f2f91..11df243cd92 100644 --- a/dubbo-dependencies/dubbo-dependencies-zookeeper-curator5/pom.xml +++ b/dubbo-dependencies/dubbo-dependencies-zookeeper-curator5/pom.xml @@ -1,19 +1,19 @@ 4.0.0 diff --git a/dubbo-distribution/dubbo-apache-release/pom.xml b/dubbo-distribution/dubbo-apache-release/pom.xml index be516202991..59fd7374580 100644 --- a/dubbo-distribution/dubbo-apache-release/pom.xml +++ b/dubbo-distribution/dubbo-apache-release/pom.xml @@ -52,7 +52,7 @@ maven-assembly-plugin - 3.7.0 + 3.7.1 bin diff --git a/dubbo-maven-plugin/pom.xml b/dubbo-maven-plugin/pom.xml index 6453eea5f41..59ebaedeff5 100644 --- a/dubbo-maven-plugin/pom.xml +++ b/dubbo-maven-plugin/pom.xml @@ -49,7 +49,7 @@ org.apache.maven.plugin-tools maven-plugin-annotations - 3.11.0 + 3.12.0 provided @@ -68,7 +68,7 @@ commons-io commons-io - 2.15.1 + 2.16.0 diff --git a/dubbo-metadata/dubbo-metadata-processor/pom.xml b/dubbo-metadata/dubbo-metadata-processor/pom.xml index 33e6d6ea69e..fe6041612b2 100644 --- a/dubbo-metadata/dubbo-metadata-processor/pom.xml +++ b/dubbo-metadata/dubbo-metadata-processor/pom.xml @@ -1,19 +1,19 @@ 4.0.0 diff --git a/dubbo-metadata/dubbo-metadata-report-nacos/pom.xml b/dubbo-metadata/dubbo-metadata-report-nacos/pom.xml index 9b716b33adf..11e7913a39e 100644 --- a/dubbo-metadata/dubbo-metadata-report-nacos/pom.xml +++ b/dubbo-metadata/dubbo-metadata-report-nacos/pom.xml @@ -1,19 +1,19 @@ 4.0.0 diff --git a/dubbo-metadata/dubbo-metadata-report-nacos/src/main/java/org/apache/dubbo/metadata/store/nacos/NacosMetadataReport.java b/dubbo-metadata/dubbo-metadata-report-nacos/src/main/java/org/apache/dubbo/metadata/store/nacos/NacosMetadataReport.java index bdd5e83006b..d6dac4355ee 100644 --- a/dubbo-metadata/dubbo-metadata-report-nacos/src/main/java/org/apache/dubbo/metadata/store/nacos/NacosMetadataReport.java +++ b/dubbo-metadata/dubbo-metadata-report-nacos/src/main/java/org/apache/dubbo/metadata/store/nacos/NacosMetadataReport.java @@ -258,7 +258,7 @@ protected List doGetExportedURLs(ServiceMetadataIdentifier metadataIdent if (StringUtils.isEmpty(content)) { return Collections.emptyList(); } - return new ArrayList(Arrays.asList(URL.decode(content))); + return new ArrayList<>(Arrays.asList(URL.decode(content))); } @Override diff --git a/dubbo-plugin/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/support/AbstractCacheFactory.java b/dubbo-plugin/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/support/AbstractCacheFactory.java index 00276dda8c1..ac3c1554636 100644 --- a/dubbo-plugin/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/support/AbstractCacheFactory.java +++ b/dubbo-plugin/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/support/AbstractCacheFactory.java @@ -42,7 +42,7 @@ public abstract class AbstractCacheFactory implements CacheFactory { /** * This is used to store factory level-1 cached data. */ - private final ConcurrentMap caches = new ConcurrentHashMap(); + private final ConcurrentMap caches = new ConcurrentHashMap<>(); private final Object MONITOR = new Object(); diff --git a/dubbo-plugin/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/support/expiring/ExpiringMap.java b/dubbo-plugin/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/support/expiring/ExpiringMap.java index cec8854d7d7..9061e7a6f44 100644 --- a/dubbo-plugin/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/support/expiring/ExpiringMap.java +++ b/dubbo-plugin/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache/support/expiring/ExpiringMap.java @@ -158,7 +158,7 @@ public void putAll(Map inMap) { @Override public Collection values() { - List list = new ArrayList(); + List list = new ArrayList<>(); Set> delegatedSet = delegateMap.entrySet(); for (Entry entry : delegatedSet) { ExpiryObject value = entry.getValue(); diff --git a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/decoder/HttpCommandDecoder.java b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/decoder/HttpCommandDecoder.java index 77e7fa8928e..2d0367ae6a0 100644 --- a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/decoder/HttpCommandDecoder.java +++ b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/decoder/HttpCommandDecoder.java @@ -46,7 +46,7 @@ public static CommandContext decode(HttpRequest request) { commandContext = CommandContextFactory.newInstance(name); commandContext.setHttp(true); } else { - List valueList = new ArrayList(); + List valueList = new ArrayList<>(); for (List values : queryStringDecoder.parameters().values()) { valueList.addAll(values); @@ -56,7 +56,7 @@ public static CommandContext decode(HttpRequest request) { } } else if (request.method() == HttpMethod.POST) { HttpPostRequestDecoder httpPostRequestDecoder = new HttpPostRequestDecoder(request); - List valueList = new ArrayList(); + List valueList = new ArrayList<>(); for (InterfaceHttpData interfaceHttpData : httpPostRequestDecoder.getBodyHttpDatas()) { if (interfaceHttpData.getHttpDataType() == InterfaceHttpData.HttpDataType.Attribute) { Attribute attribute = (Attribute) interfaceHttpData; diff --git a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/CountTelnet.java b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/CountTelnet.java index 425f4706b3a..e81c8a0c959 100644 --- a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/CountTelnet.java +++ b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/impl/CountTelnet.java @@ -155,8 +155,8 @@ public void send(Channel channel, Object message) throws RemotingException { private String count(Invoker invoker, String method) { URL url = invoker.getUrl(); - List> table = new ArrayList>(); - List header = new ArrayList(); + List> table = new ArrayList<>(); + List header = new ArrayList<>(); header.add("method"); header.add("total"); header.add("failed"); @@ -188,7 +188,7 @@ private String count(Invoker invoker, String method) { } private List createRow(String methodName, RpcStatus count) { - List row = new ArrayList(); + List row = new ArrayList<>(); row.add(methodName); row.add(String.valueOf(count.getTotal())); row.add(String.valueOf(count.getFailed())); diff --git a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/util/CommandHelper.java b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/util/CommandHelper.java index faad6041de8..0889eecf153 100644 --- a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/util/CommandHelper.java +++ b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/command/util/CommandHelper.java @@ -46,7 +46,7 @@ public boolean hasCommand(String commandName) { public List> getAllCommandClass() { final Set commandList = frameworkModel.getExtensionLoader(BaseCommand.class).getSupportedExtensions(); - final List> classes = new ArrayList>(); + final List> classes = new ArrayList<>(); for (String commandName : commandList) { BaseCommand command = diff --git a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/textui/TLadder.java b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/textui/TLadder.java index f89996d0efb..66e8421c6f8 100644 --- a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/textui/TLadder.java +++ b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/textui/TLadder.java @@ -35,7 +35,7 @@ public class TLadder implements TComponent { // indent length private static final int INDENT_STEP = 2; - private final List items = new LinkedList(); + private final List items = new LinkedList<>(); @Override public String rendering() { diff --git a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/textui/TTable.java b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/textui/TTable.java index f96e8571844..326f1be16eb 100644 --- a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/textui/TTable.java +++ b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/textui/TTable.java @@ -299,7 +299,7 @@ public static class ColumnDefine { private final Align align; // data rows - private final List rows = new ArrayList(); + private final List rows = new ArrayList<>(); public ColumnDefine(int width, boolean isAutoResize, Align align) { this.width = width; diff --git a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/textui/TTree.java b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/textui/TTree.java index 6b599da45a7..8c4d6506825 100644 --- a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/textui/TTree.java +++ b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/textui/TTree.java @@ -181,7 +181,7 @@ private static class Node { /** * child nodes */ - final List children = new ArrayList(); + final List children = new ArrayList<>(); /** * begin timestamp diff --git a/dubbo-plugin/dubbo-reactive/src/main/java/org/apache/dubbo/reactive/calls/ReactorServerCalls.java b/dubbo-plugin/dubbo-reactive/src/main/java/org/apache/dubbo/reactive/calls/ReactorServerCalls.java index b514bfaf44f..5402cefc30e 100644 --- a/dubbo-plugin/dubbo-reactive/src/main/java/org/apache/dubbo/reactive/calls/ReactorServerCalls.java +++ b/dubbo-plugin/dubbo-reactive/src/main/java/org/apache/dubbo/reactive/calls/ReactorServerCalls.java @@ -82,7 +82,7 @@ public static void oneToMany( public static StreamObserver manyToOne( StreamObserver responseObserver, Function, Mono> func) { ServerTripleReactorPublisher serverPublisher = - new ServerTripleReactorPublisher((CallStreamObserver) responseObserver); + new ServerTripleReactorPublisher<>((CallStreamObserver) responseObserver); try { Mono responseMono = func.apply(Flux.from(serverPublisher)); responseMono.subscribe( @@ -117,7 +117,7 @@ public static StreamObserver manyToMany( StreamObserver responseObserver, Function, Flux> func) { // responseObserver is also a subscription of publisher, we can use it to request more data ServerTripleReactorPublisher serverPublisher = - new ServerTripleReactorPublisher((CallStreamObserver) responseObserver); + new ServerTripleReactorPublisher<>((CallStreamObserver) responseObserver); try { Flux responseFlux = func.apply(Flux.from(serverPublisher)); ServerTripleReactorSubscriber serverSubscriber = diff --git a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/InterfaceCompatibleRegistryProtocol.java b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/InterfaceCompatibleRegistryProtocol.java index ba3e936d161..8ee41924a25 100644 --- a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/InterfaceCompatibleRegistryProtocol.java +++ b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/InterfaceCompatibleRegistryProtocol.java @@ -75,6 +75,6 @@ protected ClusterInvoker getMigrationInvoker( URL url, URL consumerUrl) { // ClusterInvoker invoker = getInvoker(cluster, registry, type, url); - return new MigrationInvoker(registryProtocol, cluster, registry, type, url, consumerUrl); + return new MigrationInvoker<>(registryProtocol, cluster, registry, type, url, consumerUrl); } } 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 c5e386bb993..6763543c7c0 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 @@ -82,7 +82,7 @@ public class MulticastRegistry extends FailbackRegistry { private final int multicastPort; - private final ConcurrentMap> received = new ConcurrentHashMap>(); + private final ConcurrentMap> received = new ConcurrentHashMap<>(); private final ScheduledExecutorService cleanExecutor = Executors.newScheduledThreadPool(1, new NamedThreadFactory("DubboMulticastRegistryCleanTimer", true)); @@ -361,7 +361,7 @@ protected void unregistered(URL url) { } if (urls == null || urls.isEmpty()) { if (urls == null) { - urls = new ConcurrentHashSet(); + urls = new ConcurrentHashSet<>(); } URL empty = url.setProtocol(EMPTY_PROTOCOL); urls.add(empty); @@ -380,7 +380,7 @@ protected void subscribed(URL url, NotifyListener listener) { } private List toList(Set urls) { - List list = new ArrayList(); + List list = new ArrayList<>(); if (CollectionUtils.isNotEmpty(urls)) { list.addAll(urls); } diff --git a/dubbo-registry/dubbo-registry-multiple/src/main/java/org/apache/dubbo/registry/multiple/MultipleRegistry.java b/dubbo-registry/dubbo-registry-multiple/src/main/java/org/apache/dubbo/registry/multiple/MultipleRegistry.java index 44a2e571261..4a7edf788be 100644 --- a/dubbo-registry/dubbo-registry-multiple/src/main/java/org/apache/dubbo/registry/multiple/MultipleRegistry.java +++ b/dubbo-registry/dubbo-registry-multiple/src/main/java/org/apache/dubbo/registry/multiple/MultipleRegistry.java @@ -268,7 +268,7 @@ public List getEffectReferenceRegistryURLs() { protected static class MultipleNotifyListenerWrapper implements NotifyListener { - Map registryMap = new ConcurrentHashMap(4); + Map registryMap = new ConcurrentHashMap<>(4); NotifyListener sourceNotifyListener; public MultipleNotifyListenerWrapper(NotifyListener sourceNotifyListener) { diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/exchange/support/ReplierDispatcher.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/exchange/support/ReplierDispatcher.java index 549593a888a..979c49c2a5e 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/exchange/support/ReplierDispatcher.java +++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/exchange/support/ReplierDispatcher.java @@ -30,7 +30,7 @@ public class ReplierDispatcher implements Replier { private final Replier defaultReplier; - private final Map, Replier> repliers = new ConcurrentHashMap, Replier>(); + private final Map, Replier> repliers = new ConcurrentHashMap<>(); public ReplierDispatcher() { this(null, null); diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/exchange/support/header/HeaderExchangeServer.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/exchange/support/header/HeaderExchangeServer.java index 340c50c724d..2204076aba8 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/exchange/support/header/HeaderExchangeServer.java +++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/exchange/support/header/HeaderExchangeServer.java @@ -161,7 +161,7 @@ private void cancelCloseTask() { @Override public Collection getExchangeChannels() { - Collection exchangeChannels = new ArrayList(); + Collection exchangeChannels = new ArrayList<>(); Collection channels = server.getChannels(); if (CollectionUtils.isNotEmpty(channels)) { for (Channel channel : channels) { diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/codec/TelnetCodec.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/codec/TelnetCodec.java index c106572e3f3..3f1140b22c5 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/codec/TelnetCodec.java +++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/codec/TelnetCodec.java @@ -283,7 +283,7 @@ protected Object decode(Channel channel, ChannelBuffer buffer, int readable, byt String result = toString(message, getCharset(channel)); if (result.trim().length() > 0) { if (history == null) { - history = new LinkedList(); + history = new LinkedList<>(); channel.setAttribute(HISTORY_LIST_KEY, history); } if (history.isEmpty()) { diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/command/HelpTelnetHandler.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/command/HelpTelnetHandler.java index da5b7273985..f33c61360b6 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/command/HelpTelnetHandler.java +++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/command/HelpTelnetHandler.java @@ -73,12 +73,12 @@ private String generateForOneCommand(String message) { } private String generateForAllCommand(Channel channel) { - List> table = new ArrayList>(); + List> table = new ArrayList<>(); List handlers = extensionLoader.getActivateExtension(channel.getUrl(), "telnet"); if (CollectionUtils.isNotEmpty(handlers)) { for (TelnetHandler handler : handlers) { Help help = handler.getClass().getAnnotation(Help.class); - List row = new ArrayList(); + List row = new ArrayList<>(); String parameter = " " + extensionLoader.getExtensionName(handler) + " " + (help != null ? help.parameter().replace("\r\n", " ").replace("\n", " ") : ""); row.add(parameter.length() > 55 ? parameter.substring(0, 55) + "..." : parameter); 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 f65966321cd..d111a87fc91 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 @@ -53,8 +53,8 @@ public String telnet(Channel channel, String message) { if ("-l".equals(message)) { List checkers = extensionLoader.getActivateExtension(channel.getUrl(), STATUS_KEY); String[] header = new String[] {"resource", "status", "message"}; - List> table = new ArrayList>(); - Map statuses = new HashMap(); + List> table = new ArrayList<>(); + Map statuses = new HashMap<>(); if (CollectionUtils.isNotEmpty(checkers)) { for (StatusChecker checker : checkers) { String name = extensionLoader.getExtensionName(checker); @@ -66,7 +66,7 @@ public String telnet(Channel channel, String message) { } statuses.put(name, stat); if (stat.getLevel() != null && stat.getLevel() != Status.Level.UNKNOWN) { - List row = new ArrayList(); + List row = new ArrayList<>(); row.add(name); row.add(String.valueOf(stat.getLevel())); row.add(stat.getMessage() == null ? "" : stat.getMessage()); @@ -75,7 +75,7 @@ public String telnet(Channel channel, String message) { } } Status stat = StatusUtils.getSummaryStatus(statuses); - List row = new ArrayList(); + List row = new ArrayList<>(); row.add("summary"); row.add(String.valueOf(stat.getLevel())); row.add(stat.getMessage()); @@ -85,7 +85,7 @@ public String telnet(Channel channel, String message) { return "Unsupported parameter " + message + " for status."; } String status = channel.getUrl().getParameter("status"); - Map statuses = new HashMap(); + Map statuses = new HashMap<>(); if (StringUtils.isNotEmpty(status)) { String[] ss = COMMA_SPLIT_PATTERN.split(status); for (String s : ss) { 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 7b465c66498..7be50fff2e9 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 @@ -21,6 +21,7 @@ import org.apache.dubbo.common.logger.ErrorTypeAwareLogger; import org.apache.dubbo.common.logger.LoggerFactory; import org.apache.dubbo.common.threadpool.manager.ExecutorRepository; +import org.apache.dubbo.common.threadpool.manager.FrameworkExecutorRepository; import org.apache.dubbo.common.utils.NetUtils; import org.apache.dubbo.remoting.Channel; import org.apache.dubbo.remoting.ChannelHandler; @@ -28,9 +29,11 @@ import org.apache.dubbo.remoting.Constants; import org.apache.dubbo.remoting.RemotingException; import org.apache.dubbo.remoting.transport.dispatcher.ChannelHandlers; +import org.apache.dubbo.rpc.model.FrameworkModel; import java.net.InetSocketAddress; import java.util.concurrent.ExecutorService; +import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; @@ -41,6 +44,11 @@ import static org.apache.dubbo.common.constants.LoggerCodeConstants.TRANSPORT_FAILED_CLOSE; import static org.apache.dubbo.common.constants.LoggerCodeConstants.TRANSPORT_FAILED_CONNECT_PROVIDER; import static org.apache.dubbo.config.Constants.CLIENT_THREAD_POOL_NAME; +import static org.apache.dubbo.remoting.Constants.HEARTBEAT_CHECK_TICK; +import static org.apache.dubbo.remoting.Constants.LEAST_HEARTBEAT_DURATION; +import static org.apache.dubbo.remoting.Constants.LEAST_RECONNECT_DURATION; +import static org.apache.dubbo.remoting.Constants.LEAST_RECONNECT_DURATION_KEY; +import static org.apache.dubbo.remoting.utils.UrlUtils.getIdleTimeout; /** * AbstractClient @@ -55,13 +63,23 @@ public abstract class AbstractClient extends AbstractEndpoint implements Client protected volatile ExecutorService executor; + protected volatile ScheduledExecutorService connectivityExecutor; + + private FrameworkModel frameworkModel; + + protected long reconnectDuaration; + public AbstractClient(URL url, ChannelHandler handler) throws RemotingException { super(url, handler); // set default needReconnect true when channel is not connected needReconnect = url.getParameter(Constants.SEND_RECONNECT_KEY, true); + frameworkModel = url.getOrDefaultFrameworkModel(); + initExecutor(url); + reconnectDuaration = getReconnectDuration(url); + try { doOpen(); } catch (Throwable t) { @@ -134,6 +152,11 @@ private void initExecutor(URL url) { url = url.addParameter(THREAD_NAME_KEY, CLIENT_THREAD_POOL_NAME) .addParameterIfAbsent(THREADPOOL_KEY, DEFAULT_CLIENT_THREADPOOL); executor = executorRepository.createExecutorIfAbsent(url); + + connectivityExecutor = frameworkModel + .getBeanFactory() + .getBean(FrameworkExecutorRepository.class) + .getConnectivityScheduledExecutor(); } protected static ChannelHandler wrapChannelHandler(URL url, ChannelHandler handler) { @@ -296,6 +319,25 @@ public void disconnect() { } } + private long getReconnectDuration(URL url) { + int idleTimeout = getIdleTimeout(url); + long heartbeatTimeoutTick = calculateLeastDuration(idleTimeout); + return calculateReconnectDuration(url, heartbeatTimeoutTick); + } + + private long calculateLeastDuration(int time) { + if (time / HEARTBEAT_CHECK_TICK <= 0) { + return LEAST_HEARTBEAT_DURATION; + } else { + return time / HEARTBEAT_CHECK_TICK; + } + } + + private long calculateReconnectDuration(URL url, long tick) { + long leastReconnectDuration = url.getParameter(LEAST_RECONNECT_DURATION_KEY, LEAST_RECONNECT_DURATION); + return Math.max(leastReconnectDuration, tick); + } + @Override public void reconnect() throws RemotingException { connectLock.lock(); diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/CodecSupport.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/CodecSupport.java index 8023274ac4d..d3e24111a39 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/CodecSupport.java +++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/transport/CodecSupport.java @@ -42,9 +42,9 @@ public class CodecSupport { private static final ErrorTypeAwareLogger logger = LoggerFactory.getErrorTypeAwareLogger(CodecSupport.class); - private static Map ID_SERIALIZATION_MAP = new HashMap(); - private static Map ID_SERIALIZATIONNAME_MAP = new HashMap(); - private static Map SERIALIZATIONNAME_ID_MAP = new HashMap(); + private static Map ID_SERIALIZATION_MAP = new HashMap<>(); + private static Map ID_SERIALIZATIONNAME_MAP = new HashMap<>(); + private static Map SERIALIZATIONNAME_ID_MAP = new HashMap<>(); // Cache null object serialize results, for heartbeat request/response serialize use. private static ConcurrentMap ID_NULLBYTES_MAP = new ConcurrentHashMap<>(); diff --git a/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/RequestTemplate.java b/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/RequestTemplate.java index d02d63be29d..5536e6c83e6 100644 --- a/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/RequestTemplate.java +++ b/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/RequestTemplate.java @@ -35,8 +35,8 @@ public class RequestTemplate implements Serializable { public static final String ENCODING_DEFLATE = "deflate"; private static final List EMPTY_ARRAYLIST = new ArrayList<>(); - private final Map> queries = new LinkedHashMap>(); - private final Map> headers = new LinkedHashMap>(); + private final Map> queries = new LinkedHashMap<>(); + private final Map> headers = new LinkedHashMap<>(); private String httpMethod; private String path; private String address; diff --git a/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/servlet/DispatcherServlet.java b/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/servlet/DispatcherServlet.java index ced2170b3b0..0f2358cee07 100644 --- a/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/servlet/DispatcherServlet.java +++ b/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/servlet/DispatcherServlet.java @@ -33,7 +33,7 @@ public class DispatcherServlet extends HttpServlet { private static final long serialVersionUID = 5766349180380479888L; - private static final Map HANDLERS = new ConcurrentHashMap(); + private static final Map HANDLERS = new ConcurrentHashMap<>(); private static DispatcherServlet INSTANCE; public DispatcherServlet() { diff --git a/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/servlet/ServletManager.java b/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/servlet/ServletManager.java index a261b6e54c4..dc71cd862dc 100644 --- a/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/servlet/ServletManager.java +++ b/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/servlet/ServletManager.java @@ -30,7 +30,7 @@ public class ServletManager { private static final ServletManager INSTANCE = new ServletManager(); - private final Map contextMap = new ConcurrentHashMap(); + private final Map contextMap = new ConcurrentHashMap<>(); public static ServletManager getInstance() { return INSTANCE; 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 695983a22f1..95539ac9ac7 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 @@ -43,11 +43,11 @@ final class NettyChannel extends AbstractChannel { private static final ErrorTypeAwareLogger logger = LoggerFactory.getErrorTypeAwareLogger(NettyChannel.class); private static final ConcurrentMap CHANNEL_MAP = - new ConcurrentHashMap(); + new ConcurrentHashMap<>(); private final org.jboss.netty.channel.Channel channel; - private final Map attributes = new ConcurrentHashMap(); + private final Map attributes = new ConcurrentHashMap<>(); private NettyChannel(org.jboss.netty.channel.Channel channel, URL url, ChannelHandler handler) { super(url, handler); diff --git a/dubbo-remoting/dubbo-remoting-netty/src/main/java/org/apache/dubbo/remoting/transport/netty/NettyHandler.java b/dubbo-remoting/dubbo-remoting-netty/src/main/java/org/apache/dubbo/remoting/transport/netty/NettyHandler.java index f1d4bfd23c8..d864639dacc 100644 --- a/dubbo-remoting/dubbo-remoting-netty/src/main/java/org/apache/dubbo/remoting/transport/netty/NettyHandler.java +++ b/dubbo-remoting/dubbo-remoting-netty/src/main/java/org/apache/dubbo/remoting/transport/netty/NettyHandler.java @@ -42,7 +42,7 @@ public class NettyHandler extends SimpleChannelHandler { private static final Logger logger = LoggerFactory.getLogger(NettyHandler.class); - private final Map channels = new ConcurrentHashMap(); // + private final Map channels = new ConcurrentHashMap<>(); // private final URL url; 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 41b7bb5f4cd..8041c72bd84 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 @@ -61,14 +61,13 @@ final class NettyChannel extends AbstractChannel { /** * the cache for netty channel and dubbo channel */ - private static final ConcurrentMap CHANNEL_MAP = - new ConcurrentHashMap(); + private static final ConcurrentMap CHANNEL_MAP = new ConcurrentHashMap<>(); /** * netty channel */ private final Channel channel; - private final Map attributes = new ConcurrentHashMap(); + private final Map attributes = new ConcurrentHashMap<>(); private final AtomicBoolean active = new AtomicBoolean(false); diff --git a/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyConnectionClient.java b/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyConnectionClient.java index ab8f39bcf7d..85cd5651732 100644 --- a/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyConnectionClient.java +++ b/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyConnectionClient.java @@ -43,7 +43,6 @@ import io.netty.channel.ChannelInitializer; import io.netty.channel.ChannelOption; import io.netty.channel.ChannelPipeline; -import io.netty.channel.EventLoop; import io.netty.channel.socket.SocketChannel; import io.netty.handler.ssl.SslContext; import io.netty.handler.timeout.IdleStateHandler; @@ -75,6 +74,8 @@ public class NettyConnectionClient extends AbstractConnectionClient { public static final AttributeKey CONNECTION = AttributeKey.valueOf("connection"); + private AtomicBoolean isReconnecting; + public NettyConnectionClient(URL url, ChannelHandler handler) throws RemotingException { super(url, handler); } @@ -91,6 +92,7 @@ protected void initConnectionClient() { this.closePromise = new DefaultPromise<>(GlobalEventExecutor.INSTANCE); this.init = new AtomicBoolean(false); this.increase(); + this.isReconnecting = new AtomicBoolean(false); } @Override @@ -158,6 +160,10 @@ protected void doClose() { @Override protected void doConnect() throws RemotingException { + if (!isReconnecting.compareAndSet(false, true)) { + return; + } + if (isClosed()) { if (LOGGER.isDebugEnabled()) { LOGGER.debug( @@ -347,6 +353,11 @@ class ConnectionListener implements ChannelFutureListener { @Override public void operationComplete(ChannelFuture future) { + + if (!isReconnecting.compareAndSet(true, false)) { + return; + } + if (future.isSuccess()) { return; } @@ -364,8 +375,8 @@ public void operationComplete(ChannelFuture future) { "%s is reconnecting, attempt=%d cause=%s", connectionClient, 0, future.cause().getMessage())); } - final EventLoop loop = future.channel().eventLoop(); - loop.schedule( + + connectivityExecutor.schedule( () -> { try { connectionClient.doConnect(); @@ -377,8 +388,8 @@ public void operationComplete(ChannelFuture future) { "Failed to connect to server: " + getConnectAddress()); } }, - 1L, - TimeUnit.SECONDS); + reconnectDuaration, + TimeUnit.MILLISECONDS); } } } diff --git a/dubbo-remoting/dubbo-remoting-netty4/src/test/java/org/apache/dubbo/remoting/transport/netty4/ConnectionTest.java b/dubbo-remoting/dubbo-remoting-netty4/src/test/java/org/apache/dubbo/remoting/transport/netty4/ConnectionTest.java index 37b4439bba6..c90418fa4de 100644 --- a/dubbo-remoting/dubbo-remoting-netty4/src/test/java/org/apache/dubbo/remoting/transport/netty4/ConnectionTest.java +++ b/dubbo-remoting/dubbo-remoting-netty4/src/test/java/org/apache/dubbo/remoting/transport/netty4/ConnectionTest.java @@ -28,6 +28,7 @@ import org.apache.dubbo.rpc.model.ApplicationModel; import org.apache.dubbo.rpc.model.ModuleModel; +import java.time.Duration; import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; @@ -39,6 +40,7 @@ import org.junit.jupiter.api.Test; import static org.apache.dubbo.common.constants.CommonConstants.EXECUTOR_MANAGEMENT_MODE_DEFAULT; +import static org.awaitility.Awaitility.await; public class ConnectionTest { @@ -138,6 +140,7 @@ void connectSyncTest() throws Throwable { nettyPortUnificationServer.bind(); // auto reconnect + await().atMost(Duration.ofSeconds(100)).until(() -> connectionClient.isAvailable()); Assertions.assertTrue(connectionClient.isAvailable()); connectionClient.close(); diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcServiceContext.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcServiceContext.java index 5a8a640bd66..6bc36b75ae4 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcServiceContext.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcServiceContext.java @@ -459,7 +459,7 @@ public List> getInvokers() { public RpcServiceContext setInvokers(List> invokers) { this.invokers = invokers; if (CollectionUtils.isNotEmpty(invokers)) { - List urls = new ArrayList(invokers.size()); + List urls = new ArrayList<>(invokers.size()); for (Invoker invoker : invokers) { urls.add(invoker.getUrl()); } diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcStatus.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcStatus.java index 30de38825d6..9b0769f5454 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcStatus.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/RpcStatus.java @@ -33,13 +33,12 @@ */ public class RpcStatus { - private static final ConcurrentMap SERVICE_STATISTICS = - new ConcurrentHashMap(); + private static final ConcurrentMap SERVICE_STATISTICS = new ConcurrentHashMap<>(); private static final ConcurrentMap> METHOD_STATISTICS = - new ConcurrentHashMap>(); + new ConcurrentHashMap<>(); - private final ConcurrentMap values = new ConcurrentHashMap(); + private final ConcurrentMap values = new ConcurrentHashMap<>(); private final AtomicInteger active = new AtomicInteger(); private final AtomicLong total = new AtomicLong(); 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 1cbabd45d01..e1b2c4966c3 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 @@ -44,7 +44,7 @@ public class DeprecatedFilter implements Filter { private static final ErrorTypeAwareLogger LOGGER = LoggerFactory.getErrorTypeAwareLogger(DeprecatedFilter.class); - private static final Set LOGGED = new ConcurrentHashSet(); + private static final Set LOGGED = new ConcurrentHashSet<>(); @Override public Result invoke(Invoker invoker, Invocation invocation) throws RpcException { diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/tps/DefaultTPSLimiter.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/tps/DefaultTPSLimiter.java index 0410d70c505..645345db3fa 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/tps/DefaultTPSLimiter.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/tps/DefaultTPSLimiter.java @@ -35,7 +35,7 @@ */ public class DefaultTPSLimiter implements TPSLimiter { - private final ConcurrentMap stats = new ConcurrentHashMap(); + private final ConcurrentMap stats = new ConcurrentHashMap<>(); @Override public boolean isAllowable(URL url, Invocation invocation) { 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 843754a1dd8..8bd9e41a360 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 @@ -50,7 +50,7 @@ */ public abstract class AbstractProxyProtocol extends AbstractProtocol { - private final List> rpcExceptions = new CopyOnWriteArrayList>(); + private final List> rpcExceptions = new CopyOnWriteArrayList<>(); protected ProxyFactory proxyFactory; diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/ProtocolListenerWrapper.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/ProtocolListenerWrapper.java index 421e1148e7b..52ca299bb82 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/ProtocolListenerWrapper.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/protocol/ProtocolListenerWrapper.java @@ -74,8 +74,7 @@ public Exporter export(Invoker invoker) throws RpcException { .getBeanFactory() .getBean(InjvmExporterListener.class)); } - return new ListenerExporterWrapper( - protocol.export(invoker), Collections.unmodifiableList(exporterListeners)); + return new ListenerExporterWrapper<>(protocol.export(invoker), Collections.unmodifiableList(exporterListeners)); } @Override diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/support/MockInvoker.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/support/MockInvoker.java index 9e798e51df8..4f35a9cb316 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/support/MockInvoker.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/support/MockInvoker.java @@ -47,8 +47,8 @@ public final class MockInvoker implements Invoker { private final ProxyFactory proxyFactory; - private static final Map> MOCK_MAP = new ConcurrentHashMap>(); - private static final Map THROWABLE_MAP = new ConcurrentHashMap(); + private static final Map> MOCK_MAP = new ConcurrentHashMap<>(); + private static final Map THROWABLE_MAP = new ConcurrentHashMap<>(); private final URL url; private final Class type; 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 a8bd3c0c02e..4a919adf250 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 @@ -339,7 +339,7 @@ public Exporter export(Invoker invoker) throws RpcException { // export service. String key = serviceKey(url); - DubboExporter exporter = new DubboExporter(invoker, key, exporterMap); + DubboExporter exporter = new DubboExporter<>(invoker, key, exporterMap); // export a stub service for dispatching event boolean isStubSupportEvent = url.getParameter(STUB_EVENT_KEY, DEFAULT_STUB_EVENT); @@ -443,7 +443,7 @@ public Invoker protocolBindingRefer(Class serviceType, URL url) throws optimizeSerialization(url); // create rpc invoker. - DubboInvoker invoker = new DubboInvoker(serviceType, url, getClients(url), invokers); + DubboInvoker invoker = new DubboInvoker<>(serviceType, url, getClients(url), invokers); invokers.add(invoker); return invoker; diff --git a/dubbo-rpc/dubbo-rpc-injvm/src/main/java/org/apache/dubbo/rpc/protocol/injvm/InjvmProtocol.java b/dubbo-rpc/dubbo-rpc-injvm/src/main/java/org/apache/dubbo/rpc/protocol/injvm/InjvmProtocol.java index c4955e7ce7f..b3357847090 100644 --- a/dubbo-rpc/dubbo-rpc-injvm/src/main/java/org/apache/dubbo/rpc/protocol/injvm/InjvmProtocol.java +++ b/dubbo-rpc/dubbo-rpc-injvm/src/main/java/org/apache/dubbo/rpc/protocol/injvm/InjvmProtocol.java @@ -75,12 +75,12 @@ public int getDefaultPort() { @Override public Exporter export(Invoker invoker) throws RpcException { - return new InjvmExporter(invoker, invoker.getUrl().getServiceKey(), exporterMap); + return new InjvmExporter<>(invoker, invoker.getUrl().getServiceKey(), exporterMap); } @Override public Invoker protocolBindingRefer(Class serviceType, URL url) throws RpcException { - return new InjvmInvoker(serviceType, url, url.getServiceKey(), exporterMap); + return new InjvmInvoker<>(serviceType, url, url.getServiceKey(), exporterMap); } public boolean isInjvmRefer(URL url) { 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 1b4a4294b01..3c10fc699ec 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 @@ -177,7 +177,7 @@ protected Invoker protocolBindingRefer(final Class type, final URL url MetadataResolver.resolveConsumerServiceMetadata(type, url, contextPathFromUrl); Invoker invoker = - new RestInvoker(type, url, refClient, httpConnectionPreBuildIntercepts, serviceRestMetadata); + new RestInvoker<>(type, url, refClient, httpConnectionPreBuildIntercepts, serviceRestMetadata); invokers.add(invoker); return invoker; diff --git a/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/ViolationReport.java b/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/ViolationReport.java index 0a87d6d8f34..fcf7faf5f57 100644 --- a/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/ViolationReport.java +++ b/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/ViolationReport.java @@ -42,7 +42,7 @@ public void setConstraintViolations(List constraintViol public void addConstraintViolation(RestConstraintViolation constraintViolation) { if (constraintViolations == null) { - constraintViolations = new LinkedList(); + constraintViolations = new LinkedList<>(); } constraintViolations.add(constraintViolation); } diff --git a/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/extension/resteasy/filter/DubboPreMatchContainerRequestContext.java b/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/extension/resteasy/filter/DubboPreMatchContainerRequestContext.java index 4964f1792d8..6350eaaf155 100644 --- a/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/extension/resteasy/filter/DubboPreMatchContainerRequestContext.java +++ b/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/extension/resteasy/filter/DubboPreMatchContainerRequestContext.java @@ -82,7 +82,7 @@ public Object getProperty(String name) { @Override public Collection getPropertyNames() { - ArrayList names = new ArrayList(); + ArrayList names = new ArrayList<>(); Enumeration enames = httpRequest.getAttributeNames(); while (enames.hasMoreElements()) { names.add(enames.nextElement()); diff --git a/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/util/ReflectUtils.java b/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/util/ReflectUtils.java index 627ad1c195e..deacffa63a9 100644 --- a/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/util/ReflectUtils.java +++ b/dubbo-rpc/dubbo-rpc-rest/src/main/java/org/apache/dubbo/rpc/protocol/rest/util/ReflectUtils.java @@ -115,7 +115,7 @@ public static List> getConstructList(Class clazz) { } catch (Exception e) { } - return new ArrayList>(methods); + return new ArrayList<>(methods); } private static void filterConstructMethod(Set> methods, Constructor[] declaredMethods) { diff --git a/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/TriHttp2RemoteFlowController.java b/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/TriHttp2RemoteFlowController.java index b29439fe3e2..aa5339317d5 100644 --- a/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/TriHttp2RemoteFlowController.java +++ b/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/TriHttp2RemoteFlowController.java @@ -306,7 +306,7 @@ private final class FlowState implements StreamByteDistributor.StreamState { FlowState(Http2Stream stream) { this.stream = stream; - pendingWriteQueue = new ArrayDeque(2); + pendingWriteQueue = new ArrayDeque<>(2); } /** diff --git a/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/h12/AbstractServerCallListener.java b/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/h12/AbstractServerCallListener.java index 28a5a9fbf4d..42bb5fa4355 100644 --- a/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/h12/AbstractServerCallListener.java +++ b/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/h12/AbstractServerCallListener.java @@ -67,6 +67,10 @@ public void invoke() { try { final long stInMillis = System.currentTimeMillis(); final Result response = invoker.invoke(invocation); + if (response.hasException()) { + onResponseException(response.getException()); + return; + } response.whenCompleteWithContext((r, t) -> { if (responseObserver instanceof AttachmentHolder) { ((AttachmentHolder) responseObserver).setResponseAttachments(response.getObjectAttachments()); @@ -75,8 +79,8 @@ public void invoke() { responseObserver.onError(t); return; } - if (response.hasException()) { - onResponseException(response.getException()); + if (r.hasException()) { + onResponseException(r.getException()); return; } final long cost = System.currentTimeMillis() - stInMillis; diff --git a/dubbo-spring-boot/dubbo-spring-boot-interceptor/pom.xml b/dubbo-spring-boot/dubbo-spring-boot-interceptor/pom.xml index 6585f611e45..9e3f238ff82 100644 --- a/dubbo-spring-boot/dubbo-spring-boot-interceptor/pom.xml +++ b/dubbo-spring-boot/dubbo-spring-boot-interceptor/pom.xml @@ -46,6 +46,12 @@ spring-boot-starter-web true + + org.apache.dubbo + dubbo-rpc-api + ${project.version} + true + diff --git a/dubbo-spring-boot/dubbo-spring-boot-starters/dubbo-nacos-spring-boot-starter/pom.xml b/dubbo-spring-boot/dubbo-spring-boot-starters/dubbo-nacos-spring-boot-starter/pom.xml index 49ea3b67beb..563a89ee080 100644 --- a/dubbo-spring-boot/dubbo-spring-boot-starters/dubbo-nacos-spring-boot-starter/pom.xml +++ b/dubbo-spring-boot/dubbo-spring-boot-starters/dubbo-nacos-spring-boot-starter/pom.xml @@ -1,19 +1,19 @@ 4.0.0 diff --git a/dubbo-spring-boot/dubbo-spring-boot-starters/dubbo-zookeeper-curator5-spring-boot-starter/pom.xml b/dubbo-spring-boot/dubbo-spring-boot-starters/dubbo-zookeeper-curator5-spring-boot-starter/pom.xml index b969dd1942f..f15ce669ee5 100644 --- a/dubbo-spring-boot/dubbo-spring-boot-starters/dubbo-zookeeper-curator5-spring-boot-starter/pom.xml +++ b/dubbo-spring-boot/dubbo-spring-boot-starters/dubbo-zookeeper-curator5-spring-boot-starter/pom.xml @@ -1,19 +1,19 @@ 4.0.0 diff --git a/dubbo-spring-boot/dubbo-spring-boot-starters/dubbo-zookeeper-spring-boot-starter/pom.xml b/dubbo-spring-boot/dubbo-spring-boot-starters/dubbo-zookeeper-spring-boot-starter/pom.xml index ca4350360f2..b55854054f8 100644 --- a/dubbo-spring-boot/dubbo-spring-boot-starters/dubbo-zookeeper-spring-boot-starter/pom.xml +++ b/dubbo-spring-boot/dubbo-spring-boot-starters/dubbo-zookeeper-spring-boot-starter/pom.xml @@ -1,19 +1,19 @@ 4.0.0 diff --git a/dubbo-spring-boot/dubbo-spring-boot-starters/pom.xml b/dubbo-spring-boot/dubbo-spring-boot-starters/pom.xml index 897a01556a7..736e23590b9 100644 --- a/dubbo-spring-boot/dubbo-spring-boot-starters/pom.xml +++ b/dubbo-spring-boot/dubbo-spring-boot-starters/pom.xml @@ -1,19 +1,19 @@ 4.0.0 diff --git a/dubbo-spring-boot/pom.xml b/dubbo-spring-boot/pom.xml index a555e7b6b41..3b7d665d03b 100644 --- a/dubbo-spring-boot/pom.xml +++ b/dubbo-spring-boot/pom.xml @@ -41,7 +41,7 @@ 2.7.18 - 1.14.12 + 1.14.13 4.11.0 diff --git a/dubbo-test/dubbo-test-common/src/main/java/org/apache/dubbo/test/common/SysProps.java b/dubbo-test/dubbo-test-common/src/main/java/org/apache/dubbo/test/common/SysProps.java index dcfafc37f8e..6c9f5c1001a 100644 --- a/dubbo-test/dubbo-test-common/src/main/java/org/apache/dubbo/test/common/SysProps.java +++ b/dubbo-test/dubbo-test-common/src/main/java/org/apache/dubbo/test/common/SysProps.java @@ -24,7 +24,7 @@ */ public class SysProps { - private static Map map = new LinkedHashMap(); + private static Map map = new LinkedHashMap<>(); public static void reset() { map.clear(); diff --git a/dubbo-test/dubbo-test-spring3.2/pom.xml b/dubbo-test/dubbo-test-spring3.2/pom.xml index d209e06c380..60b6c89a15a 100644 --- a/dubbo-test/dubbo-test-spring3.2/pom.xml +++ b/dubbo-test/dubbo-test-spring3.2/pom.xml @@ -28,7 +28,7 @@ true - 3.2.18.RELEASE + 5.3.33 diff --git a/dubbo-test/dubbo-test-spring4.1/pom.xml b/dubbo-test/dubbo-test-spring4.1/pom.xml index 4467ba76372..83c49f48f2a 100644 --- a/dubbo-test/dubbo-test-spring4.1/pom.xml +++ b/dubbo-test/dubbo-test-spring4.1/pom.xml @@ -28,7 +28,7 @@ true - 4.1.9.RELEASE + 5.3.33 diff --git a/dubbo-test/dubbo-test-spring4.2/pom.xml b/dubbo-test/dubbo-test-spring4.2/pom.xml index e900558060a..beb130bf38d 100644 --- a/dubbo-test/dubbo-test-spring4.2/pom.xml +++ b/dubbo-test/dubbo-test-spring4.2/pom.xml @@ -28,7 +28,7 @@ true - 4.2.4.RELEASE + 5.3.33 diff --git a/pom.xml b/pom.xml index 4dafbf47e67..6831e0e631a 100644 --- a/pom.xml +++ b/pom.xml @@ -133,12 +133,12 @@ 3.2.5 3.2.5 2.8.2 - 3.12.1 - 3.3.0 + 3.13.0 + 3.3.1 3.6.3 9.4.54.v20240208 3.3.1 - 0.8.11 + 0.8.12 1.6.0 3.4.1 3.1.0