class Saml::ComplexTypes::StatementAbstractType

Public Class Methods

parse(xml, options = {}) click to toggle source

TODO: handle multiple statements with different types

Calls superclass method
# File lib/saml/complex_types/statement_abstract_type.rb, line 22
def self.parse(xml, options = {})
  statements = Array(super)
  statements.collect do |statement|
    if (type = types[statement.type])
      type.parse(xml, options.merge(single: true))
    else
      statement
    end
  end
end
register_type(type, klass) click to toggle source
# File lib/saml/complex_types/statement_abstract_type.rb, line 13
def self.register_type(type, klass)
  types[type] = klass
end
types() click to toggle source
# File lib/saml/complex_types/statement_abstract_type.rb, line 17
def self.types
  @types ||= {}
end