Files
oxspeak_server/src/core/state.rs
T
2026-07-13 16:16:00 +02:00

29 lines
789 B
Rust

use crate::config::AppConfig;
use crate::core::permission_sync::PermissionSyncService;
use crate::metrics::AppMetrics;
use crate::models::server;
use crate::repositories::Repositories;
use crate::routes::gateway::GatewayManager;
use event_bus::EventBus;
use sea_orm::DatabaseConnection;
use std::sync::{Arc, RwLock};
#[derive(Debug, Clone)]
pub struct AppState {
pub db: DatabaseConnection,
pub config: Arc<AppConfig>,
pub repositories: Arc<Repositories>,
pub init_token: Arc<RwLock<Option<uuid::Uuid>>>,
pub default_server: Arc<server::Model>,
pub metrics: AppMetrics,
pub gateway: Arc<GatewayManager>,
pub event_bus: Arc<EventBus>,
}
impl AppState {}
#[derive(Debug, Clone)]
pub struct Services {
pub permission_sync: Arc<PermissionSyncService>,
}