Methods
Classes and Modules
Class PhusionPassenger::AdminTools::ControlProcess::Instance
Attributes
[RW] path
[RW] pid
Public Class methods
for_pid(pid)
    # File lib/phusion_passenger/admin_tools/control_process.rb, line 59
59:         def self.for_pid(pid)
60:                 return list(false).find { |c| c.pid == pid }
61:         end
list(clean_stale = true)
    # File lib/phusion_passenger/admin_tools/control_process.rb, line 41
41:         def self.list(clean_stale = true)
42:                 results = []
43:                 Dir["#{AdminTools.tmpdir}/passenger.*"].each do |dir|
44:                         next if dir !~ /passenger.(\d+)\Z/
45:                         begin
46:                                 results << ControlProcess.new(dir)
47:                         rescue ArgumentError
48:                                 # Stale Passenger temp folder. Clean it up if instructed.
49:                                 if clean_stale
50:                                         puts "*** Cleaning stale folder #{dir}"
51:                                         FileUtils.chmod_R(0700, dir) rescue nil
52:                                         FileUtils.rm_rf(dir)
53:                                 end
54:                         end
55:                 end
56:                 return results
57:         end
new(path)
    # File lib/phusion_passenger/admin_tools/control_process.rb, line 63
63:         def initialize(path)
64:                 @path = path
65:                 if File.exist?("#{path}/control_process.pid")
66:                         @pid = File.read("#{path}/control_process.pid").strip.to_i
67:                 else
68:                         path =~ /passenger.(\d+)\Z/
69:                         @pid = $1.to_i
70:                 end
71:                 if !AdminTools.process_is_alive?(@pid)
72:                         raise ArgumentError, "There is no control process with PID #{@pid}."
73:                 end
74:         end
Public Instance methods
domains()
    # File lib/phusion_passenger/admin_tools/control_process.rb, line 86
86:         def domains
87:                 reload
88:                 return @domains
89:         end
instances()
    # File lib/phusion_passenger/admin_tools/control_process.rb, line 91
91:         def instances
92:                 return domains.map do |domain|
93:                         domain[:instances]
94:                 end.flatten
95:         end
status()
    # File lib/phusion_passenger/admin_tools/control_process.rb, line 76
76:         def status
77:                 reload
78:                 return @status
79:         end
xml()
    # File lib/phusion_passenger/admin_tools/control_process.rb, line 81
81:         def xml
82:                 reload
83:                 return @xml
84:         end