From eaec7166b42f5181d78200d798923b19b8dc3400 Mon Sep 17 00:00:00 2001 From: LamGC Date: Sat, 28 Nov 2020 11:31:31 +0800 Subject: [PATCH] =?UTF-8?q?[Add][Document]=20Framework-API=20=E4=B8=BA=20F?= =?UTF-8?q?ramework=20=E6=8F=90=E4=BE=9B=E8=8E=B7=E5=8F=96=E5=8C=85?= =?UTF-8?q?=E5=86=85=E8=B5=84=E6=BA=90=E7=9A=84=E6=96=B9=E6=B3=95,=20?= =?UTF-8?q?=E8=A1=A5=E5=85=85=20'getContext()'=20=E6=96=B9=E6=B3=95?= =?UTF-8?q?=E7=9A=84=E6=96=87=E6=A1=A3;?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [Add] Framework 添加 'getFrameworkResourceAsStream' 方法以获取 Jar 内资源; [Document] Framework 补充 'getContext()' 方法的文档; --- .../net/lamgc/cgj/bot/framework/Framework.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/ContentGrabbingJi-framework-api/src/main/java/net/lamgc/cgj/bot/framework/Framework.java b/ContentGrabbingJi-framework-api/src/main/java/net/lamgc/cgj/bot/framework/Framework.java index c7ab362..581703f 100644 --- a/ContentGrabbingJi-framework-api/src/main/java/net/lamgc/cgj/bot/framework/Framework.java +++ b/ContentGrabbingJi-framework-api/src/main/java/net/lamgc/cgj/bot/framework/Framework.java @@ -22,6 +22,7 @@ import org.pf4j.PluginDescriptor; import org.pf4j.PluginWrapper; import java.io.File; +import java.io.InputStream; /** * 框架抽象类. @@ -95,9 +96,22 @@ public abstract class Framework extends Plugin { /** * 获取当前框架对象与所属 ContentGrabbingJiBot 的上下文. + *

不同的 ContentGrabbingJiBot 实例所对应的 Context 是不一样的, + * 除特殊情况外请不要混用(甚至在任何情况下都不要混用). * @return 返回上下文对象. */ protected FrameworkContext getContext() { return context; } + + /** + * 通过 Framework 所属 ClassLoader 从框架本体(比如 Jar, Zip 或者文件夹内)获取框架资源. + *

如需获取资源请使用本方法, 单纯使用 {@link ClassLoader#getSystemClassLoader()} 来获取资源会导致无法获取. + * @param name 资源名称. + * @return 返回资源输入流, 如果资源不存在时返回 {@code null}. + */ + protected InputStream getFrameworkResourceAsStream(String name) { + return getWrapper().getPluginClassLoader().getResourceAsStream(name); + } + }