Class: OsCtld::Commands::User::Unregister
- Defined in:
- lib/osctld/commands/user/unregister.rb
Instance Attribute Summary
Attributes inherited from Base
#client, #client_handler, #id, #opts
Instance Method Summary collapse
Methods inherited from Base
#base_execute, #call_cmd, #call_cmd!, #error, #error!, handle, #handled, #indirect?, #initialize, #manipulate, #manipulation_holder, #ok, #progress, #request_stop, run, run!
Constructor Details
This class inherits a constructor from OsCtld::Commands::Base
Instance Method Details
#execute ⇒ Object
7 8 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 |
# File 'lib/osctld/commands/user/unregister.rb', line 7 def execute if opts[:all] DB::Users.get do |users| users.each do |u| next if opts[:pool] && u.pool.name != opts[:pool] next unless u.registered? begin unregister_user(u) rescue ResourceLocked => e progress("User #{u.ident} is locked, skipping") end end end else DB::Users.sync do u = DB::Users.find(opts[:name], opts[:pool]) return error('user not found') unless u return ok unless u.registered? unregister_user(u) end end ok end |
#unregister_user(u) ⇒ Object (protected)
37 38 39 40 41 42 43 |
# File 'lib/osctld/commands/user/unregister.rb', line 37 def unregister_user(u) manipulate(u) do progress("Unregistering user #{u.ident}") SystemUsers.remove(u.sysusername) u.registered = false end end |