Class: Fog::Identity::OpenStack::V3::Group

Inherits:
Model
  • Object
show all
Defined in:
lib/fog/openstack/models/identity_v3/group.rb

Instance Method Summary collapse

Instance Method Details

#add_user(user_id) ⇒ Object



43
44
45
46
# File 'lib/fog/openstack/models/identity_v3/group.rb', line 43

def add_user user_id
  requires :id
  service.add_user_to_group(self.id, user_id)
end

#check_role(role_id) ⇒ Object



73
74
75
76
77
78
79
80
81
# File 'lib/fog/openstack/models/identity_v3/group.rb', line 73

def check_role(role_id)
  requires :id, :domain_id
  begin
    service.check_domain_group_role(self.domain_id, self.id, role_id)
  rescue Fog::Identity::OpenStack::NotFound
    return false
  end
  return true
end

#contains_user?(user_id) ⇒ Boolean

Returns:

  • (Boolean)


53
54
55
56
57
58
59
60
61
# File 'lib/fog/openstack/models/identity_v3/group.rb', line 53

def contains_user? user_id
  requires :id
  begin
    service.group_user_check(self.id, user_id)
  rescue Fog::Identity::OpenStack::NotFound
    return false
  end
  return true
end

#createObject



37
38
39
40
41
# File 'lib/fog/openstack/models/identity_v3/group.rb', line 37

def create
  merge_attributes(
      service.create_group(attributes).body['group'])
  self
end

#destroyObject



19
20
21
22
23
# File 'lib/fog/openstack/models/identity_v3/group.rb', line 19

def destroy
  requires :id
  service.delete_group(self.id)
  true
end

#grant_role(role_id) ⇒ Object



68
69
70
71
# File 'lib/fog/openstack/models/identity_v3/group.rb', line 68

def grant_role(role_id)
  requires :id, :domain_id
  service.grant_domain_group_role(self.domain_id, self.id, role_id)
end

#remove_user(user_id) ⇒ Object



48
49
50
51
# File 'lib/fog/openstack/models/identity_v3/group.rb', line 48

def remove_user user_id
  requires :id
  service.remove_user_from_group(self.id, user_id)
end

#revoke_role(role_id) ⇒ Object



83
84
85
86
# File 'lib/fog/openstack/models/identity_v3/group.rb', line 83

def revoke_role(role_id)
  requires :id, :domain_id
  service.revoke_domain_group_role(self.domain_id, self.id, role_id)
end

#rolesObject



63
64
65
66
# File 'lib/fog/openstack/models/identity_v3/group.rb', line 63

def roles
  requires :id, :domain_id
  service.list_domain_group_roles(self.domain_id, self.id).body['roles']
end

#saveObject



32
33
34
35
# File 'lib/fog/openstack/models/identity_v3/group.rb', line 32

def save
  requires :name
  identity ? update : create
end

#to_sObject



15
16
17
# File 'lib/fog/openstack/models/identity_v3/group.rb', line 15

def to_s
  self.name
end

#update(attr = nil) ⇒ Object



25
26
27
28
29
30
# File 'lib/fog/openstack/models/identity_v3/group.rb', line 25

def update(attr = nil)
  requires :id
  merge_attributes(
      service.update_group(self.id, attr || attributes).body['group'])
  self
end

#users(attr = {}) ⇒ Object



88
89
90
91
# File 'lib/fog/openstack/models/identity_v3/group.rb', line 88

def users(attr = {})
  requires :id
  service.list_group_users(self.id, attr).body['users']
end