Class: Mastercard::Masterpass::MasterpassService
- Inherits:
-
Common::Connector
- Object
- Common::Connector
- Mastercard::Masterpass::MasterpassService
- Includes:
- REXML
- Defined in:
- lib/mastercard_masterpass_api/masterpass_service.rb
Constant Summary collapse
- OAUTH_TOKEN =
'oauth_token'- OAUTH_VERIFIER =
'oauth_verifier'- OAUTH_TOKEN_SECRET =
'oauth_token_secret'- OAUTH_CALLBACK =
'oauth_callback'- OAUTH_CALLBACK_CONFIRMED =
'oauth_callback_confirmed'- OAUTH_EXPIRES_IN =
'oauth_expires_in'- REALM =
"realm"- REALM_TYPE =
"eWallet"- ORIGIN_URL =
"originUrl"- REQUEST_AUTH_URL =
"xoauth_request_auth_url"- URL_FORMAT =
"?oauth_token%s&acceptable_cards=%s&checkout_identifier=%s&version=%s"- SUPPRESS_SHIPPING_URL_PARAMETER =
"&suppress_shipping_address="- AUTH_LEVEL_BASIC_URL_PARAMETER =
"&auth_level=basic"- ACCEPT_REWARD_PROGRAM =
"accept_reward_program"- SHIPPING_LOCATION_PROFILE =
"shipping_location_profile"- DEFAULT_VERSION =
"v1"- XML_VERSION_REGEX =
"v[0-9]+"
Instance Attribute Summary collapse
-
#origin_url ⇒ Object
Returns the value of attribute origin_url.
Instance Method Summary collapse
- #get_access_token(access_url, request_token, oauth_verifier) ⇒ Object
- #get_express_checkout_data(express_checkout_url, express_checkout_request_xml, access_token) ⇒ Object
- #get_long_access_token(access_url, request_token, oauth_verifier) ⇒ Object
- #get_pairing_token(request_url, callback_url) ⇒ Object
- #get_payment_shipping_resource(checkout_resource_url, access_token) ⇒ Object
- #get_precheckout_data(precheckout_url, precheckout_xml, access_token) ⇒ Object
- #get_request_token(request_url, callback_url) ⇒ Object
-
#initialize(consumer_key, private_key, origin_url, environment) ⇒ MasterpassService
constructor
A new instance of MasterpassService.
- #oauth_parameters_factory ⇒ Object
- #post_checkout_transaction(postback_url, merchant_transactions_xml) ⇒ Object
- #post_merchant_init_data(merchant_init_url, merchant_init_xml) ⇒ Object
- #post_shopping_cart_data(shopping_cart_url, shopping_cart_xml) ⇒ Object
Constructor Details
#initialize(consumer_key, private_key, origin_url, environment) ⇒ MasterpassService
Returns a new instance of MasterpassService.
35 36 37 38 39 |
# 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 |
Instance Attribute Details
#origin_url ⇒ Object
Returns the value of attribute origin_url.
10 11 12 |
# File 'lib/mastercard_masterpass_api/masterpass_service.rb', line 10 def origin_url @origin_url end |
Instance Method Details
#get_access_token(access_url, request_token, oauth_verifier) ⇒ Object
54 55 56 57 58 59 |
# 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) ⇒ Object
98 99 100 101 102 103 |
# 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) ⇒ Object
65 66 67 |
# 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) ⇒ Object
61 62 63 |
# 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) ⇒ Object
84 85 86 87 88 89 90 91 92 |
# 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) ⇒ Object
77 78 79 80 81 82 |
# 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) ⇒ Object
47 48 49 50 51 52 |
# 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 ⇒ Object
41 42 43 44 45 |
# 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) ⇒ Object
94 95 96 |
# 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) ⇒ Object
73 74 75 |
# 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) ⇒ Object
69 70 71 |
# 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 |