class Epics::XMLSIG

Public Class Methods

new(app, options = {}) click to toggle source
Calls superclass method
# File lib/epics/middleware/xmlsig.rb, line 3
def initialize(app, options = {})
  super(app)
  @client = options[:client]
end

Public Instance Methods

call(env) click to toggle source
# File lib/epics/middleware/xmlsig.rb, line 8
def call(env)
  @signer = Epics::Signer.new(@client, env.request_body)
  @signer.digest!
  @signer.sign!

  env.request_body = @signer.doc.to_xml(save_with: Nokogiri::XML::Node::SaveOptions::AS_XML)
  @app.call(env)
end