332 end |
332 end |
333 |
333 |
334 function def_env.module:reload(name, hosts) |
334 function def_env.module:reload(name, hosts) |
335 local mm = require "modulemanager"; |
335 local mm = require "modulemanager"; |
336 |
336 |
337 hosts = get_hosts_set(hosts, name); |
337 hosts = array.collect(get_hosts_set(hosts, name)):sort(function (a, b) |
338 |
338 if a == "*" then return true |
|
339 elseif b == "*" then return false |
|
340 else return a < b; end |
|
341 end); |
|
342 |
339 -- Reload the module for each host |
343 -- Reload the module for each host |
340 local ok, err, count = true, nil, 0; |
344 local ok, err, count = true, nil, 0; |
341 for host in hosts do |
345 for _, host in ipairs(hosts) do |
342 if mm.is_loaded(host, name) then |
346 if mm.is_loaded(host, name) then |
343 ok, err = mm.reload(host, name); |
347 ok, err = mm.reload(host, name); |
344 if not ok then |
348 if not ok then |
345 ok = false; |
349 ok = false; |
346 self.session.print(err or "Unknown error reloading module"); |
350 self.session.print(err or "Unknown error reloading module"); |