class Transbank::Webpay::Request
Attributes
action[RW]
client[RW]
document[RW]
params[RW]
Public Class Methods
new(wsdl_url, action, params = {})
click to toggle source
# File lib/transbank/webpay/request.rb, line 6 def initialize(wsdl_url, action, params = {}) @params = params @action = action @document = Document.new(action, params) @client = Client.new wsdl_url end
Public Instance Methods
response()
click to toggle source
# File lib/transbank/webpay/request.rb, line 13 def response rescue_exceptions = Transbank::Webpay.configuration.rescue_exceptions @response ||= begin Response.new client.post(document.to_xml), action, params rescue match_class(rescue_exceptions) => error ExceptionResponse.new error, action, params end end
Private Instance Methods
match_class(exceptions)
click to toggle source
# File lib/transbank/webpay/request.rb, line 25 def match_class(exceptions) m = Module.new (class << m; self; end).instance_eval do define_method(:===) do |error| (exceptions || []).include? error.class end end m end