Commit 7943293

mo <mo@mokhan.ca>
2017-11-18 01:49:40
remove query_string_parameter from base class.
1 parent 553eaf9
lib/saml/kit/authentication_request.rb
@@ -1,6 +1,7 @@
 module Saml
   module Kit
     class AuthenticationRequest < Document
+      include Requestable
       validates_presence_of :content
       validates_presence_of :acs_url, if: :login_request?
       validate :must_be_request
@@ -9,7 +10,7 @@ module Saml
       validate :must_match_xsd
 
       def initialize(xml)
-        super(xml, name: "AuthnRequest", query_string_parameter: 'SAMLRequest')
+        super(xml, name: "AuthnRequest")
       end
 
       def acs_url
lib/saml/kit/document.rb
@@ -6,10 +6,9 @@ module Saml
       include ActiveModel::Validations
       include Trustable
 
-      attr_reader :content, :name, :query_string_parameter
+      attr_reader :content, :name
 
-      def initialize(xml, name:, query_string_parameter:)
-        @query_string_parameter = query_string_parameter
+      def initialize(xml, name:)
         @content = xml
         @name = name
         @xml_hash = Hash.from_xml(xml) || {}
lib/saml/kit/logout_request.rb
@@ -1,6 +1,7 @@
 module Saml
   module Kit
     class LogoutRequest < Document
+      include Requestable
       validates_presence_of :content
       validates_presence_of :single_logout_service, if: :logout?
       validate :must_be_request
@@ -9,7 +10,7 @@ module Saml
       validate :must_match_xsd
 
       def initialize(xml)
-        super(xml, name: "LogoutRequest", query_string_parameter: 'SAMLRequest')
+        super(xml, name: "LogoutRequest")
       end
 
       def issue_instant
lib/saml/kit/logout_response.rb
@@ -4,7 +4,7 @@ module Saml
       include Respondable
 
       def initialize(xml)
-        super(xml, name: "LogoutResponse", query_string_parameter: 'SAMLResponse')
+        super(xml, name: "LogoutResponse")
       end
 
       def issue_instant
lib/saml/kit/requestable.rb
@@ -0,0 +1,9 @@
+module Saml
+  module Kit
+    module Requestable
+      def query_string_parameter
+        'SAMLRequest'
+      end
+    end
+  end
+end
lib/saml/kit/respondable.rb
@@ -1,6 +1,10 @@
 module Saml
   module Kit
     module Respondable
+      def query_string_parameter
+        'SAMLResponse'
+      end
+
       def status_code
         to_h.fetch(name, {}).fetch('Status', {}).fetch('StatusCode', {}).fetch('Value', nil)
       end
lib/saml/kit/response.rb
@@ -19,7 +19,7 @@ module Saml
 
       def initialize(xml, request_id: nil)
         @request_id = request_id
-        super(xml, name: "Response", query_string_parameter: 'SAMLResponse')
+        super(xml, name: "Response")
       end
 
       def name_id
lib/saml/kit.rb
@@ -15,6 +15,7 @@ require "xmldsig"
 require "saml/kit/serializable"
 require "saml/kit/xsd_validatable"
 require "saml/kit/respondable"
+require "saml/kit/requestable"
 require "saml/kit/trustable"
 require "saml/kit/document"