Mirai Console Backend - Extensions

Mirai Console 拥有灵活的 Extensions API,支持扩展 Console 的一些服务。

Extensions 属于插件开发的进阶内容。

扩展open in new window

组件容器open in new window

容纳插件注册的 扩展open in new window

注册扩展

插件仅能在 onLoad 阶段注册扩展。

示例:

object MyPlugin : KotlinPlugin( /* ... */ ) {
    fun PluginComponentStorage.onLoad() {
        contributePermissionService { /* ... */ }
        contributePluginLoader { /* ... */ }
        contribute(ExtensionPoint) { /* ... */ }
    }
}

// java
public class MyPlugin extends JavaPlugin {
    public MyPlugin() {
        // ...
    }

    @Override
    public void onLoad(PluginComponentStorage pcs) {
        pcs.contributePermissionService(() -> { /* ... */ });
        pcs.contributePluginLoader(() -> { /* ... */ });
        pcs.contribute(ExtensionPoint, () -> { /* ... */ });
    }
}

可用扩展

查看 extensionsopen in new window。每个文件对应一个扩展。