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;
                     }

Reply via email to