Class: AptControl::CLI::Status

Inherits:
Object
  • Object
show all
Includes:
Common
Defined in:
lib/apt_control/cli/status.rb

Instance Method Summary collapse

Methods included from Common

#apt_site, #build_archive, #control_file, #each_package_state, #fs_listener_factory, #includer, #logger, #notifier, #notify, #package_states, #validate_config!

Instance Method Details

#runObject



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/apt_control/cli/status.rb', line 9

def run
  validate_config!

  if options[:machine_readable]
    package_states.each do |state|
      fields = [
        state.dist.name,
        state.package_name,
        "(#{state.rule.restriction} #{state.rule.version})",
        "#{state.includeable? ? 'I' : '.'}#{state.satisfied? ? 'S' : '.'}",
        "included=#{state.included || '<none>'}",
        "available=#{state.available? ? state.available.join(', ') : '<none>'} "
      ]
      puts fields.join(' ')
    end
  else
    last_dist = nil
    package_states.each do |state|
      puts state.dist.name if last_dist != state.dist
      last_dist = state.dist
      puts "  #{state.package_name}"
      puts "    rule        - #{state.rule.restriction} #{state.rule.version}"
      puts "    included    - #{state.included}"
      puts "    available   - #{state.available.join(', ')}"
      puts "    satisfied   - #{state.satisfied?}"
      puts "    includeable - #{state.includeable?}"
    end
  end
end