Module: Razor::CLI::Transforms

Defined in:
lib/razor/cli/transforms.rb

Class Method Summary collapse

Class Method Details

.count(arr) ⇒ Object



46
47
48
# File 'lib/razor/cli/transforms.rb', line 46

def count(arr)
  arr.size
end

.count_column(hash) ⇒ Object



43
44
45
# File 'lib/razor/cli/transforms.rb', line 43

def count_column(hash)
  hash['count']
end

.count_hash(hash) ⇒ Object



49
50
51
# File 'lib/razor/cli/transforms.rb', line 49

def count_hash(hash)
  hash.is_a?(Hash) ? hash.keys.size : 0
end

.event_entities(hash) ⇒ Object



60
61
62
63
64
# File 'lib/razor/cli/transforms.rb', line 60

def event_entities(hash)
  hash ||= {}
  fields = ['task', 'policy', 'broker', 'repo', 'node', 'command']
  shallow_hash(Hash[hash].keep_if {|k,_| fields.include?(k)})
end

.event_misc(hash) ⇒ Object



65
66
67
68
69
# File 'lib/razor/cli/transforms.rb', line 65

def event_misc(hash)
  hash ||= {}
  fields = ['task', 'policy', 'broker', 'repo', 'node', 'msg', 'command']
  shallow_hash(Hash[hash].delete_if {|k,_| fields.include?(k)})
end

.event_msg(obj) ⇒ Object



52
53
54
55
# File 'lib/razor/cli/transforms.rb', line 52

def event_msg(obj)
  raise Razor::CLI::HideColumnError if obj['msg'].nil?
  obj['msg'].to_s[0..50] + (obj['msg'].to_s.size > 50 ? '...' : '')
end

.full_event_msg(obj) ⇒ Object



56
57
58
59
# File 'lib/razor/cli/transforms.rb', line 56

def full_event_msg(obj)
  raise Razor::CLI::HideColumnError if obj['msg'].nil?
  obj['msg']
end

.identity(any) ⇒ Object



4
5
6
# File 'lib/razor/cli/transforms.rb', line 4

def identity(any)
  any
end

.if_present(obj) ⇒ Object



7
8
9
# File 'lib/razor/cli/transforms.rb', line 7

def if_present(obj)
  obj.nil? ? "---" : obj
end

.join_names(arr) ⇒ Object



10
11
12
# File 'lib/razor/cli/transforms.rb', line 10

def join_names(arr)
  (arr.nil? or arr.empty?) ? _('(none)') : arr.map { |item| item['name'] }.join(", ")
end

.mac(mac) ⇒ Object



23
24
25
# File 'lib/razor/cli/transforms.rb', line 23

def mac(mac)
  mac ? mac.gsub(/-/, ":") : "---"
end

.name(obj) ⇒ Object



26
27
28
# File 'lib/razor/cli/transforms.rb', line 26

def name(obj)
  obj ? obj['name'] : "---"
end

.name_hide_nil(obj) ⇒ Object



29
30
31
32
# File 'lib/razor/cli/transforms.rb', line 29

def name_hide_nil(obj)
  raise Razor::CLI::HideColumnError if obj.nil?
  obj['name']
end

.name_if_present(obj) ⇒ Object



33
34
35
# File 'lib/razor/cli/transforms.rb', line 33

def name_if_present(obj)
  obj ? obj['name'] : "---"
end

.name_or_whole(obj) ⇒ Object



36
37
38
39
40
41
42
# File 'lib/razor/cli/transforms.rb', line 36

def name_or_whole(obj)
  if obj
    (obj['name'] ? obj['name'] : obj)
  else
    '---'
  end
end

.nested(nested_obj) ⇒ Object



13
14
15
# File 'lib/razor/cli/transforms.rb', line 13

def nested(nested_obj)
  (nested_obj.nil? or nested_obj.empty?) ? _('(none)') : nested_obj.to_s
end

.node_log_entry(hash) ⇒ Object



70
71
72
73
# File 'lib/razor/cli/transforms.rb', line 70

def node_log_entry(hash)
  fields = ['event', 'timestamp', 'severity']
  shallow_hash(Hash[hash].delete_if {|k,_| fields.include?(k)})
end

.select_name(item) ⇒ Object



20
21
22
# File 'lib/razor/cli/transforms.rb', line 20

def select_name(item)
  item and item['name'] or "---"
end

.shallow_hash(hash) ⇒ Object



16
17
18
19
# File 'lib/razor/cli/transforms.rb', line 16

def shallow_hash(hash)
  (hash.nil? or hash.empty?) ? _('(none)') :
      hash.map {|key, val| "#{key}: #{val}"}.join(', ')
end