Skip to main content

Mountain/Binary/Register/
AdvancedFeaturesRegister.rs

1//! # Advanced Features Register Module
2//!
3//! Initializes the IPC advanced features functionality.
4
5use std::sync::Arc;
6
7use crate::{
8	IPC::AdvancedFeatures::initialize_advanced_features,
9	RunTime::ApplicationRunTime::ApplicationRunTime,
10	dev_log,
11};
12
13/// Initializes the IPC advanced features with the ApplicationRunTime.
14///
15/// # Arguments
16///
17/// * `ApplicationHandle` - The Tauri application handle
18/// * `RunTime` - The ApplicationRunTime instance
19///
20/// # Returns
21///
22/// A `Result` indicating success or failure.
23///
24/// # Advanced Features Functionality
25///
26/// The advanced features module provides:
27/// - Performance statistics collection
28/// - Cache management and monitoring
29/// - Collaboration session management
30/// - Advanced IPC capabilities
31///
32/// # Errors
33///
34/// Returns an error if advanced features initialization fails.
35pub fn AdvancedFeaturesRegister(
36	ApplicationHandle:&tauri::AppHandle,
37	RunTime:Arc<ApplicationRunTime>,
38) -> Result<(), String> {
39	match initialize_advanced_features(ApplicationHandle, RunTime) {
40		Ok(()) => {
41			dev_log!(
42				"lifecycle",
43				"[IPC] [AdvancedFeatures] Advanced features initialized successfully."
44			);
45			Ok(())
46		},
47		Err(e) => {
48			dev_log!("lifecycle", "error: [IPC] [AdvancedFeatures] Failed to initialize: {}", e);
49			Err(format!("Failed to initialize advanced features: {}", e))
50		},
51	}
52}