Class: Pvectl::Models::NodeOperationResult
- Inherits:
-
OperationResult
- Object
- Base
- OperationResult
- Pvectl::Models::NodeOperationResult
- Defined in:
- lib/pvectl/models/node_operation_result.rb
Overview
Represents the result of a set/edit operation on a node.
Extends OperationResult with node-specific attribute.
Instance Attribute Summary collapse
-
#info ⇒ String?
readonly
Optional info message describing the successful outcome (e.g., “Wake-on-LAN packet sent (MAC: AA:BB:CC:DD:EE:FF)”).
-
#node_model ⇒ Models::Node?
readonly
The node this result is for.
Attributes inherited from OperationResult
#error, #operation, #resource, #success, #task, #task_upid
Instance Method Summary collapse
-
#initialize(attrs = {}) ⇒ NodeOperationResult
constructor
Creates a new NodeOperationResult.
-
#message ⇒ String
Returns the result message for display.
Methods inherited from OperationResult
#failed?, #partial?, #pending?, #status_text, #successful?
Constructor Details
#initialize(attrs = {}) ⇒ NodeOperationResult
Creates a new NodeOperationResult.
25 26 27 28 29 |
# File 'lib/pvectl/models/node_operation_result.rb', line 25 def initialize(attrs = {}) super @node_model = @attributes[:node_model] @info = @attributes[:message] end |
Instance Attribute Details
#info ⇒ String? (readonly)
Returns optional info message describing the successful outcome (e.g., “Wake-on-LAN packet sent (MAC: AA:BB:CC:DD:EE:FF)”).
20 21 22 |
# File 'lib/pvectl/models/node_operation_result.rb', line 20 def info @info end |
#node_model ⇒ Models::Node? (readonly)
Returns The node this result is for.
16 17 18 |
# File 'lib/pvectl/models/node_operation_result.rb', line 16 def node_model @node_model end |
Instance Method Details
#message ⇒ String
Returns the result message for display.
On success, prefers the optional ‘:message` attribute (set by services that want to surface an outcome detail like a MAC address). Otherwise falls back to the generic OperationResult logic (error / task / status).
38 39 40 41 42 |
# File 'lib/pvectl/models/node_operation_result.rb', line 38 def return @info if successful? && @info super end |