Class: Isono::NodeModules::Base
- Inherits:
-
Object
- Object
- Isono::NodeModules::Base
- Defined in:
- lib/isono/node_modules/base.rb
Direct Known Subclasses
DataStore, EventChannel, EventLogger, JobChannel, JobCollector, JobWorker, NodeCollector, NodeHeartbeat, RpcChannel
Defined Under Namespace
Modules: ClassMethods
Instance Attribute Summary collapse
-
#node ⇒ Object
readonly
Returns the value of attribute node.
Instance Method Summary collapse
-
#config_section ⇒ Object
shortcut method to lookup configuration section only which belongs to this class.
-
#initialize(node) ⇒ Base
constructor
A new instance of Base.
-
#manifest ⇒ Object
Delegate methods used in subclass frequently.
- #value_object ⇒ Object
Constructor Details
#initialize(node) ⇒ Base
Returns a new instance of Base.
9 10 11 12 13 14 15 16 |
# File 'lib/isono/node_modules/base.rb', line 9 def initialize(node) raise ArgumentError unless node.is_a?(Node) @node = node raise "Module initializer_hook is not run yet" if self.value_object.nil? value_object.copy_instance_variables(self) after_initialize end |
Instance Attribute Details
#node ⇒ Object (readonly)
Returns the value of attribute node.
7 8 9 |
# File 'lib/isono/node_modules/base.rb', line 7 def node @node end |
Instance Method Details
#config_section ⇒ Object
shortcut method to lookup configuration section only which belongs to this class.
29 30 31 |
# File 'lib/isono/node_modules/base.rb', line 29 def config_section node.manifest.config.send(self.class.instance_variable_get(:@config_section_name)) end |
#manifest ⇒ Object
Delegate methods used in subclass frequently.
19 20 21 |
# File 'lib/isono/node_modules/base.rb', line 19 def manifest node.manifest end |
#value_object ⇒ Object
23 24 25 |
# File 'lib/isono/node_modules/base.rb', line 23 def value_object node.value_objects[self.class] end |