Skip to main content

Crate cool_plugin

Crate cool_plugin 

Source
Expand description

§cool-plugin

cool-admin Rust 插件系统。

§功能特性

  • 🔌 插件生命周期管理
  • 📦 插件注册和发现
  • 🔧 插件配置
  • 🪝 钩子系统

§快速开始

use cool_plugin::prelude::*;

#[derive(Default)]
struct MyPlugin;

#[async_trait]
impl Plugin for MyPlugin {
    fn info(&self) -> PluginInfo {
        PluginInfo {
            name: "my-plugin".to_string(),
            key: "my-plugin".to_string(),
            version: "1.0.0".to_string(),
            ..Default::default()
        }
    }

    async fn ready(&mut self) -> PluginResult<()> {
        // 插件就绪
        Ok(())
    }
}

Modules§

hook_names
预定义的钩子名称
prelude
预导入模块

Structs§

BaseException
异常基类
CacheOptions
缓存配置选项
CoolCommException
通用异常
CoolCoreException
核心异常
CoolValidateException
验证异常
ErrInfo
错误提示
Event
事件名称
FsCacheStore
文件系统缓存存储
GlobalConfig
全局配置
HookContext
钩子上下文
HookManager
钩子管理器
LocalUploadHook
本地文件上传钩子
Mode
上传模式
PathValidator
路径安全验证工具
PluginData
插件数据
PluginInfo
插件信息
PluginInstaller
插件安装器
PluginRegistry
插件注册表
PluginService
插件服务
ResCodeConfig
ResMessage
返回信息
ResMessageConfig
UploadContext
上传上下文

Enums§

CacheError
缓存错误
CheckResult
插件检查结果
InstallerError
插件安装错误
ModeType
上传模式类型
PluginError
插件错误
PluginStatus
插件状态
ResCode
返回码
UploadError
上传错误

Traits§

Hook
钩子 trait
Plugin
插件 trait
UploadHook
上传钩子 trait

Functions§

create_cache_store
创建缓存存储的便捷函数
global_hook_manager
获取全局钩子管理器
global_plugin_registry
获取全局插件注册表
global_plugin_service
获取全局插件服务

Type Aliases§

CacheResult
InstallerResult
PluginResult
UploadResult