Expand description
Common shared types and abstractions for IPC layer.
§IPC Common Abstractions
This module provides shared types and abstractions used across the IPC layer. It eliminates code duplication and provides a consistent foundation for all IPC communication components.
§Architecture
The Common module is organized into focused, atomic modules:
- MessageType: Core message structures for IPC communication
- ConnectionStatus: Connection health and state tracking
- HealthStatus: Health monitoring and scoring
- PerformanceMetrics: Performance measurement and tracking
- ServiceInfo: Service discovery and information
§Design Principles
- Single Responsibility: Each module has one clear purpose
- Reusability: Types are shared across IPC components
- Type Safety: Strong typing prevents common errors
- Serde Support: All types support serialization for IPC
§Example Usage
use crate::IPC::Common::{ConnectionStatus, HealthStatus, PerformanceMetrics};
let status = ConnectionStatus::Connected;
let health = HealthStatus::new(100);
let metrics = PerformanceMetrics::default();Re-exports§
pub use ConnectionStatus::ConnectionState;pub use HealthStatus::HealthIssue;pub use HealthStatus::HealthMonitor;pub use HealthStatus::SeverityLevel;pub use MessageType::IPCCommand;pub use MessageType::IPCMessage;pub use MessageType::IPCResponse;pub use PerformanceMetrics::ThroughputMetrics;pub use ServiceInfo::ServiceRegistry;pub use ServiceInfo::ServiceState;pub use ConnectionStatus::ConnectionStatus as Status;
Modules§
- Connection
Status - Connection Status Tracking
- Health
Status - Health Status Monitoring
- Message
Type - Message Type Definitions
- Performance
Metrics - Performance Metrics Tracking
- Service
Info - Service Discovery and Information