paypal-server-sdk 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/LICENSE +35 -0
- data/README.md +112 -0
- data/lib/paypal_server_sdk/api_helper.rb +10 -0
- data/lib/paypal_server_sdk/client.rb +85 -0
- data/lib/paypal_server_sdk/configuration.rb +109 -0
- data/lib/paypal_server_sdk/controllers/base_controller.rb +71 -0
- data/lib/paypal_server_sdk/controllers/o_auth_authorization_controller.rb +42 -0
- data/lib/paypal_server_sdk/controllers/orders_controller.rb +517 -0
- data/lib/paypal_server_sdk/controllers/payments_controller.rb +404 -0
- data/lib/paypal_server_sdk/controllers/vault_controller.rb +224 -0
- data/lib/paypal_server_sdk/exceptions/api_exception.rb +10 -0
- data/lib/paypal_server_sdk/exceptions/error_exception.rb +71 -0
- data/lib/paypal_server_sdk/exceptions/o_auth_provider_exception.rb +48 -0
- data/lib/paypal_server_sdk/http/api_response.rb +21 -0
- data/lib/paypal_server_sdk/http/auth/o_auth2.rb +136 -0
- data/lib/paypal_server_sdk/http/http_call_back.rb +10 -0
- data/lib/paypal_server_sdk/http/http_method_enum.rb +10 -0
- data/lib/paypal_server_sdk/http/http_request.rb +10 -0
- data/lib/paypal_server_sdk/http/http_response.rb +10 -0
- data/lib/paypal_server_sdk/logging/configuration/api_logging_configuration.rb +114 -0
- data/lib/paypal_server_sdk/logging/sdk_logger.rb +17 -0
- data/lib/paypal_server_sdk/models/activity_timestamps.rb +68 -0
- data/lib/paypal_server_sdk/models/address.rb +116 -0
- data/lib/paypal_server_sdk/models/address_details.rb +160 -0
- data/lib/paypal_server_sdk/models/amount_breakdown.rb +115 -0
- data/lib/paypal_server_sdk/models/amount_with_breakdown.rb +80 -0
- data/lib/paypal_server_sdk/models/apple_pay_attributes.rb +60 -0
- data/lib/paypal_server_sdk/models/apple_pay_attributes_response.rb +50 -0
- data/lib/paypal_server_sdk/models/apple_pay_card.rb +94 -0
- data/lib/paypal_server_sdk/models/apple_pay_card_response.rb +167 -0
- data/lib/paypal_server_sdk/models/apple_pay_decrypted_token_data.rb +95 -0
- data/lib/paypal_server_sdk/models/apple_pay_payment_data.rb +83 -0
- data/lib/paypal_server_sdk/models/apple_pay_payment_data_type.rb +24 -0
- data/lib/paypal_server_sdk/models/apple_pay_payment_object.rb +114 -0
- data/lib/paypal_server_sdk/models/apple_pay_payment_token.rb +51 -0
- data/lib/paypal_server_sdk/models/apple_pay_request.rb +137 -0
- data/lib/paypal_server_sdk/models/apple_pay_tokenized_card.rb +113 -0
- data/lib/paypal_server_sdk/models/assurance_details.rb +68 -0
- data/lib/paypal_server_sdk/models/authentication_response.rb +61 -0
- data/lib/paypal_server_sdk/models/authorization.rb +192 -0
- data/lib/paypal_server_sdk/models/authorization_incomplete_reason.rb +23 -0
- data/lib/paypal_server_sdk/models/authorization_status.rb +35 -0
- data/lib/paypal_server_sdk/models/authorization_status_details.rb +50 -0
- data/lib/paypal_server_sdk/models/authorization_status_with_details.rb +60 -0
- data/lib/paypal_server_sdk/models/authorization_with_additional_data.rb +205 -0
- data/lib/paypal_server_sdk/models/avs_code.rb +90 -0
- data/lib/paypal_server_sdk/models/bancontact_payment_object.rb +95 -0
- data/lib/paypal_server_sdk/models/bancontact_payment_request.rb +73 -0
- data/lib/paypal_server_sdk/models/base_model.rb +62 -0
- data/lib/paypal_server_sdk/models/bin_details.rb +88 -0
- data/lib/paypal_server_sdk/models/blik_experience_context.rb +122 -0
- data/lib/paypal_server_sdk/models/blik_level0_payment_object.rb +48 -0
- data/lib/paypal_server_sdk/models/blik_one_click_payment_object.rb +52 -0
- data/lib/paypal_server_sdk/models/blik_one_click_payment_request.rb +82 -0
- data/lib/paypal_server_sdk/models/blik_payment_object.rb +86 -0
- data/lib/paypal_server_sdk/models/blik_payment_request.rb +105 -0
- data/lib/paypal_server_sdk/models/capture.rb +228 -0
- data/lib/paypal_server_sdk/models/capture_incomplete_reason.rb +55 -0
- data/lib/paypal_server_sdk/models/capture_payment_instruction.rb +89 -0
- data/lib/paypal_server_sdk/models/capture_request.rb +108 -0
- data/lib/paypal_server_sdk/models/capture_status.rb +35 -0
- data/lib/paypal_server_sdk/models/capture_status_details.rb +50 -0
- data/lib/paypal_server_sdk/models/capture_status_with_details.rb +60 -0
- data/lib/paypal_server_sdk/models/captured_payment.rb +248 -0
- data/lib/paypal_server_sdk/models/card_attributes.rb +70 -0
- data/lib/paypal_server_sdk/models/card_attributes_response.rb +50 -0
- data/lib/paypal_server_sdk/models/card_authentication_response.rb +51 -0
- data/lib/paypal_server_sdk/models/card_brand.rb +93 -0
- data/lib/paypal_server_sdk/models/card_customer_information.rb +85 -0
- data/lib/paypal_server_sdk/models/card_experience_context.rb +59 -0
- data/lib/paypal_server_sdk/models/card_from_request.rb +60 -0
- data/lib/paypal_server_sdk/models/card_payment_token.rb +166 -0
- data/lib/paypal_server_sdk/models/card_request.rb +176 -0
- data/lib/paypal_server_sdk/models/card_response.rb +139 -0
- data/lib/paypal_server_sdk/models/card_response_entity.rb +156 -0
- data/lib/paypal_server_sdk/models/card_stored_credential.rb +95 -0
- data/lib/paypal_server_sdk/models/card_supplementary_data.rb +71 -0
- data/lib/paypal_server_sdk/models/card_type.rb +32 -0
- data/lib/paypal_server_sdk/models/card_vault_response.rb +86 -0
- data/lib/paypal_server_sdk/models/card_verification.rb +51 -0
- data/lib/paypal_server_sdk/models/card_verification_details.rb +111 -0
- data/lib/paypal_server_sdk/models/card_verification_method.rb +29 -0
- data/lib/paypal_server_sdk/models/card_verification_processor_response.rb +62 -0
- data/lib/paypal_server_sdk/models/checkout_payment_intent.rb +24 -0
- data/lib/paypal_server_sdk/models/cobranded_card.rb +70 -0
- data/lib/paypal_server_sdk/models/confirm_order_request.rb +74 -0
- data/lib/paypal_server_sdk/models/customer_information.rb +72 -0
- data/lib/paypal_server_sdk/models/customer_request.rb +62 -0
- data/lib/paypal_server_sdk/models/customer_vault_payment_tokens_response.rb +105 -0
- data/lib/paypal_server_sdk/models/cvv_code.rb +60 -0
- data/lib/paypal_server_sdk/models/disbursement_mode.rb +23 -0
- data/lib/paypal_server_sdk/models/dispute_category.rb +23 -0
- data/lib/paypal_server_sdk/models/eci_flag.rb +39 -0
- data/lib/paypal_server_sdk/models/enrollment_status.rb +29 -0
- data/lib/paypal_server_sdk/models/eps_payment_object.rb +74 -0
- data/lib/paypal_server_sdk/models/eps_payment_request.rb +73 -0
- data/lib/paypal_server_sdk/models/error_details.rb +110 -0
- data/lib/paypal_server_sdk/models/exchange_rate.rb +75 -0
- data/lib/paypal_server_sdk/models/experience_context.rb +98 -0
- data/lib/paypal_server_sdk/models/fullfillment_type.rb +31 -0
- data/lib/paypal_server_sdk/models/giropay_payment_object.rb +74 -0
- data/lib/paypal_server_sdk/models/giropay_payment_request.rb +73 -0
- data/lib/paypal_server_sdk/models/google_pay_authentication_method.rb +23 -0
- data/lib/paypal_server_sdk/models/google_pay_card_attributes.rb +51 -0
- data/lib/paypal_server_sdk/models/google_pay_card_response.rb +104 -0
- data/lib/paypal_server_sdk/models/google_pay_decrypted_token_data.rb +105 -0
- data/lib/paypal_server_sdk/models/google_pay_payment_method.rb +20 -0
- data/lib/paypal_server_sdk/models/google_pay_request.rb +118 -0
- data/lib/paypal_server_sdk/models/google_pay_request_card.rb +84 -0
- data/lib/paypal_server_sdk/models/google_pay_wallet_response.rb +85 -0
- data/lib/paypal_server_sdk/models/ideal_payment_object.rb +85 -0
- data/lib/paypal_server_sdk/models/ideal_payment_request.rb +83 -0
- data/lib/paypal_server_sdk/models/item.rb +134 -0
- data/lib/paypal_server_sdk/models/item_category.rb +26 -0
- data/lib/paypal_server_sdk/models/level2_card_processing_data.rb +66 -0
- data/lib/paypal_server_sdk/models/level3_card_processing_data.rb +120 -0
- data/lib/paypal_server_sdk/models/liability_shift_indicator.rb +26 -0
- data/lib/paypal_server_sdk/models/line_item.rb +177 -0
- data/lib/paypal_server_sdk/models/link_description.rb +75 -0
- data/lib/paypal_server_sdk/models/link_http_method.rb +41 -0
- data/lib/paypal_server_sdk/models/money.rb +62 -0
- data/lib/paypal_server_sdk/models/my_bank_payment_object.rb +85 -0
- data/lib/paypal_server_sdk/models/my_bank_payment_request.rb +73 -0
- data/lib/paypal_server_sdk/models/name.rb +61 -0
- data/lib/paypal_server_sdk/models/net_amount_breakdown_item.rb +73 -0
- data/lib/paypal_server_sdk/models/network_token.rb +95 -0
- data/lib/paypal_server_sdk/models/network_transaction_reference.rb +90 -0
- data/lib/paypal_server_sdk/models/network_transaction_reference_entity.rb +88 -0
- data/lib/paypal_server_sdk/models/o_auth_provider_error.rb +45 -0
- data/lib/paypal_server_sdk/models/o_auth_token.rb +106 -0
- data/lib/paypal_server_sdk/models/order.rb +178 -0
- data/lib/paypal_server_sdk/models/order_application_context.rb +193 -0
- data/lib/paypal_server_sdk/models/order_application_context_landing_page.rb +32 -0
- data/lib/paypal_server_sdk/models/order_application_context_shipping_preference.rb +34 -0
- data/lib/paypal_server_sdk/models/order_application_context_user_action.rb +29 -0
- data/lib/paypal_server_sdk/models/order_authorize_request.rb +51 -0
- data/lib/paypal_server_sdk/models/order_authorize_request_payment_source.rb +104 -0
- data/lib/paypal_server_sdk/models/order_authorize_response.rb +171 -0
- data/lib/paypal_server_sdk/models/order_authorize_response_payment_source.rb +88 -0
- data/lib/paypal_server_sdk/models/order_capture_request.rb +51 -0
- data/lib/paypal_server_sdk/models/order_capture_request_payment_source.rb +104 -0
- data/lib/paypal_server_sdk/models/order_confirm_application_context.rb +109 -0
- data/lib/paypal_server_sdk/models/order_request.rb +103 -0
- data/lib/paypal_server_sdk/models/order_status.rb +35 -0
- data/lib/paypal_server_sdk/models/order_tracker_item.rb +99 -0
- data/lib/paypal_server_sdk/models/order_tracker_request.rb +116 -0
- data/lib/paypal_server_sdk/models/order_tracker_response.rb +122 -0
- data/lib/paypal_server_sdk/models/order_tracker_status.rb +23 -0
- data/lib/paypal_server_sdk/models/p24_payment_object.rb +108 -0
- data/lib/paypal_server_sdk/models/p24_payment_request.rb +85 -0
- data/lib/paypal_server_sdk/models/pa_res_status.rb +42 -0
- data/lib/paypal_server_sdk/models/patch.rb +83 -0
- data/lib/paypal_server_sdk/models/patch_op.rb +35 -0
- data/lib/paypal_server_sdk/models/pay_pal_experience_landing_page.rb +26 -0
- data/lib/paypal_server_sdk/models/pay_pal_experience_user_action.rb +24 -0
- data/lib/paypal_server_sdk/models/pay_pal_payment_token.rb +180 -0
- data/lib/paypal_server_sdk/models/pay_pal_payment_token_customer_type.rb +25 -0
- data/lib/paypal_server_sdk/models/pay_pal_payment_token_usage_pattern.rb +35 -0
- data/lib/paypal_server_sdk/models/pay_pal_payment_token_usage_type.rb +23 -0
- data/lib/paypal_server_sdk/models/pay_pal_wallet.rb +158 -0
- data/lib/paypal_server_sdk/models/pay_pal_wallet_account_verification_status.rb +24 -0
- data/lib/paypal_server_sdk/models/pay_pal_wallet_attributes.rb +59 -0
- data/lib/paypal_server_sdk/models/pay_pal_wallet_attributes_response.rb +70 -0
- data/lib/paypal_server_sdk/models/pay_pal_wallet_customer.rb +85 -0
- data/lib/paypal_server_sdk/models/pay_pal_wallet_customer_request.rb +85 -0
- data/lib/paypal_server_sdk/models/pay_pal_wallet_experience_context.rb +140 -0
- data/lib/paypal_server_sdk/models/pay_pal_wallet_response.rb +166 -0
- data/lib/paypal_server_sdk/models/pay_pal_wallet_vault_instruction.rb +115 -0
- data/lib/paypal_server_sdk/models/pay_pal_wallet_vault_response.rb +86 -0
- data/lib/paypal_server_sdk/models/pay_pal_wallet_vault_status.rb +26 -0
- data/lib/paypal_server_sdk/models/payee.rb +65 -0
- data/lib/paypal_server_sdk/models/payee_base.rb +64 -0
- data/lib/paypal_server_sdk/models/payee_payment_method_preference.rb +23 -0
- data/lib/paypal_server_sdk/models/payer.rb +120 -0
- data/lib/paypal_server_sdk/models/payer_base.rb +64 -0
- data/lib/paypal_server_sdk/models/payment_advice_code.rb +30 -0
- data/lib/paypal_server_sdk/models/payment_authorization.rb +212 -0
- data/lib/paypal_server_sdk/models/payment_collection.rb +99 -0
- data/lib/paypal_server_sdk/models/payment_initiator.rb +23 -0
- data/lib/paypal_server_sdk/models/payment_instruction.rb +105 -0
- data/lib/paypal_server_sdk/models/payment_method_preference.rb +72 -0
- data/lib/paypal_server_sdk/models/payment_source.rb +187 -0
- data/lib/paypal_server_sdk/models/payment_source_response.rb +171 -0
- data/lib/paypal_server_sdk/models/payment_supplementary_data.rb +50 -0
- data/lib/paypal_server_sdk/models/payment_token_request.rb +60 -0
- data/lib/paypal_server_sdk/models/payment_token_request_card.rb +125 -0
- data/lib/paypal_server_sdk/models/payment_token_request_payment_source.rb +59 -0
- data/lib/paypal_server_sdk/models/payment_token_response.rb +87 -0
- data/lib/paypal_server_sdk/models/payment_token_response_payment_source.rb +87 -0
- data/lib/paypal_server_sdk/models/phone.rb +77 -0
- data/lib/paypal_server_sdk/models/phone_number.rb +54 -0
- data/lib/paypal_server_sdk/models/phone_number_with_country_code.rb +66 -0
- data/lib/paypal_server_sdk/models/phone_type.rb +32 -0
- data/lib/paypal_server_sdk/models/phone_with_type.rb +59 -0
- data/lib/paypal_server_sdk/models/platform_fee.rb +63 -0
- data/lib/paypal_server_sdk/models/processing_instruction.rb +23 -0
- data/lib/paypal_server_sdk/models/processor_response.rb +83 -0
- data/lib/paypal_server_sdk/models/processor_response_code.rb +479 -0
- data/lib/paypal_server_sdk/models/purchase_unit.rb +227 -0
- data/lib/paypal_server_sdk/models/purchase_unit_request.rb +193 -0
- data/lib/paypal_server_sdk/models/reauthorize_request.rb +62 -0
- data/lib/paypal_server_sdk/models/refund.rb +195 -0
- data/lib/paypal_server_sdk/models/refund_incomplete_reason.rb +20 -0
- data/lib/paypal_server_sdk/models/refund_payment_instruction.rb +68 -0
- data/lib/paypal_server_sdk/models/refund_platform_fee.rb +52 -0
- data/lib/paypal_server_sdk/models/refund_request.rb +100 -0
- data/lib/paypal_server_sdk/models/refund_status.rb +29 -0
- data/lib/paypal_server_sdk/models/refund_status_details.rb +50 -0
- data/lib/paypal_server_sdk/models/refund_status_with_details.rb +60 -0
- data/lib/paypal_server_sdk/models/related_identifiers.rb +69 -0
- data/lib/paypal_server_sdk/models/seller_payable_breakdown.rb +156 -0
- data/lib/paypal_server_sdk/models/seller_protection.rb +65 -0
- data/lib/paypal_server_sdk/models/seller_protection_status.rb +29 -0
- data/lib/paypal_server_sdk/models/seller_receivable_breakdown.rb +129 -0
- data/lib/paypal_server_sdk/models/setup_token_card_experience_context.rb +103 -0
- data/lib/paypal_server_sdk/models/setup_token_request.rb +60 -0
- data/lib/paypal_server_sdk/models/setup_token_request_card.rb +141 -0
- data/lib/paypal_server_sdk/models/setup_token_request_payment_source.rb +77 -0
- data/lib/paypal_server_sdk/models/setup_token_response.rb +106 -0
- data/lib/paypal_server_sdk/models/setup_token_response_card.rb +156 -0
- data/lib/paypal_server_sdk/models/setup_token_response_payment_source.rb +68 -0
- data/lib/paypal_server_sdk/models/shipment_carrier.rb +3852 -0
- data/lib/paypal_server_sdk/models/shipping_details.rb +106 -0
- data/lib/paypal_server_sdk/models/shipping_name.rb +50 -0
- data/lib/paypal_server_sdk/models/shipping_option.rb +94 -0
- data/lib/paypal_server_sdk/models/shipping_preference.rb +26 -0
- data/lib/paypal_server_sdk/models/shipping_type.rb +29 -0
- data/lib/paypal_server_sdk/models/shipping_with_tracking_details.rb +124 -0
- data/lib/paypal_server_sdk/models/sofort_payment_object.rb +85 -0
- data/lib/paypal_server_sdk/models/sofort_payment_request.rb +73 -0
- data/lib/paypal_server_sdk/models/standard_entry_class_code.rb +36 -0
- data/lib/paypal_server_sdk/models/store_in_vault_instruction.rb +20 -0
- data/lib/paypal_server_sdk/models/stored_payment_source.rb +95 -0
- data/lib/paypal_server_sdk/models/stored_payment_source_payment_type.rb +26 -0
- data/lib/paypal_server_sdk/models/stored_payment_source_usage_type.rb +27 -0
- data/lib/paypal_server_sdk/models/supplementary_data.rb +58 -0
- data/lib/paypal_server_sdk/models/supplementary_purchase_data.rb +63 -0
- data/lib/paypal_server_sdk/models/tax_id_type.rb +23 -0
- data/lib/paypal_server_sdk/models/tax_info.rb +57 -0
- data/lib/paypal_server_sdk/models/three_d_secure_authentication_response.rb +62 -0
- data/lib/paypal_server_sdk/models/token.rb +56 -0
- data/lib/paypal_server_sdk/models/token_request_type.rb +23 -0
- data/lib/paypal_server_sdk/models/token_type.rb +20 -0
- data/lib/paypal_server_sdk/models/trustly_payment_object.rb +85 -0
- data/lib/paypal_server_sdk/models/trustly_payment_request.rb +73 -0
- data/lib/paypal_server_sdk/models/universal_product_code.rb +56 -0
- data/lib/paypal_server_sdk/models/upc_type.rb +38 -0
- data/lib/paypal_server_sdk/models/vault_customer.rb +50 -0
- data/lib/paypal_server_sdk/models/vault_experience_context.rb +112 -0
- data/lib/paypal_server_sdk/models/vault_instruction.rb +50 -0
- data/lib/paypal_server_sdk/models/vault_instruction_base.rb +52 -0
- data/lib/paypal_server_sdk/models/vault_pay_pal_wallet_request.rb +115 -0
- data/lib/paypal_server_sdk/models/vault_response.rb +86 -0
- data/lib/paypal_server_sdk/models/vault_status.rb +26 -0
- data/lib/paypal_server_sdk/models/vault_token_request.rb +56 -0
- data/lib/paypal_server_sdk/models/vault_venmo_experience_context.rb +73 -0
- data/lib/paypal_server_sdk/models/vault_venmo_request.rb +115 -0
- data/lib/paypal_server_sdk/models/vaulted_digital_wallet.rb +106 -0
- data/lib/paypal_server_sdk/models/vaulted_digital_wallet_shipping_details.rb +75 -0
- data/lib/paypal_server_sdk/models/venmo_payment_token.rb +169 -0
- data/lib/paypal_server_sdk/models/venmo_payment_token_customer_type.rb +25 -0
- data/lib/paypal_server_sdk/models/venmo_payment_token_usage_pattern.rb +35 -0
- data/lib/paypal_server_sdk/models/venmo_payment_token_usage_type.rb +23 -0
- data/lib/paypal_server_sdk/models/venmo_wallet_additional_attributes.rb +60 -0
- data/lib/paypal_server_sdk/models/venmo_wallet_attributes_response.rb +50 -0
- data/lib/paypal_server_sdk/models/venmo_wallet_customer_information.rb +63 -0
- data/lib/paypal_server_sdk/models/venmo_wallet_experience_context.rb +65 -0
- data/lib/paypal_server_sdk/models/venmo_wallet_request.rb +89 -0
- data/lib/paypal_server_sdk/models/venmo_wallet_response.rb +120 -0
- data/lib/paypal_server_sdk/models/venmo_wallet_vault_attributes.rb +114 -0
- data/lib/paypal_server_sdk/utilities/date_time_helper.rb +11 -0
- data/lib/paypal_server_sdk/utilities/file_wrapper.rb +16 -0
- data/lib/paypal_server_sdk.rb +306 -0
- metadata +357 -0
@@ -0,0 +1,110 @@
|
|
1
|
+
# paypal_server_sdk
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0
|
4
|
+
# ( https://apimatic.io ).
|
5
|
+
|
6
|
+
module PaypalServerSdk
|
7
|
+
# The error details. Required for client-side `4XX` errors.
|
8
|
+
class ErrorDetails < BaseModel
|
9
|
+
SKIP = Object.new
|
10
|
+
private_constant :SKIP
|
11
|
+
|
12
|
+
# The field that caused the error. If this field is in the body, set this
|
13
|
+
# value to the field's JSON pointer value. Required for client-side errors.
|
14
|
+
# @return [String]
|
15
|
+
attr_accessor :field
|
16
|
+
|
17
|
+
# The value of the field that caused the error.
|
18
|
+
# @return [String]
|
19
|
+
attr_accessor :value
|
20
|
+
|
21
|
+
# The location of the field that caused the error. Value is `body`, `path`,
|
22
|
+
# or `query`.
|
23
|
+
# @return [String]
|
24
|
+
attr_accessor :location
|
25
|
+
|
26
|
+
# The unique, fine-grained application-level error code.
|
27
|
+
# @return [String]
|
28
|
+
attr_accessor :issue
|
29
|
+
|
30
|
+
# An array of request-related [HATEOAS
|
31
|
+
# links](/api/rest/responses/#hateoas-links) that are either relevant to the
|
32
|
+
# issue by providing additional information or offering potential
|
33
|
+
# resolutions.
|
34
|
+
# @return [Array[LinkDescription]]
|
35
|
+
attr_accessor :links
|
36
|
+
|
37
|
+
# The human-readable description for an issue. The description can change
|
38
|
+
# over the lifetime of an API, so clients must not depend on this value.
|
39
|
+
# @return [String]
|
40
|
+
attr_accessor :description
|
41
|
+
|
42
|
+
# A mapping from model property names to API property names.
|
43
|
+
def self.names
|
44
|
+
@_hash = {} if @_hash.nil?
|
45
|
+
@_hash['field'] = 'field'
|
46
|
+
@_hash['value'] = 'value'
|
47
|
+
@_hash['location'] = 'location'
|
48
|
+
@_hash['issue'] = 'issue'
|
49
|
+
@_hash['links'] = 'links'
|
50
|
+
@_hash['description'] = 'description'
|
51
|
+
@_hash
|
52
|
+
end
|
53
|
+
|
54
|
+
# An array for optional fields
|
55
|
+
def self.optionals
|
56
|
+
%w[
|
57
|
+
field
|
58
|
+
value
|
59
|
+
location
|
60
|
+
links
|
61
|
+
description
|
62
|
+
]
|
63
|
+
end
|
64
|
+
|
65
|
+
# An array for nullable fields
|
66
|
+
def self.nullables
|
67
|
+
[]
|
68
|
+
end
|
69
|
+
|
70
|
+
def initialize(issue:, field: SKIP, value: SKIP, location: 'body',
|
71
|
+
links: SKIP, description: SKIP)
|
72
|
+
@field = field unless field == SKIP
|
73
|
+
@value = value unless value == SKIP
|
74
|
+
@location = location unless location == SKIP
|
75
|
+
@issue = issue
|
76
|
+
@links = links unless links == SKIP
|
77
|
+
@description = description unless description == SKIP
|
78
|
+
end
|
79
|
+
|
80
|
+
# Creates an instance of the object from a hash.
|
81
|
+
def self.from_hash(hash)
|
82
|
+
return nil unless hash
|
83
|
+
|
84
|
+
# Extract variables from the hash.
|
85
|
+
issue = hash.key?('issue') ? hash['issue'] : nil
|
86
|
+
field = hash.key?('field') ? hash['field'] : SKIP
|
87
|
+
value = hash.key?('value') ? hash['value'] : SKIP
|
88
|
+
location = hash['location'] ||= 'body'
|
89
|
+
# Parameter is an array, so we need to iterate through it
|
90
|
+
links = nil
|
91
|
+
unless hash['links'].nil?
|
92
|
+
links = []
|
93
|
+
hash['links'].each do |structure|
|
94
|
+
links << (LinkDescription.from_hash(structure) if structure)
|
95
|
+
end
|
96
|
+
end
|
97
|
+
|
98
|
+
links = SKIP unless hash.key?('links')
|
99
|
+
description = hash.key?('description') ? hash['description'] : SKIP
|
100
|
+
|
101
|
+
# Create object from extracted values.
|
102
|
+
ErrorDetails.new(issue: issue,
|
103
|
+
field: field,
|
104
|
+
value: value,
|
105
|
+
location: location,
|
106
|
+
links: links,
|
107
|
+
description: description)
|
108
|
+
end
|
109
|
+
end
|
110
|
+
end
|
@@ -0,0 +1,75 @@
|
|
1
|
+
# paypal_server_sdk
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0
|
4
|
+
# ( https://apimatic.io ).
|
5
|
+
|
6
|
+
module PaypalServerSdk
|
7
|
+
# The exchange rate that determines the amount to convert from one currency to
|
8
|
+
# another currency.
|
9
|
+
class ExchangeRate < BaseModel
|
10
|
+
SKIP = Object.new
|
11
|
+
private_constant :SKIP
|
12
|
+
|
13
|
+
# The [three-character ISO-4217 currency
|
14
|
+
# code](/api/rest/reference/currency-codes/) that identifies the currency.
|
15
|
+
# @return [String]
|
16
|
+
attr_accessor :source_currency
|
17
|
+
|
18
|
+
# The [three-character ISO-4217 currency
|
19
|
+
# code](/api/rest/reference/currency-codes/) that identifies the currency.
|
20
|
+
# @return [String]
|
21
|
+
attr_accessor :target_currency
|
22
|
+
|
23
|
+
# The target currency amount. Equivalent to one unit of the source currency.
|
24
|
+
# Formatted as integer or decimal value with one to 15 digits to the right
|
25
|
+
# of the decimal point.
|
26
|
+
# @return [String]
|
27
|
+
attr_accessor :value
|
28
|
+
|
29
|
+
# A mapping from model property names to API property names.
|
30
|
+
def self.names
|
31
|
+
@_hash = {} if @_hash.nil?
|
32
|
+
@_hash['source_currency'] = 'source_currency'
|
33
|
+
@_hash['target_currency'] = 'target_currency'
|
34
|
+
@_hash['value'] = 'value'
|
35
|
+
@_hash
|
36
|
+
end
|
37
|
+
|
38
|
+
# An array for optional fields
|
39
|
+
def self.optionals
|
40
|
+
%w[
|
41
|
+
source_currency
|
42
|
+
target_currency
|
43
|
+
value
|
44
|
+
]
|
45
|
+
end
|
46
|
+
|
47
|
+
# An array for nullable fields
|
48
|
+
def self.nullables
|
49
|
+
[]
|
50
|
+
end
|
51
|
+
|
52
|
+
def initialize(source_currency: SKIP, target_currency: SKIP, value: SKIP)
|
53
|
+
@source_currency = source_currency unless source_currency == SKIP
|
54
|
+
@target_currency = target_currency unless target_currency == SKIP
|
55
|
+
@value = value unless value == SKIP
|
56
|
+
end
|
57
|
+
|
58
|
+
# Creates an instance of the object from a hash.
|
59
|
+
def self.from_hash(hash)
|
60
|
+
return nil unless hash
|
61
|
+
|
62
|
+
# Extract variables from the hash.
|
63
|
+
source_currency =
|
64
|
+
hash.key?('source_currency') ? hash['source_currency'] : SKIP
|
65
|
+
target_currency =
|
66
|
+
hash.key?('target_currency') ? hash['target_currency'] : SKIP
|
67
|
+
value = hash.key?('value') ? hash['value'] : SKIP
|
68
|
+
|
69
|
+
# Create object from extracted values.
|
70
|
+
ExchangeRate.new(source_currency: source_currency,
|
71
|
+
target_currency: target_currency,
|
72
|
+
value: value)
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
@@ -0,0 +1,98 @@
|
|
1
|
+
# paypal_server_sdk
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0
|
4
|
+
# ( https://apimatic.io ).
|
5
|
+
|
6
|
+
module PaypalServerSdk
|
7
|
+
# Customizes the payer experience during the approval process for the payment.
|
8
|
+
class ExperienceContext < BaseModel
|
9
|
+
SKIP = Object.new
|
10
|
+
private_constant :SKIP
|
11
|
+
|
12
|
+
# The label that overrides the business name in the PayPal account on the
|
13
|
+
# PayPal site. The pattern is defined by an external party and supports
|
14
|
+
# Unicode.
|
15
|
+
# @return [String]
|
16
|
+
attr_accessor :brand_name
|
17
|
+
|
18
|
+
# The [language tag](https://tools.ietf.org/html/bcp47#section-2) for the
|
19
|
+
# language in which to localize the error-related strings, such as messages,
|
20
|
+
# issues, and suggested actions. The tag is made up of the [ISO 639-2
|
21
|
+
# language code](https://www.loc.gov/standards/iso639-2/php/code_list.php),
|
22
|
+
# the optional [ISO-15924 script
|
23
|
+
# tag](https://www.unicode.org/iso15924/codelists.html), and the [ISO-3166
|
24
|
+
# alpha-2 country code](/api/rest/reference/country-codes/) or [M49 region
|
25
|
+
# code](https://unstats.un.org/unsd/methodology/m49/).
|
26
|
+
# @return [String]
|
27
|
+
attr_accessor :locale
|
28
|
+
|
29
|
+
# The location from which the shipping address is derived.
|
30
|
+
# @return [ShippingPreference]
|
31
|
+
attr_accessor :shipping_preference
|
32
|
+
|
33
|
+
# Describes the URL.
|
34
|
+
# @return [String]
|
35
|
+
attr_accessor :return_url
|
36
|
+
|
37
|
+
# Describes the URL.
|
38
|
+
# @return [String]
|
39
|
+
attr_accessor :cancel_url
|
40
|
+
|
41
|
+
# A mapping from model property names to API property names.
|
42
|
+
def self.names
|
43
|
+
@_hash = {} if @_hash.nil?
|
44
|
+
@_hash['brand_name'] = 'brand_name'
|
45
|
+
@_hash['locale'] = 'locale'
|
46
|
+
@_hash['shipping_preference'] = 'shipping_preference'
|
47
|
+
@_hash['return_url'] = 'return_url'
|
48
|
+
@_hash['cancel_url'] = 'cancel_url'
|
49
|
+
@_hash
|
50
|
+
end
|
51
|
+
|
52
|
+
# An array for optional fields
|
53
|
+
def self.optionals
|
54
|
+
%w[
|
55
|
+
brand_name
|
56
|
+
locale
|
57
|
+
shipping_preference
|
58
|
+
return_url
|
59
|
+
cancel_url
|
60
|
+
]
|
61
|
+
end
|
62
|
+
|
63
|
+
# An array for nullable fields
|
64
|
+
def self.nullables
|
65
|
+
[]
|
66
|
+
end
|
67
|
+
|
68
|
+
def initialize(brand_name: SKIP, locale: SKIP,
|
69
|
+
shipping_preference: ShippingPreference::GET_FROM_FILE,
|
70
|
+
return_url: SKIP, cancel_url: SKIP)
|
71
|
+
@brand_name = brand_name unless brand_name == SKIP
|
72
|
+
@locale = locale unless locale == SKIP
|
73
|
+
@shipping_preference = shipping_preference unless shipping_preference == SKIP
|
74
|
+
@return_url = return_url unless return_url == SKIP
|
75
|
+
@cancel_url = cancel_url unless cancel_url == SKIP
|
76
|
+
end
|
77
|
+
|
78
|
+
# Creates an instance of the object from a hash.
|
79
|
+
def self.from_hash(hash)
|
80
|
+
return nil unless hash
|
81
|
+
|
82
|
+
# Extract variables from the hash.
|
83
|
+
brand_name = hash.key?('brand_name') ? hash['brand_name'] : SKIP
|
84
|
+
locale = hash.key?('locale') ? hash['locale'] : SKIP
|
85
|
+
shipping_preference =
|
86
|
+
hash['shipping_preference'] ||= ShippingPreference::GET_FROM_FILE
|
87
|
+
return_url = hash.key?('return_url') ? hash['return_url'] : SKIP
|
88
|
+
cancel_url = hash.key?('cancel_url') ? hash['cancel_url'] : SKIP
|
89
|
+
|
90
|
+
# Create object from extracted values.
|
91
|
+
ExperienceContext.new(brand_name: brand_name,
|
92
|
+
locale: locale,
|
93
|
+
shipping_preference: shipping_preference,
|
94
|
+
return_url: return_url,
|
95
|
+
cancel_url: cancel_url)
|
96
|
+
end
|
97
|
+
end
|
98
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# paypal_server_sdk
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0
|
4
|
+
# ( https://apimatic.io ).
|
5
|
+
|
6
|
+
module PaypalServerSdk
|
7
|
+
# A classification for the method of purchase fulfillment (e.g shipping,
|
8
|
+
# in-store pickup, etc). Either `type` or `options` may be present, but not
|
9
|
+
# both.
|
10
|
+
class FullfillmentType
|
11
|
+
FULLFILLMENT_TYPE = [
|
12
|
+
# TODO: Write general description for SHIPPING
|
13
|
+
SHIPPING = 'SHIPPING'.freeze,
|
14
|
+
|
15
|
+
# TODO: Write general description for PICKUP_IN_PERSON
|
16
|
+
PICKUP_IN_PERSON = 'PICKUP_IN_PERSON'.freeze,
|
17
|
+
|
18
|
+
# TODO: Write general description for PICKUP_IN_STORE
|
19
|
+
PICKUP_IN_STORE = 'PICKUP_IN_STORE'.freeze,
|
20
|
+
|
21
|
+
# TODO: Write general description for PICKUP_FROM_PERSON
|
22
|
+
PICKUP_FROM_PERSON = 'PICKUP_FROM_PERSON'.freeze
|
23
|
+
].freeze
|
24
|
+
|
25
|
+
def self.validate(value)
|
26
|
+
return false if value.nil?
|
27
|
+
|
28
|
+
true
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,74 @@
|
|
1
|
+
# paypal_server_sdk
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0
|
4
|
+
# ( https://apimatic.io ).
|
5
|
+
|
6
|
+
module PaypalServerSdk
|
7
|
+
# Information needed to pay using giropay.
|
8
|
+
class GiropayPaymentObject < BaseModel
|
9
|
+
SKIP = Object.new
|
10
|
+
private_constant :SKIP
|
11
|
+
|
12
|
+
# The full name representation like Mr J Smith.
|
13
|
+
# @return [String]
|
14
|
+
attr_accessor :name
|
15
|
+
|
16
|
+
# The [two-character ISO 3166-1 code](/api/rest/reference/country-codes/)
|
17
|
+
# that identifies the country or region.<blockquote><strong>Note:</strong>
|
18
|
+
# The country code for Great Britain is <code>GB</code> and not
|
19
|
+
# <code>UK</code> as used in the top-level domain names for that country.
|
20
|
+
# Use the `C2` country code for China worldwide for comparable uncontrolled
|
21
|
+
# price (CUP) method, bank card, and cross-border transactions.</blockquote>
|
22
|
+
# @return [String]
|
23
|
+
attr_accessor :country_code
|
24
|
+
|
25
|
+
# The business identification code (BIC). In payments systems, a BIC is used
|
26
|
+
# to identify a specific business, most commonly a bank.
|
27
|
+
# @return [String]
|
28
|
+
attr_accessor :bic
|
29
|
+
|
30
|
+
# A mapping from model property names to API property names.
|
31
|
+
def self.names
|
32
|
+
@_hash = {} if @_hash.nil?
|
33
|
+
@_hash['name'] = 'name'
|
34
|
+
@_hash['country_code'] = 'country_code'
|
35
|
+
@_hash['bic'] = 'bic'
|
36
|
+
@_hash
|
37
|
+
end
|
38
|
+
|
39
|
+
# An array for optional fields
|
40
|
+
def self.optionals
|
41
|
+
%w[
|
42
|
+
name
|
43
|
+
country_code
|
44
|
+
bic
|
45
|
+
]
|
46
|
+
end
|
47
|
+
|
48
|
+
# An array for nullable fields
|
49
|
+
def self.nullables
|
50
|
+
[]
|
51
|
+
end
|
52
|
+
|
53
|
+
def initialize(name: SKIP, country_code: SKIP, bic: SKIP)
|
54
|
+
@name = name unless name == SKIP
|
55
|
+
@country_code = country_code unless country_code == SKIP
|
56
|
+
@bic = bic unless bic == SKIP
|
57
|
+
end
|
58
|
+
|
59
|
+
# Creates an instance of the object from a hash.
|
60
|
+
def self.from_hash(hash)
|
61
|
+
return nil unless hash
|
62
|
+
|
63
|
+
# Extract variables from the hash.
|
64
|
+
name = hash.key?('name') ? hash['name'] : SKIP
|
65
|
+
country_code = hash.key?('country_code') ? hash['country_code'] : SKIP
|
66
|
+
bic = hash.key?('bic') ? hash['bic'] : SKIP
|
67
|
+
|
68
|
+
# Create object from extracted values.
|
69
|
+
GiropayPaymentObject.new(name: name,
|
70
|
+
country_code: country_code,
|
71
|
+
bic: bic)
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
@@ -0,0 +1,73 @@
|
|
1
|
+
# paypal_server_sdk
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0
|
4
|
+
# ( https://apimatic.io ).
|
5
|
+
|
6
|
+
module PaypalServerSdk
|
7
|
+
# Information needed to pay using giropay.
|
8
|
+
class GiropayPaymentRequest < BaseModel
|
9
|
+
SKIP = Object.new
|
10
|
+
private_constant :SKIP
|
11
|
+
|
12
|
+
# The full name representation like Mr J Smith.
|
13
|
+
# @return [String]
|
14
|
+
attr_accessor :name
|
15
|
+
|
16
|
+
# The [two-character ISO 3166-1 code](/api/rest/reference/country-codes/)
|
17
|
+
# that identifies the country or region.<blockquote><strong>Note:</strong>
|
18
|
+
# The country code for Great Britain is <code>GB</code> and not
|
19
|
+
# <code>UK</code> as used in the top-level domain names for that country.
|
20
|
+
# Use the `C2` country code for China worldwide for comparable uncontrolled
|
21
|
+
# price (CUP) method, bank card, and cross-border transactions.</blockquote>
|
22
|
+
# @return [String]
|
23
|
+
attr_accessor :country_code
|
24
|
+
|
25
|
+
# Customizes the payer experience during the approval process for the
|
26
|
+
# payment.
|
27
|
+
# @return [ExperienceContext]
|
28
|
+
attr_accessor :experience_context
|
29
|
+
|
30
|
+
# A mapping from model property names to API property names.
|
31
|
+
def self.names
|
32
|
+
@_hash = {} if @_hash.nil?
|
33
|
+
@_hash['name'] = 'name'
|
34
|
+
@_hash['country_code'] = 'country_code'
|
35
|
+
@_hash['experience_context'] = 'experience_context'
|
36
|
+
@_hash
|
37
|
+
end
|
38
|
+
|
39
|
+
# An array for optional fields
|
40
|
+
def self.optionals
|
41
|
+
%w[
|
42
|
+
experience_context
|
43
|
+
]
|
44
|
+
end
|
45
|
+
|
46
|
+
# An array for nullable fields
|
47
|
+
def self.nullables
|
48
|
+
[]
|
49
|
+
end
|
50
|
+
|
51
|
+
def initialize(name:, country_code:, experience_context: SKIP)
|
52
|
+
@name = name
|
53
|
+
@country_code = country_code
|
54
|
+
@experience_context = experience_context unless experience_context == SKIP
|
55
|
+
end
|
56
|
+
|
57
|
+
# Creates an instance of the object from a hash.
|
58
|
+
def self.from_hash(hash)
|
59
|
+
return nil unless hash
|
60
|
+
|
61
|
+
# Extract variables from the hash.
|
62
|
+
name = hash.key?('name') ? hash['name'] : nil
|
63
|
+
country_code = hash.key?('country_code') ? hash['country_code'] : nil
|
64
|
+
experience_context = ExperienceContext.from_hash(hash['experience_context']) if
|
65
|
+
hash['experience_context']
|
66
|
+
|
67
|
+
# Create object from extracted values.
|
68
|
+
GiropayPaymentRequest.new(name: name,
|
69
|
+
country_code: country_code,
|
70
|
+
experience_context: experience_context)
|
71
|
+
end
|
72
|
+
end
|
73
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
# paypal_server_sdk
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0
|
4
|
+
# ( https://apimatic.io ).
|
5
|
+
|
6
|
+
module PaypalServerSdk
|
7
|
+
# Authentication Method which is used for the card transaction.
|
8
|
+
class GooglePayAuthenticationMethod
|
9
|
+
GOOGLE_PAY_AUTHENTICATION_METHOD = [
|
10
|
+
# TODO: Write general description for PAN_ONLY
|
11
|
+
PAN_ONLY = 'PAN_ONLY'.freeze,
|
12
|
+
|
13
|
+
# TODO: Write general description for CRYPTOGRAM_3DS
|
14
|
+
CRYPTOGRAM_3DS = 'CRYPTOGRAM_3DS'.freeze
|
15
|
+
].freeze
|
16
|
+
|
17
|
+
def self.validate(value)
|
18
|
+
return false if value.nil?
|
19
|
+
|
20
|
+
true
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
# paypal_server_sdk
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0
|
4
|
+
# ( https://apimatic.io ).
|
5
|
+
|
6
|
+
module PaypalServerSdk
|
7
|
+
# Additional attributes associated with the use of this card.
|
8
|
+
class GooglePayCardAttributes < BaseModel
|
9
|
+
SKIP = Object.new
|
10
|
+
private_constant :SKIP
|
11
|
+
|
12
|
+
# The API caller can opt in to verify the card through PayPal offered
|
13
|
+
# verification services (e.g. Smart Dollar Auth, 3DS).
|
14
|
+
# @return [CardVerification]
|
15
|
+
attr_accessor :verification
|
16
|
+
|
17
|
+
# A mapping from model property names to API property names.
|
18
|
+
def self.names
|
19
|
+
@_hash = {} if @_hash.nil?
|
20
|
+
@_hash['verification'] = 'verification'
|
21
|
+
@_hash
|
22
|
+
end
|
23
|
+
|
24
|
+
# An array for optional fields
|
25
|
+
def self.optionals
|
26
|
+
%w[
|
27
|
+
verification
|
28
|
+
]
|
29
|
+
end
|
30
|
+
|
31
|
+
# An array for nullable fields
|
32
|
+
def self.nullables
|
33
|
+
[]
|
34
|
+
end
|
35
|
+
|
36
|
+
def initialize(verification: SKIP)
|
37
|
+
@verification = verification unless verification == SKIP
|
38
|
+
end
|
39
|
+
|
40
|
+
# Creates an instance of the object from a hash.
|
41
|
+
def self.from_hash(hash)
|
42
|
+
return nil unless hash
|
43
|
+
|
44
|
+
# Extract variables from the hash.
|
45
|
+
verification = CardVerification.from_hash(hash['verification']) if hash['verification']
|
46
|
+
|
47
|
+
# Create object from extracted values.
|
48
|
+
GooglePayCardAttributes.new(verification: verification)
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
@@ -0,0 +1,104 @@
|
|
1
|
+
# paypal_server_sdk
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0
|
4
|
+
# ( https://apimatic.io ).
|
5
|
+
|
6
|
+
module PaypalServerSdk
|
7
|
+
# The payment card to use to fund a Google Pay payment response. Can be a
|
8
|
+
# credit or debit card.
|
9
|
+
class GooglePayCardResponse < BaseModel
|
10
|
+
SKIP = Object.new
|
11
|
+
private_constant :SKIP
|
12
|
+
|
13
|
+
# The card holder's name as it appears on the card.
|
14
|
+
# @return [String]
|
15
|
+
attr_accessor :name
|
16
|
+
|
17
|
+
# The last digits of the payment card.
|
18
|
+
# @return [String]
|
19
|
+
attr_accessor :last_digits
|
20
|
+
|
21
|
+
# Type of card. i.e Credit, Debit and so on.
|
22
|
+
# @return [CardType]
|
23
|
+
attr_accessor :type
|
24
|
+
|
25
|
+
# The card network or brand. Applies to credit, debit, gift, and payment
|
26
|
+
# cards.
|
27
|
+
# @return [CardBrand]
|
28
|
+
attr_accessor :brand
|
29
|
+
|
30
|
+
# The portable international postal address. Maps to
|
31
|
+
# [AddressValidationMetadata](https://github.com/googlei18n/libaddressinput/
|
32
|
+
# wiki/AddressValidationMetadata) and HTML 5.1 [Autofilling form controls:
|
33
|
+
# the autocomplete
|
34
|
+
# attribute](https://www.w3.org/TR/html51/sec-forms.html#autofilling-form-co
|
35
|
+
# ntrols-the-autocomplete-attribute).
|
36
|
+
# @return [Address]
|
37
|
+
attr_accessor :billing_address
|
38
|
+
|
39
|
+
# Results of Authentication such as 3D Secure.
|
40
|
+
# @return [AuthenticationResponse]
|
41
|
+
attr_accessor :authentication_result
|
42
|
+
|
43
|
+
# A mapping from model property names to API property names.
|
44
|
+
def self.names
|
45
|
+
@_hash = {} if @_hash.nil?
|
46
|
+
@_hash['name'] = 'name'
|
47
|
+
@_hash['last_digits'] = 'last_digits'
|
48
|
+
@_hash['type'] = 'type'
|
49
|
+
@_hash['brand'] = 'brand'
|
50
|
+
@_hash['billing_address'] = 'billing_address'
|
51
|
+
@_hash['authentication_result'] = 'authentication_result'
|
52
|
+
@_hash
|
53
|
+
end
|
54
|
+
|
55
|
+
# An array for optional fields
|
56
|
+
def self.optionals
|
57
|
+
%w[
|
58
|
+
name
|
59
|
+
last_digits
|
60
|
+
type
|
61
|
+
brand
|
62
|
+
billing_address
|
63
|
+
authentication_result
|
64
|
+
]
|
65
|
+
end
|
66
|
+
|
67
|
+
# An array for nullable fields
|
68
|
+
def self.nullables
|
69
|
+
[]
|
70
|
+
end
|
71
|
+
|
72
|
+
def initialize(name: SKIP, last_digits: SKIP, type: SKIP, brand: SKIP,
|
73
|
+
billing_address: SKIP, authentication_result: SKIP)
|
74
|
+
@name = name unless name == SKIP
|
75
|
+
@last_digits = last_digits unless last_digits == SKIP
|
76
|
+
@type = type unless type == SKIP
|
77
|
+
@brand = brand unless brand == SKIP
|
78
|
+
@billing_address = billing_address unless billing_address == SKIP
|
79
|
+
@authentication_result = authentication_result unless authentication_result == SKIP
|
80
|
+
end
|
81
|
+
|
82
|
+
# Creates an instance of the object from a hash.
|
83
|
+
def self.from_hash(hash)
|
84
|
+
return nil unless hash
|
85
|
+
|
86
|
+
# Extract variables from the hash.
|
87
|
+
name = hash.key?('name') ? hash['name'] : SKIP
|
88
|
+
last_digits = hash.key?('last_digits') ? hash['last_digits'] : SKIP
|
89
|
+
type = hash.key?('type') ? hash['type'] : SKIP
|
90
|
+
brand = hash.key?('brand') ? hash['brand'] : SKIP
|
91
|
+
billing_address = Address.from_hash(hash['billing_address']) if hash['billing_address']
|
92
|
+
authentication_result = AuthenticationResponse.from_hash(hash['authentication_result']) if
|
93
|
+
hash['authentication_result']
|
94
|
+
|
95
|
+
# Create object from extracted values.
|
96
|
+
GooglePayCardResponse.new(name: name,
|
97
|
+
last_digits: last_digits,
|
98
|
+
type: type,
|
99
|
+
brand: brand,
|
100
|
+
billing_address: billing_address,
|
101
|
+
authentication_result: authentication_result)
|
102
|
+
end
|
103
|
+
end
|
104
|
+
end
|