Rename Access to Classpath

This commit is contained in:
Karlatemp 2022-05-24 17:00:30 +08:00
parent 72d248f1e6
commit 50e7462b6b
No known key found for this signature in database
GPG Key ID: BA173CA2B9956C59
6 changed files with 13 additions and 14 deletions

View File

@ -29,6 +29,6 @@ public class PluginResolveSelfDependenciesOverConsoleOnes :
}.toString()
}
val hcC = Class.forName("io.ktor.client.HttpClient")
assertClassSame(hcC, jvmPluginClassLoaderAccess.pluginIndependentLibrariesClassLoader.loadClass(hcC.name))
assertClassSame(hcC, jvmPluginClasspath.pluginIndependentLibrariesClassLoader.loadClass(hcC.name))
}
}

View File

@ -20,7 +20,7 @@ import kotlin.test.assertEquals
internal object PMain : KotlinPlugin(JvmPluginDescription("net.mamoe.console.itest.serviceloader", "0.0.0")) {
init {
val access = jvmPluginClassLoaderAccess
val access = jvmPluginClasspath
val sharedCL = access.pluginSharedLibrariesClassLoader
access.addToPath(sharedCL, File("modules/module-service-loader-typedef-0.0.0.jar"))
access.addToPath(sharedCL, File("modules/module-service-loader-impl-0.0.0.jar"))

View File

@ -2157,7 +2157,7 @@ public abstract class net/mamoe/mirai/console/plugin/jvm/AbstractJvmPlugin : net
public synthetic fun <init> (Lkotlin/coroutines/CoroutineContext;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public fun getAutoSaveIntervalMillis ()Lkotlin/ranges/LongRange;
public final fun getDataHolderName ()Ljava/lang/String;
protected final fun getJvmPluginClassLoaderAccess ()Lnet/mamoe/mirai/console/plugin/jvm/JvmPluginClassLoaderAccess;
protected final fun getJvmPluginClasspath ()Lnet/mamoe/mirai/console/plugin/jvm/JvmPluginClasspath;
public final fun getLoader ()Lnet/mamoe/mirai/console/plugin/jvm/JvmPluginLoader;
public synthetic fun getLoader ()Lnet/mamoe/mirai/console/plugin/loader/PluginLoader;
public final fun permissionId (Ljava/lang/String;)Lnet/mamoe/mirai/console/permission/PermissionId;
@ -2214,7 +2214,7 @@ public final class net/mamoe/mirai/console/plugin/jvm/JvmPlugin$Companion {
public final synthetic fun onLoad (Lnet/mamoe/mirai/console/plugin/jvm/JvmPlugin;Lnet/mamoe/mirai/console/extension/PluginComponentStorage;)V
}
public abstract interface class net/mamoe/mirai/console/plugin/jvm/JvmPluginClassLoaderAccess {
public abstract interface class net/mamoe/mirai/console/plugin/jvm/JvmPluginClasspath {
public abstract fun addToPath (Ljava/lang/ClassLoader;Ljava/io/File;)V
public abstract fun downloadAndAddToPath (Ljava/lang/ClassLoader;Ljava/util/Collection;)V
public abstract fun getPluginClassLoader ()Ljava/lang/ClassLoader;

View File

@ -12,7 +12,7 @@ package net.mamoe.mirai.console.internal.plugin
import net.mamoe.mirai.console.MiraiConsole
import net.mamoe.mirai.console.plugin.jvm.ExportManager
import net.mamoe.mirai.console.plugin.jvm.JvmPluginClassLoaderAccess
import net.mamoe.mirai.console.plugin.jvm.JvmPluginClasspath
import net.mamoe.mirai.utils.*
import org.eclipse.aether.artifact.Artifact
import org.eclipse.aether.graph.DependencyFilter
@ -181,7 +181,7 @@ internal class DynLibClassLoader : URLClassLoader {
@Suppress("JoinDeclarationAndAssignment")
internal class JvmPluginClassLoaderN : URLClassLoader {
val openaccess: JvmPluginClassLoaderAccess = OpenAccess()
val openaccess: JvmPluginClasspath = OpenAccess()
val file: File
val ctx: JvmPluginsLoadingCtx
val sharedLibrariesLogger: DynLibClassLoader
@ -446,7 +446,7 @@ internal class JvmPluginClassLoaderN : URLClassLoader {
return "JvmPluginClassLoader{${file.name}}"
}
inner class OpenAccess : JvmPluginClassLoaderAccess {
inner class OpenAccess : JvmPluginClasspath {
override val pluginFile: File
get() = this@JvmPluginClassLoaderN.file

View File

@ -80,18 +80,18 @@ public abstract class AbstractJvmPlugin @JvmOverloads constructor(
public override val autoSaveIntervalMillis: LongRange = 30.secondsToMillis..10.minutesToMillis
/**
* 获取 [JvmPluginClassLoaderAccess]
* 获取 [JvmPluginClasspath]
*
* : 仅插件通过 console 内置插件加载器加载时可用
*
* @since 2.12
*/
protected val jvmPluginClassLoaderAccess: JvmPluginClassLoaderAccess by lazy {
protected val jvmPluginClasspath: JvmPluginClasspath by lazy {
val classLoader = this@AbstractJvmPlugin.javaClass.classLoader
if (classLoader is JvmPluginClassLoaderN) {
return@lazy classLoader.openaccess
}
error("jvmPluginClassLoaderAccess not available for $classLoader")
error("jvmPluginClasspath not available for $classLoader")
}
}

View File

@ -10,15 +10,14 @@
package net.mamoe.mirai.console.plugin.jvm
import java.io.File
import java.io.IOException
/**
* 动态注册类搜索路径
* [JvmPlugin] 的类路径
*
* @since 2.12
* @see AbstractJvmPlugin.jvmPluginClassLoaderAccess
* @see AbstractJvmPlugin.jvmPluginClasspath
*/
public interface JvmPluginClassLoaderAccess {
public interface JvmPluginClasspath {
public val pluginFile: File
/**