PluginConfig

一个插件的配置数据, 用于和用户交互.

用户可通过 mirai-console 前端 (如在 Android 中可视化实现) 修改这些配置, 修改会自动写入这个对象中.

提示: 插件内部的数据应用 PluginData 存储, 而不能使用 PluginConfig.

实现

对使用者来说, PluginConfigPluginData 实现几乎相同. 目前仅需在 PluginData 使用的基础上添加接口实现即可.

Kotlin

PluginData 的示例基础上, 修改对象定义

// 原
object MyPluginData : AutoSavePluginData()
// 修改为
object MyPluginConfig : AutoSavePluginConfig()

即可将一个 PluginData 变更为 PluginConfig.

Java

JavaAutoSavePluginConfig

See also

Inheritors

Functions

Link copied to clipboard

当这个 PluginData 被放入一个 PluginDataStorage 时调用

Link copied to clipboard

当所属于这个 PluginDataValue 被修改时被调用. 调用者为 Value 的实现.

Link copied to clipboard

创建一个 Boolean 类型的 Value, 并设置初始值为 default

创建一个 Byte 类型的 Value, 并设置初始值为 default

创建一个 Char 类型的 Value, 并设置初始值为 default

创建一个 Double 类型的 Value, 并设置初始值为 default

创建一个 Float 类型的 Value, 并设置初始值为 default

inline fun <T> PluginData.value(apply: T.() -> Unit = {}): SerializerAwareValue<T>

通过具体化类型创建一个 SerializerAwareValue.

创建一个 Int 类型的 Value, 并设置初始值为 default

创建一个 Long 类型的 Value, 并设置初始值为 default

创建一个 Short 类型的 Value, 并设置初始值为 default

创建一个 String 类型的 Value, 并设置初始值为 default

inline fun <T> PluginData.value(default: T, crossinline apply: T.() -> Unit = {}): SerializerAwareValue<T>

通过具体化类型创建一个 SerializerAwareValue, 并设置初始值.

Link copied to clipboard

通过一个特定的 KType 创建 Value, 并设置初始值.

Properties

Link copied to clipboard

这个 PluginData 保存时使用的名称.

Link copied to clipboard

决定这个 PluginData 序列化时使用的格式, 默认为 YAML. 具体实现格式由 PluginDataStorage 决定.

Link copied to clipboard
abstract val serializersModule: SerializersModule

序列化本对象数据时使用的 SerializersModule. 用于支持多态序列化等. 在序列化时会先使用 PluginData.serializersModule, 再对无法找到 serializer 的类型使用 MessageSerializers.serializersModule.

Link copied to clipboard
abstract val updaterSerializer: KSerializer<Unit>