Sha256: ef5bf603abf908c88371336eb66d82b777018712f4741dc5e00d22813fd86253

Contents?: true

Size: 1.07 KB

Versions: 7

Compression:

Stored size: 1.07 KB

Contents

module Eye::Controller::Helpers

  def set_proc_line
    str = "eye monitoring v#{Eye::VERSION}"
    str += " (#{@applications.map(&:name) * ', '})" if @applications.present?
    $0 = str
  end

  def process_by_name(name)
    all_processes.detect{|c| c.name == name}
  end

  def group_by_name(name)
    all_groups.detect{|c| c.name == name}
  end

  def application_by_name(name)
    @applications.detect{|c| c.name == name}
  end

  def all_processes
    processes = []
    all_groups.each do |gr|
      processes += gr.processes.to_a
    end

    processes
  end

  def all_groups
    groups = []
    @applications.each do |app|
      groups += app.groups.to_a
    end

    groups
  end

  # {'app_name' => {'group_name' => {'process_name' => 'pid_file'}}}
  def short_tree
    res = {}
    @applications.each do |app|
      res2 = {}

      app.groups.each do |group|
        res3 = {}

        group.processes.each do |process|
          res3[process.name] = process[:pid_file_ex]
        end

        res2[group.name] = res3
      end

      res[app.name] = res2
    end

    res
  end

end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
eye-0.3 lib/eye/controller/helpers.rb
eye-0.2.4 lib/eye/controller/helpers.rb
eye-0.2.3 lib/eye/controller/helpers.rb
eye-0.2.2 lib/eye/controller/helpers.rb
eye-0.2.1 lib/eye/controller/helpers.rb
eye-0.2 lib/eye/controller/helpers.rb
eye-0.1.11 lib/eye/controller/helpers.rb