Interface: EnhancedMonitoringServices
Defined in: electron/services/monitoring/EnhancedMonitoringServiceFactory.ts:207
Complete bundle of enhanced monitoring services for operation correlation and race condition prevention.
Remarks
This interface defines the complete set of enhanced monitoring services that work together to provide robust, race condition-safe monitoring operations. All services are pre-configured and ready for use, with proper inter-service dependencies already established.
Service Architecture:
- Core Engine: EnhancedMonitorChecker provides the main monitoring logic - Operation Tracking: MonitorOperationRegistry prevents race conditions - Status Management: MonitorStatusUpdateService ensures safe concurrent updates - Resource Management: OperationTimeoutManager handles timeouts and cleanup
Usage Pattern: All services in this bundle are designed to work together. The checker service is the primary interface for consumers, while the other services provide supporting functionality that the checker coordinates automatically.
Example
const services = EnhancedMonitoringServiceFactory.createServices(dependencies);
// Primary usage - checker coordinates all other services
const result = await services.checker.checkMonitor(site, monitorId);
// Advanced usage - direct access to supporting services
const isActive = services.registry.isOperationActive(monitorId);
await services.statusUpdateService.updateStatus(monitorId, newStatus);
See
- EnhancedMonitoringServiceFactory.createServices for service creation
- EnhancedMonitoringDependencies for required dependencies
Properties
checker
checker:
EnhancedMonitorChecker
Defined in: electron/services/monitoring/EnhancedMonitoringServiceFactory.ts:218
Enhanced monitor checker with comprehensive operation correlation and race condition prevention.
Remarks
This is the primary service interface for monitor checking operations. It coordinates with all other services in the bundle to provide safe, efficient monitoring capabilities. Most consumers should interact exclusively with this service.
operationRegistry
operationRegistry:
MonitorOperationRegistry
Defined in: electron/services/monitoring/EnhancedMonitoringServiceFactory.ts:229
Operation registry for monitoring active operations and preventing race conditions.
Remarks
Tracks all active monitor operations to prevent duplicate or conflicting checks. Primarily used internally by the checker service, but available for advanced use cases requiring direct operation state querying.
statusUpdateService
statusUpdateService:
MonitorStatusUpdateService
Defined in: electron/services/monitoring/EnhancedMonitoringServiceFactory.ts:241
Status update service with operation validation and concurrent access safety.
Remarks
Provides safe status update operations that validate against current operation state to prevent race conditions during concurrent monitor checks. Ensures status updates are only applied when appropriate and maintains data consistency.
timeoutManager
timeoutManager:
OperationTimeoutManager
Defined in: electron/services/monitoring/EnhancedMonitoringServiceFactory.ts:252
Timeout manager for operation lifecycle management and resource cleanup.
Remarks
Handles operation timeouts, automatic cleanup procedures, and resource management for monitor operations. Ensures that operations don't run indefinitely and that resources are properly released when operations complete or are cancelled.