Sha256: 428d6893a6d2f10d6cc628df39f062c89b98096bd927054f27abfce6b777d67e

Contents?: true

Size: 1.13 KB

Versions: 5

Compression:

Stored size: 1.13 KB

Contents

module Saml
  module Kit
    module Builders
      # {include:file:lib/saml/kit/builders/templates/logout_response.builder}
      # {include:file:spec/saml/builders/logout_response_spec.rb}
      class LogoutResponse
        include XmlTemplatable
        attr_accessor :id, :issuer, :version, :status_code, :now, :destination
        attr_reader :request
        attr_reader :configuration

        def initialize(request, configuration: Saml::Kit.configuration)
          @configuration = configuration
          @id = ::Xml::Kit::Id.generate
          @issuer = configuration.issuer
          @now = Time.now.utc
          @request = request
          @status_code = Namespaces::SUCCESS
          @version = "2.0"
        end

        def build
          Saml::Kit::LogoutResponse.new(to_xml, request_id: request.id)
        end

        private

        def logout_response_options
          {
            xmlns: Namespaces::PROTOCOL,
            ID: id,
            Version: version,
            IssueInstant: now.utc.iso8601,
            Destination: destination,
            InResponseTo: request.id,
          }
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
saml-kit-0.3.5 lib/saml/kit/builders/logout_response.rb
saml-kit-0.3.4 lib/saml/kit/builders/logout_response.rb
saml-kit-0.3.3 lib/saml/kit/builders/logout_response.rb
saml-kit-0.3.2 lib/saml/kit/builders/logout_response.rb
saml-kit-0.3.1 lib/saml/kit/builders/logout_response.rb