class WavefrontDisplay::Source

Format human-readable output for sources.

Public Instance Methods

do_list() click to toggle source
# File lib/wavefront-cli/display/source.rb, line 10
def do_list
  massage_data
  long_output
end
do_list_brief() click to toggle source
# File lib/wavefront-cli/display/source.rb, line 15
def do_list_brief
  massage_data
  terse_data
  multicolumn(:id, :description)
end
do_search_brief() click to toggle source
# File lib/wavefront-cli/display/source.rb, line 21
def do_search_brief
  return multicolumn(:id) unless data.empty?

  puts 'No matches.'
end

Private Instance Methods

drop_cluster_sources() click to toggle source

Filter out the Wavefront cluster sources. Don't sort them, or using offset and cursor becomes confusing.

# File lib/wavefront-cli/display/source.rb, line 51
def drop_cluster_sources
  data.delete_if { |k| k.id =~ /prod-[\da-f]{2}-/ }
end
drop_hidden_sources() click to toggle source

Filter out any sources with 'hidden=true'

# File lib/wavefront-cli/display/source.rb, line 44
def drop_hidden_sources
  data.delete_if { |k| k.tags['hidden'] == true }
end
massage_data() click to toggle source
# File lib/wavefront-cli/display/source.rb, line 35
def massage_data
  return if options[:all]

  drop_cluster_sources
  drop_hidden_sources
end
terse_data() click to toggle source
# File lib/wavefront-cli/display/source.rb, line 29
def terse_data
  @data.map! do |e|
    { id: e[:id], description: e[:description] || '<no description>' }
  end
end