class Scim::Kit::V2::Configuration
Represents an application SCIM configuration.
Attributes
http[R]
resource_types[RW]
schemas[RW]
service_provider_configuration[RW]
Public Class Methods
new(http: Scim::Kit::Http.new) { |builder| ... }
click to toggle source
# File lib/scim/kit/v2/configuration.rb, line 43 def initialize(http: Scim::Kit::Http.new) @http = http @resource_types = {} @schemas = {} yield Builder.new(self) if block_given? end
Public Instance Methods
load_from(base_url)
click to toggle source
# File lib/scim/kit/v2/configuration.rb, line 51 def load_from(base_url) base_url = "#{base_url}/" uri = URI.join(base_url, 'ServiceProviderConfig') json = http.get(uri) self.service_provider_configuration = ServiceProviderConfiguration.parse(json, json) load_items(base_url, 'Schemas', Schema, schemas) load_items(base_url, 'ResourceTypes', ResourceType, resource_types) end
Private Instance Methods
load_items(base_url, path, type, items)
click to toggle source
# File lib/scim/kit/v2/configuration.rb, line 66 def load_items(base_url, path, type, items) hashes = http.get(URI.join(base_url, path)) hashes.each do |hash| item = type.from(hash) items[item.id] = item end end