module Swa::CLI::DataOutput
Public Instance Methods
output_format=(arg)
click to toggle source
# File lib/swa/cli/data_output.rb, line 23 def output_format=(arg) arg = arg.upcase unless %w(JSON YAML).member?(arg) raise ArgumentError, "unrecognised data format: #{arg.inspect}" end @output_format = arg end
Protected Instance Methods
display_data(data, jmespath_expression = nil)
click to toggle source
# File lib/swa/cli/data_output.rb, line 44 def display_data(data, jmespath_expression = nil) unless jmespath_expression.nil? data = JMESPath.search(jmespath_expression, data) end puts format_data(data) rescue JMESPath::Errors::SyntaxError => e signal_error("invalid JMESPath expression") end
format_data(data)
click to toggle source
# File lib/swa/cli/data_output.rb, line 33 def format_data(data) case output_format when "JSON" MultiJson.dump(data, :pretty => true) when "YAML" YAML.dump(data) else raise "bad output format: #{output_format}" end end