Class: SAML2::NameID

Inherits:
Base
  • Object
show all
Defined in:
lib/saml2/name_id.rb

Defined Under Namespace

Modules: Format Classes: Policy

Instance Attribute Summary collapse

Attributes inherited from Base

#xml

Instance Method Summary collapse

Methods inherited from Base

#decrypt, from_xml, load_object_array, load_string_array, lookup_qname, #to_s, #to_xml

Constructor Details

#initialize(id = nil, format = nil, name_qualifier: nil, sp_name_qualifier: nil) ⇒ NameID

Returns a new instance of NameID.

Parameters:

  • id (String) (defaults to: nil)
  • format (defaults to: nil)

    optional [String]

  • name_qualifier (defaults to: nil)

    optional [String]

  • sp_name_qualifier (defaults to: nil)

    optional [String]



95
96
97
98
99
100
101
# File 'lib/saml2/name_id.rb', line 95

def initialize(id = nil, format = nil, name_qualifier: nil, sp_name_qualifier: nil)
  super()
  @id = id
  @format = format
  @name_qualifier = name_qualifier
  @sp_name_qualifier = sp_name_qualifier
end

Instance Attribute Details

#formatString?

Returns:

  • (String, nil)


81
82
83
# File 'lib/saml2/name_id.rb', line 81

def format
  @format
end

#idString

Returns:

  • (String)


79
80
81
# File 'lib/saml2/name_id.rb', line 79

def id
  @id
end

#name_qualifierString?

Returns:

  • (String, nil)


81
82
83
# File 'lib/saml2/name_id.rb', line 81

def name_qualifier
  @name_qualifier
end

#sp_name_qualifierString?

Returns:

  • (String, nil)


81
82
83
# File 'lib/saml2/name_id.rb', line 81

def sp_name_qualifier
  @sp_name_qualifier
end

Instance Method Details

#==(other) ⇒ Boolean

Parameters:

Returns:

  • (Boolean)


105
106
107
108
109
110
111
# File 'lib/saml2/name_id.rb', line 105

def ==(other)
  other.is_a?(NameID) &&
    id == other.id &&
    format == other.format &&
    name_qualifier == other.name_qualifier &&
    sp_name_qualifier == other.sp_name_qualifier
end

#build(builder, element: nil) ⇒ void

This method returns an undefined value.

Serialize this object to XML, as part of a larger document

Parameters:

  • builder (Nokogiri::XML::Builder)

    The builder helper object to serialize to.



114
115
116
117
118
119
120
# File 'lib/saml2/name_id.rb', line 114

def build(builder, element: nil)
  args = {}
  args["Format"] = format if format
  args["NameQualifier"] = name_qualifier if name_qualifier
  args["SPNameQualifier"] = sp_name_qualifier if sp_name_qualifier
  builder["saml"].__send__(element || "NameID", id, args)
end

#from_xml(node) ⇒ void

This method returns an undefined value.

Parse an XML element into this object.

Parameters:

  • node (Nokogiri::XML::Element)


84
85
86
87
88
89
# File 'lib/saml2/name_id.rb', line 84

def from_xml(node)
  self.id = node.content.strip
  self.format = node["Format"]
  self.name_qualifier = node["NameQualifier"]
  self.sp_name_qualifier = node["SPNameQualifier"]
end

#inspectString

Returns:

  • (String)


123
124
125
126
127
128
129
130
131
132
133
# File 'lib/saml2/name_id.rb', line 123

def inspect
  return id.inspect unless format || name_qualifier || sp_name_qualifier
  return "#{id.inspect}@#{format.inspect}" unless name_qualifier || sp_name_qualifier

  r = "#<SAML2::NameID id=#{id.inspect}"
  r << " format=#{format.inspect}" if format
  r << " name_qualifier=#{name_qualifier.inspect}" if name_qualifier
  r << " sp_name_qualifier=#{sp_name_qualifier.inspect}" if sp_name_qualifier
  r << ">"
  r
end