Method: Eye::Controller::Helpers#find_nearest_process

Defined in:
lib/eye/controller/helpers.rb

#find_nearest_process(name, group_name = nil, app_name = nil) ⇒ Object



31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# File 'lib/eye/controller/helpers.rb', line 31

def find_nearest_process(name, group_name = nil, app_name = nil)
  return process_by_full_name(name) if name.include?(':')

  if app_name
    app = application_by_name(app_name)
    app.groups.each do |gr|
      p = gr.processes.detect { |c| c.name == name }
      return p if p
    end
  end

  if group_name
    gr = group_by_name(group_name)
    p = gr.processes.detect { |c| c.name == name }
    return p if p
  end

  process_by_name(name)
end