You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2020/01/19 16:16:10 UTC
[isis] 05/07: ISIS-2223: Resources should be closed
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git
commit d76e60d3edce1de0f192986d298987e0be1e870b
Author: Andi Huber <ah...@apache.org>
AuthorDate: Sun Jan 19 17:07:04 2020 +0100
ISIS-2223: Resources should be closed
---
.../isis/core/commons/internal/context/_Plugin.java | 18 ++++++++++--------
1 file changed, 10 insertions(+), 8 deletions(-)
diff --git a/core/commons/src/main/java/org/apache/isis/core/commons/internal/context/_Plugin.java b/core/commons/src/main/java/org/apache/isis/core/commons/internal/context/_Plugin.java
index 9771bb8..4565a94 100644
--- a/core/commons/src/main/java/org/apache/isis/core/commons/internal/context/_Plugin.java
+++ b/core/commons/src/main/java/org/apache/isis/core/commons/internal/context/_Plugin.java
@@ -162,14 +162,16 @@ public final class _Plugin {
ClassLoader parentCL = pluginInterfaceClass.getClassLoader();
URL[] urls = {classPath.toURI().toURL()};
- ClassLoader cl = URLClassLoader.newInstance(urls, parentCL);
- Class<S> pluginClass = _Casts.uncheckedCast(
- cl.loadClass(pluginFullyQualifiedClassName));
- S plugin = pluginClass.newInstance();
-
- _Context.putSingleton(pluginInterfaceClass, plugin);
-
- return plugin;
+
+ try(URLClassLoader cl = URLClassLoader.newInstance(urls, parentCL)) {
+ Class<S> pluginClass = _Casts.uncheckedCast(
+ cl.loadClass(pluginFullyQualifiedClassName));
+ S plugin = pluginClass.newInstance();
+
+ _Context.putSingleton(pluginInterfaceClass, plugin);
+
+ return plugin;
+ }
} catch (Exception e) {
throw new PluginResolveException(