You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dubbo.apache.org by li...@apache.org on 2019/10/10 00:43:22 UTC
[dubbo] branch master updated: revert #5072 by logging error msg.
(#5084)
This is an automated email from the ASF dual-hosted git repository.
liujun pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/dubbo.git
The following commit(s) were added to refs/heads/master by this push:
new f6993ff revert #5072 by logging error msg. (#5084)
f6993ff is described below
commit f6993ffd4e4c123cda6b1d164485c0dbb631a70d
Author: ken.lj <ke...@gmail.com>
AuthorDate: Thu Sep 19 11:12:58 2019 +0800
revert #5072 by logging error msg. (#5084)
---
.../apache/dubbo/common/extension/ExtensionLoader.java | 15 ++++++---------
1 file changed, 6 insertions(+), 9 deletions(-)
diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/extension/ExtensionLoader.java b/dubbo-common/src/main/java/org/apache/dubbo/common/extension/ExtensionLoader.java
index d951653..bdaf493 100644
--- a/dubbo-common/src/main/java/org/apache/dubbo/common/extension/ExtensionLoader.java
+++ b/dubbo-common/src/main/java/org/apache/dubbo/common/extension/ExtensionLoader.java
@@ -492,15 +492,12 @@ public class ExtensionLoader<T> {
return (T) instance;
}
- private void findException(String name) {
+ private IllegalStateException findException(String name) {
for (Map.Entry<String, IllegalStateException> entry : exceptions.entrySet()) {
if (entry.getKey().toLowerCase().contains(name.toLowerCase())) {
- throw entry.getValue();
+ return entry.getValue();
}
}
- }
-
- private IllegalStateException noExtensionException(String name) {
StringBuilder buf = new StringBuilder("No such extension " + type.getName() + " by name " + name);
@@ -522,11 +519,9 @@ public class ExtensionLoader<T> {
@SuppressWarnings("unchecked")
private T createExtension(String name) {
- // throws any possible exception in loading period.
- findException(name);
Class<?> clazz = getExtensionClasses().get(name);
if (clazz == null) {
- throw noExtensionException(name);
+ throw findException(name);
}
try {
T instance = (T) EXTENSION_INSTANCES.get(clazz);
@@ -777,7 +772,9 @@ public class ExtensionLoader<T> {
if (c == null) {
extensionClasses.put(name, clazz);
} else if (c != clazz) {
- throw new IllegalStateException("Duplicate extension " + type.getName() + " name " + name + " on " + c.getName() + " and " + clazz.getName());
+ String duplicateMsg = "Duplicate extension " + type.getName() + " name " + name + " on " + c.getName() + " and " + clazz.getName();
+ logger.error(duplicateMsg);
+ throw new IllegalStateException(duplicateMsg);
}
}