class Eye::Group

Attributes

config[R]
hidden[R]
name[R]
processes[R]

Public Class Methods

new(name, config) click to toggle source
# File lib/eye/group.rb, line 18
def initialize(name, config)
  @name = name
  @config = config
  @processes = Eye::Utils::AliveArray.new
  @hidden = (name == '__default__')
  debug { 'created' }
end

Public Instance Methods

<=>(other) click to toggle source

to sort groups

# File lib/eye/group.rb, line 56
def <=>(other)
  if hidden
    1
  elsif other.hidden
    -1
  else
    name <=> other.name
  end
end
add_process(process) click to toggle source
# File lib/eye/group.rb, line 38
def add_process(process)
  @processes << process
end
app_name() click to toggle source
# File lib/eye/group.rb, line 30
def app_name
  @config[:application]
end
clear() click to toggle source
# File lib/eye/group.rb, line 47
def clear
  @processes = Eye::Utils::AliveArray.new
end
full_name() click to toggle source
# File lib/eye/group.rb, line 34
def full_name
  @full_name ||= "#{app_name}:#{@name}"
end
logger_tag() click to toggle source
# File lib/eye/group.rb, line 26
def logger_tag
  full_name
end
resort_processes() click to toggle source

sort processes in name order

# File lib/eye/group.rb, line 43
def resort_processes
  @processes = @processes.sort_by(&:name)
end
sub_object?(obj) click to toggle source
# File lib/eye/group.rb, line 51
def sub_object?(obj)
  @processes.include?(obj)
end