Class: SamlAuthenticatable::SamlMappedAttributes
- Inherits:
-
Object
- Object
- SamlAuthenticatable::SamlMappedAttributes
- Defined in:
- lib/devise_saml_authenticatable/saml_mapped_attributes.rb
Instance Method Summary collapse
-
#initialize(attributes, attribute_map) ⇒ SamlMappedAttributes
constructor
A new instance of SamlMappedAttributes.
- #resource_keys ⇒ Object
- #saml_attribute_keys ⇒ Object
- #value_by_resource_key(key) ⇒ Object
- #value_by_saml_attribute_key(key) ⇒ Object
Constructor Details
#initialize(attributes, attribute_map) ⇒ SamlMappedAttributes
Returns a new instance of SamlMappedAttributes.
3 4 5 6 |
# File 'lib/devise_saml_authenticatable/saml_mapped_attributes.rb', line 3 def initialize(attributes, attribute_map) @attributes = attributes @attribute_map = attribute_map end |
Instance Method Details
#resource_keys ⇒ Object
12 13 14 |
# File 'lib/devise_saml_authenticatable/saml_mapped_attributes.rb', line 12 def resource_keys @attribute_map.values end |
#saml_attribute_keys ⇒ Object
8 9 10 |
# File 'lib/devise_saml_authenticatable/saml_mapped_attributes.rb', line 8 def saml_attribute_keys @attribute_map.keys end |
#value_by_resource_key(key) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/devise_saml_authenticatable/saml_mapped_attributes.rb', line 16 def value_by_resource_key(key) str_key = String(key) # Find all of the SAML attributes that map to the resource key attribute_map_for_key = @attribute_map.select { |_, resource_key| String(resource_key) == str_key } saml_value = nil # Find the first non-nil value attribute_map_for_key.each_key do |saml_key| saml_value = value_by_saml_attribute_key(saml_key) break unless saml_value.nil? end saml_value end |
#value_by_saml_attribute_key(key) ⇒ Object
34 35 36 |
# File 'lib/devise_saml_authenticatable/saml_mapped_attributes.rb', line 34 def value_by_saml_attribute_key(key) @attributes[String(key)] end |