Sha256: 298d97d876075b79f47467cf43e0a561486a1cba2e97d20fef7cc6d445f7c3e0
Contents?: true
Size: 1.16 KB
Versions: 1
Compression:
Stored size: 1.16 KB
Contents
require 'net/http' require 'uri' module Maxipago module RequestBuilder class Request def initialize(maxipagoId, apikey) @maxipagoId = maxipagoId @apikey = apikey @api_version = Maxipago::Client::APIVERSION @header = { "Content-Type" => 'text/xml' } end def send_command(opts) xml = build_xml(opts) send_request(xml) end private def send_request(xml) set_uri set_http_session @http_session.start { |http| response = http.post(@uri.path, xml, @header) { header: response, body: response.body, message: response.message } } end def set_uri raise "This is an abstract method" end def build_xml(opts) raise "This is an abstract method" end def set_http_session @http_session = Net::HTTP.new(@uri.host, @uri.port) @http_session.use_ssl = true if @uri.scheme == "https" set_ssl_mode if @http_session.use_ssl? end def set_ssl_mode @http_session.verify_mode = OpenSSL::SSL::VERIFY_NONE @http_session.ssl_timeout = 30 end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
maxipago-0.1.13 | lib/maxipago/request_builder/request.rb |