88 handler stubs across 13 route files, 66 DB query stubs across 11 modules, auth/license extractors, and rate limit middleware. All bodies are todo!() — ready for Phase 1b implementation. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
31 lines
1.0 KiB
Rust
31 lines
1.0 KiB
Rust
use sqlx::PgPool;
|
|
use uuid::Uuid;
|
|
use anyhow::Result;
|
|
|
|
// TODO: Define Plugin struct (id, server_id, name, version, author, is_enabled, config_json, wipe_on_map, wipe_on_bp, created_at, updated_at)
|
|
|
|
/// Insert or update a plugin record (upsert by server_id + name).
|
|
pub async fn upsert_plugin(pool: &PgPool, server_id: Uuid, name: &str, version: &str, author: Option<&str>) -> Result<Uuid> {
|
|
todo!()
|
|
}
|
|
|
|
/// Get all plugins for a server.
|
|
pub async fn get_plugins(pool: &PgPool, server_id: Uuid) -> Result<()> {
|
|
todo!()
|
|
}
|
|
|
|
/// Update the JSON configuration blob for a plugin.
|
|
pub async fn update_plugin_config(pool: &PgPool, plugin_id: Uuid, config_json: &str) -> Result<()> {
|
|
todo!()
|
|
}
|
|
|
|
/// Update wipe-related settings for a plugin (wipe on map, wipe on BP).
|
|
pub async fn update_plugin_wipe_settings(pool: &PgPool, plugin_id: Uuid, wipe_on_map: bool, wipe_on_bp: bool) -> Result<()> {
|
|
todo!()
|
|
}
|
|
|
|
/// Remove a plugin record.
|
|
pub async fn delete_plugin(pool: &PgPool, plugin_id: Uuid) -> Result<()> {
|
|
todo!()
|
|
}
|