Class: Pvectl::Presenters::VolumeOperationResult
- Inherits:
-
OperationResult
- Object
- Base
- OperationResult
- Pvectl::Presenters::VolumeOperationResult
- Defined in:
- lib/pvectl/presenters/volume_operation_result.rb
Overview
Presenter for volume operation results (set/edit).
Formats VolumeOperationResult models for table/JSON/YAML output.
Constant Summary
Constants included from Formatters::ColorSupport
Formatters::ColorSupport::STATUS_COLORS
Instance Method Summary collapse
-
#columns ⇒ Array<String>
Returns column headers for standard table output.
-
#to_hash(model) ⇒ Hash
Converts result to hash for JSON/YAML output.
-
#to_row(model, **_context) ⇒ Array<String>
Converts result to table row values.
Methods included from Formatters::ColorSupport
colorize_status, enabled?, pastel
Methods inherited from Base
#extra_columns, #extra_values, #tags_array, #tags_display, #template_display, #to_description, #to_wide_row, #uptime_human, #wide_columns
Instance Method Details
#columns ⇒ Array<String>
Returns column headers for standard table output.
18 19 20 |
# File 'lib/pvectl/presenters/volume_operation_result.rb', line 18 def columns %w[NODE RESOURCE ID DISK OPERATION STATUS MESSAGE] end |
#to_hash(model) ⇒ Hash
Converts result to hash for JSON/YAML output.
44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/pvectl/presenters/volume_operation_result.rb', line 44 def to_hash(model) vol = model.volume { "node" => vol&.node, "resource_type" => vol&.resource_type, "resource_id" => vol&.resource_id, "disk" => vol&.name, "operation" => model.operation&.to_s, "status" => model.status_text, "message" => model. } end |
#to_row(model, **_context) ⇒ Array<String>
Converts result to table row values.
27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/pvectl/presenters/volume_operation_result.rb', line 27 def to_row(model, **_context) vol = model.volume [ vol&.node || "-", vol&.resource_type || "-", vol&.resource_id&.to_s || "-", vol&.name || "-", model.operation&.to_s || "-", status_display(model), model. ] end |