33 lines
931 B
Rust
33 lines
931 B
Rust
use std::path::PathBuf;
|
|
use std::sync::Arc;
|
|
|
|
use crate::acp::manager::ConnectionManager;
|
|
use crate::chat_channel::manager::ChatChannelManager;
|
|
use crate::db::AppDatabase;
|
|
use crate::terminal::manager::TerminalManager;
|
|
use crate::web::event_bridge::{EventEmitter, WebEventBroadcaster};
|
|
use crate::web::WebServerState;
|
|
|
|
pub struct AppState {
|
|
pub db: AppDatabase,
|
|
pub connection_manager: ConnectionManager,
|
|
pub terminal_manager: TerminalManager,
|
|
pub event_broadcaster: Arc<WebEventBroadcaster>,
|
|
pub emitter: EventEmitter,
|
|
pub data_dir: PathBuf,
|
|
pub web_server_state: WebServerState,
|
|
pub chat_channel_manager: ChatChannelManager,
|
|
}
|
|
|
|
pub fn default_connection_manager() -> ConnectionManager {
|
|
ConnectionManager::new()
|
|
}
|
|
|
|
pub fn default_terminal_manager() -> TerminalManager {
|
|
TerminalManager::new()
|
|
}
|
|
|
|
pub fn default_chat_channel_manager() -> ChatChannelManager {
|
|
ChatChannelManager::new()
|
|
}
|