This is an automated email from the ASF dual-hosted git repository.
jinrongtong pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/rocketmq.git
The following commit(s) were added to refs/heads/develop by this push:
new bee73b3a4 [ISSUE #4310] Optimize serviceProvider's code
bee73b3a4 is described below
commit bee73b3a4ddccc20ae00c2c7b306076f8b9b2658
Author: hzh0425 <[email protected]>
AuthorDate: Sat May 14 11:32:44 2022 +0800
[ISSUE #4310] Optimize serviceProvider's code
---
.../rocketmq/broker/util/ServiceProvider.java | 21 +++++++--------------
1 file changed, 7 insertions(+), 14 deletions(-)
diff --git
a/broker/src/main/java/org/apache/rocketmq/broker/util/ServiceProvider.java
b/broker/src/main/java/org/apache/rocketmq/broker/util/ServiceProvider.java
index b77292ed2..21cf4c24e 100644
--- a/broker/src/main/java/org/apache/rocketmq/broker/util/ServiceProvider.java
+++ b/broker/src/main/java/org/apache/rocketmq/broker/util/ServiceProvider.java
@@ -16,6 +16,7 @@
*/
package org.apache.rocketmq.broker.util;
+import java.nio.charset.StandardCharsets;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -73,7 +74,7 @@ public class ServiceProvider {
try {
return clazz.getClassLoader();
} catch (SecurityException e) {
- LOG.error("Unable to get classloader for class {} due to security
restrictions !",
+ LOG.error("Unable to get classloader for class {} due to security
restrictions , error info {}",
clazz, e.getMessage());
throw e;
}
@@ -109,11 +110,7 @@ public class ServiceProvider {
final InputStream is =
getResourceAsStream(getContextClassLoader(), name);
if (is != null) {
BufferedReader reader;
- try {
- reader = new BufferedReader(new InputStreamReader(is,
"UTF-8"));
- } catch (java.io.UnsupportedEncodingException e) {
- reader = new BufferedReader(new InputStreamReader(is));
- }
+ reader = new BufferedReader(new InputStreamReader(is,
StandardCharsets.UTF_8));
String serviceName = reader.readLine();
while (serviceName != null && !"".equals(serviceName)) {
LOG.info(
@@ -143,11 +140,7 @@ public class ServiceProvider {
if (is != null) {
BufferedReader reader;
try {
- try {
- reader = new BufferedReader(new InputStreamReader(is,
"UTF-8"));
- } catch (java.io.UnsupportedEncodingException e) {
- reader = new BufferedReader(new InputStreamReader(is));
- }
+ reader = new BufferedReader(new InputStreamReader(is,
StandardCharsets.UTF_8));
String serviceName = reader.readLine();
reader.close();
if (serviceName != null && !"".equals(serviceName)) {
@@ -177,14 +170,14 @@ public class ServiceProvider {
// This indicates a problem with the ClassLoader tree.
An incompatible ClassLoader was used to load the implementation.
LOG.error(
"Class {} loaded from classloader {} does not
extend {} as loaded by this classloader.",
- new Object[] {serviceClazz.getName(),
- objectId(serviceClazz.getClassLoader()),
clazz.getName()});
+ serviceClazz.getName(),
+ objectId(serviceClazz.getClassLoader()),
clazz.getName());
}
return (T)serviceClazz.newInstance();
} catch (ClassNotFoundException ex) {
if (classLoader == thisClassLoader) {
// Nothing more to try, onwards.
- LOG.warn("Unable to locate any class {} via
classloader", serviceName,
+ LOG.warn("Unable to locate any class {} via
classloader {}", serviceName,
objectId(classLoader));
throw ex;
}