From 709e35f9297a7875a45338d47de4cfd8c00dc738 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=93=D1=80=D0=B8=D0=B3=D0=BE=D1=80=D0=B8=D0=B9=20=D0=A1?= =?UTF-8?q?=D0=B0=D1=84=D1=80=D0=BE=D0=BD=D0=BE=D0=B2?= Date: Sun, 18 Jan 2026 21:55:13 +0000 Subject: [PATCH] Delete src/plugins/bad-traits.rs --- src/plugins/bad-traits.rs | 97 --------------------------------------- 1 file changed, 97 deletions(-) delete mode 100644 src/plugins/bad-traits.rs diff --git a/src/plugins/bad-traits.rs b/src/plugins/bad-traits.rs deleted file mode 100644 index ed2e68b..0000000 --- a/src/plugins/bad-traits.rs +++ /dev/null @@ -1,97 +0,0 @@ -//! Трейты для системы плагинов с lock-free архитектурой - -use std::sync::Arc; -use serde_json::Value; - -/// Трейт для данных плагина (без Lua окружения) -pub trait PluginData: Send + Sync { - fn id(&self) -> &str; - fn name(&self) -> &str; - fn version(&self) -> &str; - fn description(&self) -> &str; - fn author(&self) -> &str; - fn path(&self) -> &str; - fn state(&self) -> PluginState; -} - -/// Состояние плагина -#[derive(Debug, Clone, Copy, PartialEq, Eq)] -pub enum PluginState { - Loading, - Loaded, - Running, - Error, - Disabled, -} - -/// Трейт для обработки событий -pub trait EventHandler: Send + Sync { - fn handle_event(&self, event: PluginEvent) -> Result<(), String>; -} - -/// Трейт для хуков -pub trait HookHandler: Send + Sync { - fn execute_hook(&self, hook_name: &str, data: Value) -> Result; -} - -/// Событие плагина -#[derive(Debug, Clone)] -pub struct PluginEvent { - pub event_type: EventType, - pub data: Value, - pub source: String, - pub timestamp: u64, -} - -/// Тип события -#[derive(Debug, Clone)] -pub enum EventType { - /// Системные события - SystemStart, - SystemStop, - PluginLoaded(String), - PluginUnloaded(String), - - /// События базы данных - DatabaseOpen, - DatabaseClose, - TransactionBegin(u64), - TransactionCommit(u64), - TransactionRollback(u64), - - /// Пользовательские события - Custom(String, String), -} - -/// Хук плагина -#[derive(Debug, Clone)] -pub struct PluginHook { - pub name: String, - pub function: String, - pub priority: u32, - pub async_hook: bool, -} - -/// Трейт для менеджера плагинов -pub trait PluginManagerTrait: Send + Sync { - /// Загрузить все плагины - fn load_all_plugins(&mut self) -> Result>, String>; - - /// Загрузить плагин по пути - fn load_plugin(&mut self, path: &str) -> Result, String>; - - /// Выгрузить плагин - fn unload_plugin(&mut self, plugin_id: &str) -> Result<(), String>; - - /// Получить список загруженных плагинов - fn list_plugins(&self) -> Vec>; - - /// Получить плагин по ID - fn get_plugin(&self, plugin_id: &str) -> Option>; - - /// Отправить событие - fn emit_event(&self, event: PluginEvent) -> Result<(), String>; - - /// Выполнить хук - fn execute_hook(&self, hook_name: &str, data: Value) -> Result; -}