Class: Tasker::Registry::InterfaceValidator
- Inherits:
-
Object
- Object
- Tasker::Registry::InterfaceValidator
- Defined in:
- lib/tasker/registry/interface_validator.rb
Overview
Unified interface validation for all registry systems
Provides consistent validation patterns for handlers, subscribers, plugins, and other registry items to ensure they implement required interfaces.
Class Method Summary collapse
-
.validate_export_plugin!(plugin_instance) ⇒ Object
Validate an export coordinator plugin.
-
.validate_handler!(handler_class) ⇒ Object
Validate a task handler class.
-
.validate_plugin!(plugin_instance) ⇒ Object
Validate a telemetry plugin instance.
-
.validate_subscriber!(subscriber_class) ⇒ Object
Validate an event subscriber class.
Class Method Details
.validate_export_plugin!(plugin_instance) ⇒ Object
Validate an export coordinator plugin
42 43 44 45 |
# File 'lib/tasker/registry/interface_validator.rb', line 42 def validate_export_plugin!(plugin_instance) validate_instance_methods!(plugin_instance.class, EXPORT_PLUGIN_INTERFACE) validate_method_arity!(plugin_instance, EXPORT_PLUGIN_ARITY_REQUIREMENTS) end |
.validate_handler!(handler_class) ⇒ Object
Validate a task handler class
16 17 18 19 |
# File 'lib/tasker/registry/interface_validator.rb', line 16 def validate_handler!(handler_class) validate_class_methods!(handler_class, HANDLER_INTERFACE) validate_instance_methods!(handler_class, HANDLER_INSTANCE_INTERFACE) end |
.validate_plugin!(plugin_instance) ⇒ Object
Validate a telemetry plugin instance
33 34 35 36 |
# File 'lib/tasker/registry/interface_validator.rb', line 33 def validate_plugin!(plugin_instance) validate_instance_methods!(plugin_instance.class, PLUGIN_INTERFACE) validate_method_arity!(plugin_instance, PLUGIN_ARITY_REQUIREMENTS) end |
.validate_subscriber!(subscriber_class) ⇒ Object
Validate an event subscriber class
25 26 27 |
# File 'lib/tasker/registry/interface_validator.rb', line 25 def validate_subscriber!(subscriber_class) validate_instance_methods!(subscriber_class, SUBSCRIBER_INTERFACE) end |