class KeycloakAdmin::GroupClient
Public Class Methods
new(configuration, realm_client)
click to toggle source
Calls superclass method
KeycloakAdmin::Client::new
# File lib/keycloak-admin/client/group_client.rb, line 3 def initialize(configuration, realm_client) super(configuration) raise ArgumentError.new("realm must be defined") unless realm_client.name_defined? @realm_client = realm_client end
Public Instance Methods
create!(name, path = nil)
click to toggle source
# File lib/keycloak-admin/client/group_client.rb, line 16 def create!(name, path = nil) response = save(build(name, path)) created_id(response) end
groups_url(id=nil)
click to toggle source
# File lib/keycloak-admin/client/group_client.rb, line 29 def groups_url(id=nil) if id "#{@realm_client.realm_admin_url}/groups/#{id}" else "#{@realm_client.realm_admin_url}/groups" end end
list()
click to toggle source
# File lib/keycloak-admin/client/group_client.rb, line 9 def list response = execute_http do RestClient::Resource.new(groups_url, @configuration.rest_client_options).get(headers) end JSON.parse(response).map { |group_as_hash| GroupRepresentation.from_hash(group_as_hash) } end
save(group_representation)
click to toggle source
# File lib/keycloak-admin/client/group_client.rb, line 21 def save(group_representation) execute_http do RestClient::Resource.new(groups_url, @configuration.rest_client_options).post( group_representation.to_json, headers ) end end
Private Instance Methods
build(name, path)
click to toggle source
# File lib/keycloak-admin/client/group_client.rb, line 39 def build(name, path) group = GroupRepresentation.new group.name = name group.path = path group end