You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by pa...@apache.org on 2023/06/01 02:34:07 UTC
[shardingsphere] branch master updated: Optimize the use of classloader in ClasspathDriverURLProvider (#25949)
This is an automated email from the ASF dual-hosted git repository.
panjuan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push:
new cfa39511694 Optimize the use of classloader in ClasspathDriverURLProvider (#25949)
cfa39511694 is described below
commit cfa39511694a0bb3ff2f26276e1c798996fbb08d
Author: jiangML <10...@qq.com>
AuthorDate: Thu Jun 1 10:33:59 2023 +0800
Optimize the use of classloader in ClasspathDriverURLProvider (#25949)
---
.../jdbc/core/driver/spi/ClasspathDriverURLProvider.java | 15 ++++-----------
1 file changed, 4 insertions(+), 11 deletions(-)
diff --git a/jdbc/core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/driver/spi/ClasspathDriverURLProvider.java b/jdbc/core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/driver/spi/ClasspathDriverURLProvider.java
index 64c00abd937..68f6f6be0cd 100644
--- a/jdbc/core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/driver/spi/ClasspathDriverURLProvider.java
+++ b/jdbc/core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/driver/spi/ClasspathDriverURLProvider.java
@@ -27,7 +27,6 @@ import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.nio.charset.StandardCharsets;
-import java.util.Arrays;
/**
* Classpath driver URL provider.
@@ -62,16 +61,10 @@ public final class ClasspathDriverURLProvider implements ShardingSphereDriverURL
}
private InputStream getResourceAsStream(final String resource) {
- for (ClassLoader each : Arrays.asList(Thread.currentThread().getContextClassLoader(), getClass().getClassLoader(), ClassLoader.getSystemClassLoader())) {
- if (null != each) {
- InputStream result = each.getResourceAsStream(resource);
- if (null == result) {
- result = each.getResourceAsStream("/" + resource);
- }
- if (null != result) {
- return result;
- }
- }
+ InputStream result = Thread.currentThread().getContextClassLoader().getResourceAsStream(resource);
+ result = null == result ? Thread.currentThread().getContextClassLoader().getResourceAsStream("/" + resource) : result;
+ if (null != result) {
+ return result;
}
throw new IllegalArgumentException(String.format("Can not find configuration file `%s`.", resource));
}