Method: Eye::Group::Data#status_data

Defined in:
lib/eye/group/data.rb

#status_data(opts = {}) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/eye/group/data.rb', line 3

def status_data(opts = {})
  plist = @processes.map { |p| p.status_data(opts) }

  h = { name: name, type: :group, subtree: plist }

  h[:debug] = debug_data if opts[:debug]

  # show current chain
  if scheduled_call = @scheduled_call
    h[:current_command] = scheduled_call[:command]

    if (chain_commands = scheduler_commands_list) && chain_commands.present?
      h[:chain_commands] = chain_commands
    end

    if @chain_processes_current && @chain_processes_count
      h[:chain_progress] = [@chain_processes_current, @chain_processes_count]
    end
  end

  h
end