Class: EnfApi::UserManager

Inherits:
Object
  • Object
show all
Includes:
Singleton
Defined in:
lib/enfapi/user.rb

Instance Method Summary collapse

Constructor Details

#initializeUserManager

Returns a new instance of UserManager.



20
21
22
23
# File 'lib/enfapi/user.rb', line 20

def initialize
  @version = "v3"
  @xcr_base_url = "/api/xcr/#{@version}"
end

Instance Method Details

#add_user_role(user_id, role_hash) ⇒ Object



45
46
47
48
49
# File 'lib/enfapi/user.rb', line 45

def add_user_role(user_id, role_hash)
  json = EnfApi::to_json(role_hash)
  url = "#{@xcr_base_url}/users/#{user_id}/roles"
  EnfApi::API.instance.post url, json
end

#delete_invite(invite_id) ⇒ Object



62
63
64
# File 'lib/enfapi/user.rb', line 62

def delete_invite(invite_id)
  EnfApi::API.instance.delete "#{@xcr_base_url}/invites/#{invite_id}"
end

#delete_user_roles(user_id, roles, network) ⇒ Object



39
40
41
42
43
# File 'lib/enfapi/user.rb', line 39

def delete_user_roles(user_id, roles, network)
  url = "#{@xcr_base_url}/users/#{user_id}/roles?roles=#{roles}"
  url += "&network=#{network}" if network
  EnfApi::API.instance.delete url
end

#get_user(email) ⇒ Object



29
30
31
# File 'lib/enfapi/user.rb', line 29

def get_user(email)
  EnfApi::API.instance.get "#{@xcr_base_url}/users/#{email}"
end

#invite(hash) ⇒ Object



57
58
59
60
# File 'lib/enfapi/user.rb', line 57

def invite(hash)
  json = EnfApi::to_json(hash)
  EnfApi::API.instance.post "#{@xcr_base_url}/invites", json
end

#list_invites(domain) ⇒ Object



51
52
53
54
55
# File 'lib/enfapi/user.rb', line 51

def list_invites(domain)
  url = "#{@xcr_base_url}/invites"
  url += "?domain=#{domain}" if domain
  EnfApi::API.instance.get url
end

#list_user_roles(user, network) ⇒ Object



33
34
35
36
37
# File 'lib/enfapi/user.rb', line 33

def list_user_roles(user, network)
  url = "#{@xcr_base_url}/users/#{user}/roles"
  url += "?network=#{network}" if network
  EnfApi::API.instance.get url
end

#list_users(query) ⇒ Object



25
26
27
# File 'lib/enfapi/user.rb', line 25

def list_users(query)
  EnfApi::API.instance.get "#{@xcr_base_url}/users#{query}"
end

#resend_invite(invite_id) ⇒ Object



66
67
68
# File 'lib/enfapi/user.rb', line 66

def resend_invite(invite_id)
  EnfApi::API.instance.put "#{@xcr_base_url}/invites/#{invite_id}", "{}"
end

#update_user_status(user_id, status) ⇒ Object



70
71
72
73
# File 'lib/enfapi/user.rb', line 70

def update_user_status(user_id, status)
  json = EnfApi::to_json(status)
  EnfApi::API.instance.put "#{@xcr_base_url}/users/#{user_id}/status", json
end