Class: RippleKeycloak::Group

Inherits:
BaseModel show all
Defined in:
lib/ripple_keycloak/group.rb

Class Method Summary collapse

Methods inherited from BaseModel

all, delete, find, find_by, object_type, search

Class Method Details

.add_role(group_id, role_name) ⇒ Object



17
18
19
20
# File 'lib/ripple_keycloak/group.rb', line 17

def add_role(group_id, role_name)
  role = RippleKeycloak::Role.find_by(field: 'name', value: role_name)
  client.post("groups/#{group_id}/role-mappings/realm", [role])
end

.create(name:, parent: false) ⇒ Object



8
9
10
11
12
13
14
15
# File 'lib/ripple_keycloak/group.rb', line 8

def create(name:, parent: false)
  payload = { name: name }
  path = create_path(parent)
  response = client.post(path, payload)
  group_id = response.headers['location'].split('/').last

  group_id
end

.members(group_id) ⇒ Object



27
28
29
# File 'lib/ripple_keycloak/group.rb', line 27

def members(group_id)
  client.get("groups/#{group_id}/members")
end

.remove_role(group_id, role_name) ⇒ Object



22
23
24
25
# File 'lib/ripple_keycloak/group.rb', line 22

def remove_role(group_id, role_name)
  role = RippleKeycloak::Role.find_by(field: 'name', value: role_name)
  client.delete("groups/#{group_id}/role-mappings/realm", [role])
end