class Securetrading::Connection
Attributes
config_options[R]
Public Instance Methods
to_xml()
click to toggle source
# File lib/securetrading/connection.rb, line 16 def to_xml Ox.dump(ox_xml) end
Private Instance Methods
config()
click to toggle source
# File lib/securetrading/connection.rb, line 24 def config @config ||= configuration end
configuration()
click to toggle source
# File lib/securetrading/connection.rb, line 28 def configuration return Securetrading.config unless config_options.present? Configuration.new(config_options) end
doc()
click to toggle source
# File lib/securetrading/connection.rb, line 33 def doc @doc ||= XmlDoc.new(request_type, @account_type, config.user).doc end
dynamic_headers()
click to toggle source
# File lib/securetrading/connection.rb, line 52 def dynamic_headers { 'Authorization' => "Basic #{config.auth}" } end
ox_xml()
click to toggle source
# File lib/securetrading/connection.rb, line 41 def ox_xml fail NotImplementedError, 'Implement :ox_xml method in sub-class!' end
perform_with(method, xml, options = {})
click to toggle source
# File lib/securetrading/connection.rb, line 45 def perform_with(method, xml, options = {}) party = self.class.public_send( method, '/', options.merge(body: xml, headers: dynamic_headers) ) Securetrading::Response.new(party) end
prepare_doc() { || ... }
click to toggle source
# File lib/securetrading/connection.rb, line 56 def prepare_doc return doc if xml_prepared? yield @xml_prepared = true doc end
request_type()
click to toggle source
# File lib/securetrading/connection.rb, line 37 def request_type fail NotImplementedError, 'Implement :request_type method in sub-class!' end
xml_prepared?()
click to toggle source
# File lib/securetrading/connection.rb, line 63 def xml_prepared? @xml_prepared end