Class: DTK::Client::TaskStatus::StreamMode::Element::HierarchicalTask::Steps::Components
- Inherits:
-
DTK::Client::TaskStatus::StreamMode::Element::HierarchicalTask::Steps
- Object
- DTK::Client::TaskStatus::StreamMode::Element::HierarchicalTask
- DTK::Client::TaskStatus::StreamMode::Element::HierarchicalTask::Steps
- DTK::Client::TaskStatus::StreamMode::Element::HierarchicalTask::Steps::Components
- Defined in:
- lib/task_status/stream_mode/element/hierarchical_task/steps/components.rb
Instance Attribute Summary collapse
-
#component_names ⇒ Object
readonly
Returns the value of attribute component_names.
Instance Method Summary collapse
- #component_term(component_name) ⇒ Object
-
#initialize(element, hash) ⇒ Components
constructor
A new instance of Components.
- #render_steps(steps) ⇒ Object
Methods inherited from DTK::Client::TaskStatus::StreamMode::Element::HierarchicalTask
Constructor Details
#initialize(element, hash) ⇒ Components
Returns a new instance of Components.
21 22 23 24 |
# File 'lib/task_status/stream_mode/element/hierarchical_task/steps/components.rb', line 21 def initialize(element, hash) super @component_names = (hash['components'] || []).map { |cmp| cmp['name'] }.compact end |
Instance Attribute Details
#component_names ⇒ Object (readonly)
Returns the value of attribute component_names.
26 27 28 |
# File 'lib/task_status/stream_mode/element/hierarchical_task/steps/components.rb', line 26 def component_names @component_names end |
Instance Method Details
#component_term(component_name) ⇒ Object
42 43 44 45 46 47 48 49 |
# File 'lib/task_status/stream_mode/element/hierarchical_task/steps/components.rb', line 42 def component_term(component_name) ret = '' if node_term = node_term? ret << "#{node_term}/" end ret << component_name ret end |
#render_steps(steps) ⇒ Object
28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/task_status/stream_mode/element/hierarchical_task/steps/components.rb', line 28 def render_steps(steps) step = steps.first if steps.size == 1 and step.component_names.size == 1 render_line "COMPONENT: #{step.component_term(step.component_names.first)}" else render_line 'COMPONENTS:' steps.each do |step| step.component_names.each do |component_name| render_line step.component_term(component_name), :tabs => 1 end end end end |