class SensuCli::Filter
Attributes
filter[R]
Public Class Methods
new(filter_data)
click to toggle source
# File lib/sensu-cli/filter.rb, line 5 def initialize(filter_data) filter_split(filter_data) end
Public Instance Methods
filter_split(filter)
click to toggle source
# File lib/sensu-cli/filter.rb, line 9 def filter_split(filter) @filter = filter.sub(' ', '').split(',') end
inspect_hash(data)
click to toggle source
# File lib/sensu-cli/filter.rb, line 17 def inspect_hash(data) data.any? do |key, value| if value.is_a?(Array) match?(value) if key == filter[0] elsif value.is_a?(Hash) process(value) else match?(value) if key == filter[0] end end end
match?(data)
click to toggle source
# File lib/sensu-cli/filter.rb, line 13 def match?(data) data.to_s.include? filter[1] end
process(data)
click to toggle source
# File lib/sensu-cli/filter.rb, line 29 def process(data) if data.is_a?(Array) data.select do |value| process(value) end elsif data.is_a?(Hash) inspect_hash(data) end end