Sha256: 1bd597930b898c49fa1ca044d5eff6fa88de81d910e617e5c1abaedd2fd28da5

Contents?: true

Size: 1.04 KB

Versions: 1

Compression:

Stored size: 1.04 KB

Contents

# frozen_string_literal: true

module Saml
  module Kit
    module XmlTemplatable
      include ::Xml::Kit::Templatable

      def template_path
        root_path = __dir__
        template_name = "#{self.class.name.split('::').last.underscore}.builder"
        File.join(root_path, 'builders/templates/', template_name)
      end

      # Returns true if an embedded signature is requested and at least one signing certificate is available via the configuration.
      def sign?
        return configuration.sign? if embed_signature.nil?
        (embed_signature && configuration.sign?) ||
          (embed_signature && signing_key_pair.present?)
      end

      def encrypt_with(key_pair)
        self.encrypt = true
        self.encryption_certificate = key_pair.certificate
      end

      def digest_method
        configuration.digest_method
      end

      def signature_method
        configuration.signature_method
      end

      def signing_key_pair
        @signing_key_pair || configuration.key_pairs(use: :signing).last
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
saml-kit-1.0.10 lib/saml/kit/xml_templatable.rb