From afc2aaf5c9c237515d7ed071d152afebfca038bb Mon Sep 17 00:00:00 2001 From: Him188 Date: Thu, 7 May 2020 16:32:43 +0800 Subject: [PATCH] Portable PluginCenter --- .../mirai/console/graphical/view/PluginsCenterView.kt | 4 +--- .../kotlin/net/mamoe/mirai/console/center/PluginCenter.kt | 4 ---- .../net/mamoe/mirai/console/command/DefaultCommands.kt | 5 ++--- .../kotlin/net/mamoe/mirai/console/utils/MiraiConsoleUI.kt | 7 +++++++ 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/mirai-console-graphical/src/main/kotlin/net/mamoe/mirai/console/graphical/view/PluginsCenterView.kt b/mirai-console-graphical/src/main/kotlin/net/mamoe/mirai/console/graphical/view/PluginsCenterView.kt index 5dd509830..b5d84174b 100644 --- a/mirai-console-graphical/src/main/kotlin/net/mamoe/mirai/console/graphical/view/PluginsCenterView.kt +++ b/mirai-console-graphical/src/main/kotlin/net/mamoe/mirai/console/graphical/view/PluginsCenterView.kt @@ -8,7 +8,6 @@ import javafx.scene.control.Button import javafx.scene.control.TreeTableCell import kotlinx.coroutines.runBlocking import net.mamoe.mirai.console.MiraiConsole -import net.mamoe.mirai.console.center.PluginCenter import net.mamoe.mirai.console.graphical.controller.MiraiGraphicalUIController import net.mamoe.mirai.console.graphical.event.ReloadEvent import net.mamoe.mirai.console.graphical.model.PluginModel @@ -16,13 +15,12 @@ import net.mamoe.mirai.console.graphical.stylesheet.PluginViewStyleSheet import net.mamoe.mirai.console.graphical.util.jfxButton import net.mamoe.mirai.console.graphical.util.jfxTreeTableView import net.mamoe.mirai.console.graphical.view.dialog.PluginDetailFragment -import net.mamoe.mirai.console.plugins.PluginManager import tornadofx.* class PluginsCenterView : View() { private val controller = find() - private val center = PluginCenter.Default + private val center get() = MiraiConsole.frontEnd.pluginCenter private val plugins: ObservableList = observableListOf() init { diff --git a/mirai-console/src/main/kotlin/net/mamoe/mirai/console/center/PluginCenter.kt b/mirai-console/src/main/kotlin/net/mamoe/mirai/console/center/PluginCenter.kt index e16ec513a..a7e061098 100644 --- a/mirai-console/src/main/kotlin/net/mamoe/mirai/console/center/PluginCenter.kt +++ b/mirai-console/src/main/kotlin/net/mamoe/mirai/console/center/PluginCenter.kt @@ -4,10 +4,6 @@ import java.io.File interface PluginCenter { - companion object { - val Default: PluginCenter = CuiPluginCenter - } - data class PluginInsight( val name: String, val version: String, diff --git a/mirai-console/src/main/kotlin/net/mamoe/mirai/console/command/DefaultCommands.kt b/mirai-console/src/main/kotlin/net/mamoe/mirai/console/command/DefaultCommands.kt index 692bdab84..3c4334261 100644 --- a/mirai-console/src/main/kotlin/net/mamoe/mirai/console/command/DefaultCommands.kt +++ b/mirai-console/src/main/kotlin/net/mamoe/mirai/console/command/DefaultCommands.kt @@ -14,7 +14,6 @@ import kotlinx.coroutines.launch import net.mamoe.mirai.Bot import net.mamoe.mirai.Bot.Companion.botInstances import net.mamoe.mirai.console.MiraiConsole -import net.mamoe.mirai.console.center.PluginCenter import net.mamoe.mirai.console.plugins.PluginManager import net.mamoe.mirai.console.utils.addManager import net.mamoe.mirai.console.utils.checkManager @@ -319,11 +318,11 @@ object DefaultCommands { usage = "/install [plugin-name] to install plugin or /install [page-num] to show list " onCommand { args -> - val center = PluginCenter.Default + val center = MiraiConsole.frontEnd.pluginCenter suspend fun showPage(num: Int) { sendMessage("正在连接 " + center.name) - val list = PluginCenter.Default.fetchPlugin(num) + val list = center.fetchPlugin(num) if (list.isEmpty()) { sendMessage("页码过大") return diff --git a/mirai-console/src/main/kotlin/net/mamoe/mirai/console/utils/MiraiConsoleUI.kt b/mirai-console/src/main/kotlin/net/mamoe/mirai/console/utils/MiraiConsoleUI.kt index 28019e6f5..6200d558c 100644 --- a/mirai-console/src/main/kotlin/net/mamoe/mirai/console/utils/MiraiConsoleUI.kt +++ b/mirai-console/src/main/kotlin/net/mamoe/mirai/console/utils/MiraiConsoleUI.kt @@ -10,6 +10,8 @@ package net.mamoe.mirai.console.utils import net.mamoe.mirai.Bot +import net.mamoe.mirai.console.center.CuiPluginCenter +import net.mamoe.mirai.console.center.PluginCenter import net.mamoe.mirai.utils.LoginSolver import net.mamoe.mirai.utils.SimpleLogger.LogPriority @@ -18,6 +20,11 @@ import net.mamoe.mirai.utils.SimpleLogger.LogPriority * 需要保证线程安全 */ interface MiraiConsoleUI { + /** + * 提供 [PluginCenter] + */ + val pluginCenter: PluginCenter get() = CuiPluginCenter + /** * 让 UI 层展示一条 log *