class Mastercard::Masterpass::MasterpassService
Constants
- ACCEPT_REWARD_PROGRAM
- AUTH_LEVEL_BASIC_URL_PARAMETER
- DEFAULT_VERSION
- OAUTH_CALLBACK
- OAUTH_CALLBACK_CONFIRMED
- OAUTH_EXPIRES_IN
- OAUTH_TOKEN
- OAUTH_TOKEN_SECRET
- OAUTH_VERIFIER
- ORIGIN_URL
- REALM
- REALM_TYPE
- REQUEST_AUTH_URL
- SHIPPING_LOCATION_PROFILE
- SUPPRESS_SHIPPING_URL_PARAMETER
- URL_FORMAT
- XML_VERSION_REGEX
Attributes
origin_url[RW]
Public Class Methods
new(consumer_key, private_key, origin_url, environment)
click to toggle source
Calls superclass method
# File lib/mastercard_masterpass_api/masterpass_service.rb, line 35 def initialize(consumer_key, private_key, origin_url, environment) super(consumer_key, private_key) @environment = environment @origin_url = origin_url end
Public Instance Methods
get_access_token(access_url, request_token, oauth_verifier)
click to toggle source
# File lib/mastercard_masterpass_api/masterpass_service.rb, line 54 def get_access_token(access_url, request_token, oauth_verifier) params = self.oauth_parameters_factory params.add_parameter OAUTH_TOKEN, request_token params.add_parameter OAUTH_VERIFIER, oauth_verifier response = parse_access_token_response(do_request(access_url, POST, EMPTY_STRING, params)) end
get_express_checkout_data(express_checkout_url, express_checkout_request_xml, access_token)
click to toggle source
# File lib/mastercard_masterpass_api/masterpass_service.rb, line 98 def get_express_checkout_data(express_checkout_url, express_checkout_request_xml, access_token) params = self.oauth_parameters_factory params.add_parameter OAUTH_TOKEN, access_token response = do_request(express_checkout_url, POST, express_checkout_request_xml, params) response end
get_long_access_token(access_url, request_token, oauth_verifier)
click to toggle source
# File lib/mastercard_masterpass_api/masterpass_service.rb, line 65 def get_long_access_token(access_url, request_token, oauth_verifier) response = get_access_token(access_url, request_token, oauth_verifier) end
get_pairing_token(request_url, callback_url)
click to toggle source
# File lib/mastercard_masterpass_api/masterpass_service.rb, line 61 def get_pairing_token(request_url, callback_url) response = get_request_token(request_url, callback_url) end
get_payment_shipping_resource(checkout_resource_url, access_token)
click to toggle source
# File lib/mastercard_masterpass_api/masterpass_service.rb, line 84 def get_payment_shipping_resource(checkout_resource_url, access_token) if (checkout_resource_url == nil || access_token ==nil) raise "cannot process payment shipping resource request without url and token" end params = self.oauth_parameters_factory params.add_parameter OAUTH_TOKEN, access_token response = do_request(checkout_resource_url, GET, nil, params) end
get_precheckout_data(precheckout_url, precheckout_xml, access_token)
click to toggle source
# File lib/mastercard_masterpass_api/masterpass_service.rb, line 77 def get_precheckout_data(precheckout_url, precheckout_xml, access_token) params = self.oauth_parameters_factory params.add_parameter OAUTH_TOKEN, access_token response = post_xml_data(precheckout_url, precheckout_xml, params) end
get_request_token(request_url, callback_url)
click to toggle source
# File lib/mastercard_masterpass_api/masterpass_service.rb, line 47 def get_request_token(request_url, callback_url) params = self.oauth_parameters_factory params.add_parameter OAUTH_CALLBACK, callback_url response = parse_request_token_response(do_request(request_url, POST, EMPTY_STRING, params)) end
oauth_parameters_factory()
click to toggle source
Calls superclass method
# File lib/mastercard_masterpass_api/masterpass_service.rb, line 41 def oauth_parameters_factory params = super params.add_parameter REALM, REALM_TYPE params end
post_checkout_transaction(postback_url, merchant_transactions_xml)
click to toggle source
# File lib/mastercard_masterpass_api/masterpass_service.rb, line 94 def post_checkout_transaction(postback_url, merchant_transactions_xml) response = post_xml_data(postback_url, merchant_transactions_xml.to_s) end
post_merchant_init_data(merchant_init_url, merchant_init_xml)
click to toggle source
# File lib/mastercard_masterpass_api/masterpass_service.rb, line 73 def post_merchant_init_data(merchant_init_url, merchant_init_xml) response = post_xml_data(merchant_init_url, merchant_init_xml) end
post_shopping_cart_data(shopping_cart_url, shopping_cart_xml)
click to toggle source
# File lib/mastercard_masterpass_api/masterpass_service.rb, line 69 def post_shopping_cart_data(shopping_cart_url, shopping_cart_xml) response = post_xml_data(shopping_cart_url, shopping_cart_xml) end
Private Instance Methods
parse_access_token_response(response)
click to toggle source
# File lib/mastercard_masterpass_api/masterpass_service.rb, line 120 def parse_access_token_response(response) vars = CGI::parse(response) response_token = Mastercard::Masterpass::AccessTokenResponse.new vars.each do |v| method = v[0] value = vars[method][0] response_token.class.send(:define_method, method.to_sym) do value end end response_token end
parse_request_token_response(response)
click to toggle source
# File lib/mastercard_masterpass_api/masterpass_service.rb, line 107 def parse_request_token_response(response) vars = CGI::parse(response) response_token = Mastercard::Masterpass::RequestTokenResponse.new vars.each do |v| method = v[0] value = vars[method][0] response_token.class.send(:define_method, method.to_sym) do value end end response_token end
post_xml_data(url, xml_data, params=nil)
click to toggle source
# File lib/mastercard_masterpass_api/masterpass_service.rb, line 133 def post_xml_data(url, xml_data, params=nil) if (xml_data == nil) raise "XML Data cannot be nil" end params = oauth_parameters_factory if !params response = do_request(url,POST,xml_data,params) return response end