Class: Cloudpassage::Accounts
Instance Method Summary
collapse
Methods included from Collection
#[], #get, #to_s
Methods inherited from Base
#[], #data, #method_missing, #object_symbol, #post, #reload, #wait_for
Constructor Details
#initialize(server, token, base_resource, data = nil) ⇒ Accounts
Returns a new instance of Accounts.
37
38
39
40
|
# File 'lib/cloudpassage/servers.rb', line 37
def initialize(server, token, base_resource, data=nil)
@server = server
super(token, base_resource, data)
end
|
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
in the class Cloudpassage::Base
Instance Method Details
#all ⇒ Object
46
47
48
|
# File 'lib/cloudpassage/servers.rb', line 46
def all
data.map{|i| get(i[:username], i)}
end
|
#create(username, groups = '', opts = {}) ⇒ Object
50
51
52
53
54
55
56
57
58
|
# File 'lib/cloudpassage/servers.rb', line 50
def create(username, groups = '', opts = {})
payload = {'account' => {
:username => username,
:comment => '',
:groups => groups,
:password => password_opts.merge(opts.fetch(:password, {})),
}}
@server.commands.get(post(payload)['command']['id'])
end
|
69
70
71
|
# File 'lib/cloudpassage/servers.rb', line 69
def
super.merge({'Content-Type'=>'application/json'})
end
|
#remove(username) ⇒ Object
65
66
67
|
# File 'lib/cloudpassage/servers.rb', line 65
def remove(username)
JSON.parse @base_resource[username].delete()
end
|
#reset(username, opts = {}) ⇒ Object
60
61
62
63
|
# File 'lib/cloudpassage/servers.rb', line 60
def reset(username, opts = {})
payload = {'password' => password_opts.merge(opts)}
JSON.parse @base_resource[username]['password'].put(payload.to_json, )
end
|
#singleton_class ⇒ Object
42
43
44
|
# File 'lib/cloudpassage/servers.rb', line 42
def singleton_class
Account
end
|