first_data_gateway 1.0.3 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile +1 -0
- data/README.md +144 -65
- data/Rakefile +2 -0
- data/docs/AVSResponse.md +9 -0
- data/docs/AccessTokenResponse.md +2 -3
- data/docs/AdditionalAmountRate.md +9 -0
- data/docs/AdditionalTransactionDetails.md +10 -0
- data/docs/Address.md +5 -5
- data/docs/Airline.md +14 -14
- data/docs/AirlineAncillaryServiceCategory.md +2 -2
- data/docs/AirlineTravelRoute.md +8 -8
- data/docs/AliPay.md +11 -0
- data/docs/Amount.md +2 -2
- data/docs/AmountComponents.md +8 -8
- data/docs/AuthenticationApi.md +19 -24
- data/docs/AuthenticationRequest.md +9 -0
- data/docs/AuthenticationResponseVerification.md +5 -4
- data/docs/AuthenticationResponseVerificationRequest.md +11 -0
- data/docs/BasicResponse.md +10 -0
- data/docs/BasketItem.md +2 -2
- data/docs/Billing.md +6 -5
- data/docs/BillingAddress.md +17 -0
- data/docs/BillingAddressPhone.md +9 -0
- data/docs/CarRental.md +9 -9
- data/docs/CarRentalExtraCharges.md +2 -2
- data/docs/Card.md +15 -0
- data/docs/CardInfo.md +13 -0
- data/docs/CardInfoLookupApi.md +68 -0
- data/docs/CardInfoLookupRequest.md +9 -0
- data/docs/CardInfoLookupResponse.md +12 -0
- data/docs/CardVerificationApi.md +68 -0
- data/docs/CardVerificationRequest.md +9 -0
- data/docs/CardVerificationsTransaction.md +2 -2
- data/docs/ChinaDomestic.md +15 -0
- data/docs/ClientLocale.md +3 -3
- data/docs/Contact.md +5 -5
- data/docs/CurrencyConversionApi.md +68 -0
- data/docs/Customer.md +19 -0
- data/docs/CustomerAddress.md +14 -0
- data/docs/CustomerAddressPhone.md +9 -0
- data/docs/Dcc.md +9 -0
- data/docs/Device.md +19 -0
- data/docs/DeviceNetworks.md +21 -0
- data/docs/Document.md +9 -0
- data/docs/Error.md +1 -1
- data/docs/ErrorDetails.md +1 -1
- data/docs/ErrorResponse.md +4 -4
- data/docs/ExchangeRateRequest.md +12 -0
- data/docs/ExchangeRateResponse.md +21 -0
- data/docs/Expiration.md +3 -3
- data/docs/FraudDetectApi.md +68 -0
- data/docs/FraudOrder.md +10 -0
- data/docs/FraudOrderItems.md +15 -0
- data/docs/FraudOrderShipToAddress.md +14 -0
- data/docs/Frequency.md +3 -3
- data/docs/IndustrySpecificExtensions.md +1 -1
- data/docs/InstallmentOptions.md +1 -1
- data/docs/Lodging.md +3 -3
- data/docs/LodgingExtraCharges.md +1 -1
- data/docs/Loyalty.md +10 -0
- data/docs/Merchant.md +11 -0
- data/docs/MerchantLocation.md +12 -0
- data/docs/MerchantLocationMerchantAddress.md +13 -0
- data/docs/Order.md +2 -2
- data/docs/OrderApi.md +107 -55
- data/docs/OrderErrorResponse.md +19 -0
- data/docs/OrderResponse.md +18 -0
- data/docs/PayPal.md +1 -1
- data/docs/Payment.md +18 -0
- data/docs/PaymentApi.md +164 -124
- data/docs/PaymentCard.md +10 -6
- data/docs/PaymentCardAuthenticationResult.md +1 -1
- data/docs/PaymentFacilitator.md +12 -0
- data/docs/PaymentIssuerResponse.md +10 -0
- data/docs/PaymentMethod.md +5 -2
- data/docs/PaymentPayMethod.md +13 -0
- data/docs/PaymentSchedulesApi.md +256 -0
- data/docs/PaymentSchedulesErrorResponse.md +14 -0
- data/docs/PaymentSchedulesRequest.md +10 -7
- data/docs/PaymentSchedulesResponse.md +7 -5
- data/docs/PaymentTokenApi.md +134 -0
- data/docs/PaymentTokenization.md +16 -0
- data/docs/PaymentTokenizationErrorResponse.md +19 -0
- data/docs/PaymentTokenizationRequest.md +11 -0
- data/docs/PaymentTokenizationResponse.md +18 -0
- data/docs/PaymentURLApi.md +68 -0
- data/docs/PaymentUrlErrorResponse.md +15 -0
- data/docs/PaymentUrlRequest.md +13 -3
- data/docs/PaymentUrlResponse.md +6 -5
- data/docs/PaymentVerification3ds.md +10 -0
- data/docs/PaymentVerificationAvs.md +10 -0
- data/docs/PaymentVerificationCvv.md +10 -0
- data/docs/PrimaryTransaction.md +7 -3
- data/docs/PrimaryTransactionAdditionalDetails.md +7 -5
- data/docs/ProcessorData.md +8 -4
- data/docs/PurchaseCards.md +9 -0
- data/docs/PurchaseCardsLevel2.md +12 -0
- data/docs/PurchaseCardsLevel3.md +8 -0
- data/docs/PurchaseCardsLevel3LineItems.md +16 -0
- data/docs/RecurringPaymentDetails.md +20 -0
- data/docs/RecurringPaymentDetailsResponse.md +19 -0
- data/docs/ReferencedOrder.md +9 -0
- data/docs/ResponseType.md +1 -1
- data/docs/ScoreOnlyRequest.md +21 -0
- data/docs/ScoreOnlyResponse.md +13 -0
- data/docs/ScoreOnlyResponseFraudScore.md +10 -0
- data/docs/ScoreOnlyResponseFraudScoreExplanations.md +10 -0
- data/docs/SecondaryTransaction.md +4 -1
- data/docs/SecondaryTransactionAdditionalDetails.md +8 -0
- data/docs/Secure3dResponse.md +8 -0
- data/docs/Sepa.md +1 -1
- data/docs/SepaMandate.md +3 -3
- data/docs/Shipping.md +1 -1
- data/docs/SoftDescriptor.md +9 -0
- data/docs/SplitShipment.md +3 -3
- data/docs/StoredCredential.md +4 -4
- data/docs/SubMerchantData.md +13 -0
- data/docs/Transaction.md +19 -0
- data/docs/TransactionErrorResponse.md +13 -11
- data/docs/TransactionOrigin.md +7 -0
- data/docs/TransactionResponse.md +13 -11
- data/docs/TransactionType.md +1 -1
- data/first_data_gateway.gemspec +9 -9
- data/git_push.sh +2 -2
- data/lib/openapi_client/.DS_Store +0 -0
- data/lib/{swagger_client → openapi_client}/api/authentication_api.rb +22 -27
- data/lib/openapi_client/api/card_info_lookup_api.rb +117 -0
- data/lib/openapi_client/api/card_verification_api.rb +117 -0
- data/lib/openapi_client/api/currency_conversion_api.rb +117 -0
- data/lib/openapi_client/api/fraud_detect_api.rb +122 -0
- data/lib/openapi_client/api/order_api.rb +327 -0
- data/lib/{swagger_client → openapi_client}/api/payment_api.rb +212 -111
- data/lib/openapi_client/api/payment_schedules_api.rb +411 -0
- data/lib/openapi_client/api/payment_token_api.rb +218 -0
- data/lib/openapi_client/api/payment_url_api.rb +117 -0
- data/lib/{swagger_client → openapi_client}/api_client.rb +50 -38
- data/lib/{swagger_client → openapi_client}/api_error.rb +6 -6
- data/lib/{swagger_client → openapi_client}/configuration.rb +49 -7
- data/lib/openapi_client/models/.DS_Store +0 -0
- data/lib/{swagger_client → openapi_client}/models/access_token_response.rb +20 -33
- data/lib/{swagger_client/models/secondary_transaction.rb → openapi_client/models/additional_amount_rate.rb} +25 -28
- data/lib/{swagger_client/models/primary_transaction_additional_details.rb → openapi_client/models/additional_transaction_details.rb} +68 -62
- data/lib/{swagger_client → openapi_client}/models/address.rb +33 -44
- data/lib/{swagger_client → openapi_client}/models/airline.rb +48 -47
- data/lib/{swagger_client → openapi_client}/models/airline_ancillary_service_category.rb +18 -21
- data/lib/{swagger_client → openapi_client}/models/airline_travel_route.rb +39 -42
- data/lib/openapi_client/models/ali_pay.rb +326 -0
- data/lib/{swagger_client → openapi_client}/models/amount.rb +18 -21
- data/lib/{swagger_client → openapi_client}/models/amount_components.rb +22 -19
- data/lib/{swagger_client/models/transaction_response_authentication_redirect.rb → openapi_client/models/authentication_request.rb} +33 -38
- data/lib/{swagger_client → openapi_client}/models/authentication_response_verification.rb +43 -30
- data/lib/{swagger_client/models/payment_url_request.rb → openapi_client/models/authentication_response_verification_request.rb} +35 -56
- data/lib/openapi_client/models/avs_response.rb +239 -0
- data/lib/openapi_client/models/basic_response.rb +209 -0
- data/lib/{swagger_client → openapi_client}/models/basket_item.rb +16 -20
- data/lib/{swagger_client → openapi_client}/models/billing.rb +65 -25
- data/lib/openapi_client/models/billing_address.rb +279 -0
- data/lib/{swagger_client/models/transaction_response_authentication_redirect_params.rb → openapi_client/models/billing_address_phone.rb} +31 -42
- data/lib/{swagger_client → openapi_client}/models/car_rental.rb +31 -31
- data/lib/{swagger_client → openapi_client}/models/car_rental_extra_charges.rb +18 -21
- data/lib/openapi_client/models/card.rb +254 -0
- data/lib/{swagger_client/models/payment_card.rb → openapi_client/models/card_info.rb} +68 -81
- data/lib/openapi_client/models/card_info_lookup_request.rb +214 -0
- data/lib/openapi_client/models/card_info_lookup_response.rb +265 -0
- data/lib/openapi_client/models/card_verification_request.rb +198 -0
- data/lib/{swagger_client → openapi_client}/models/card_verifications_transaction.rb +31 -20
- data/lib/openapi_client/models/china_domestic.rb +386 -0
- data/lib/{swagger_client → openapi_client}/models/client_locale.rb +19 -23
- data/lib/{swagger_client → openapi_client}/models/contact.rb +26 -31
- data/lib/openapi_client/models/customer.rb +333 -0
- data/lib/openapi_client/models/customer_address.rb +259 -0
- data/lib/openapi_client/models/customer_address_phone.rb +195 -0
- data/lib/openapi_client/models/dcc.rb +200 -0
- data/lib/openapi_client/models/device.rb +340 -0
- data/lib/openapi_client/models/device_networks.rb +353 -0
- data/lib/{swagger_client/models/payment_card_authentication_request.rb → openapi_client/models/document.rb} +62 -26
- data/lib/{swagger_client → openapi_client}/models/error.rb +14 -18
- data/lib/{swagger_client → openapi_client}/models/error_details.rb +14 -19
- data/lib/{swagger_client → openapi_client}/models/error_response.rb +22 -22
- data/lib/openapi_client/models/exchange_rate_request.rb +307 -0
- data/lib/openapi_client/models/exchange_rate_response.rb +319 -0
- data/lib/{swagger_client → openapi_client}/models/expiration.rb +18 -20
- data/lib/openapi_client/models/fraud_order.rb +206 -0
- data/lib/openapi_client/models/fraud_order_items.rb +253 -0
- data/lib/openapi_client/models/fraud_order_ship_to_address.rb +245 -0
- data/lib/{swagger_client → openapi_client}/models/frequency.rb +27 -30
- data/lib/{swagger_client → openapi_client}/models/industry_specific_extensions.rb +15 -19
- data/lib/{swagger_client → openapi_client}/models/installment_options.rb +22 -28
- data/lib/{swagger_client → openapi_client}/models/lodging.rb +19 -22
- data/lib/{swagger_client → openapi_client}/models/lodging_extra_charges.rb +17 -21
- data/lib/openapi_client/models/loyalty.rb +205 -0
- data/lib/openapi_client/models/merchant.rb +219 -0
- data/lib/openapi_client/models/merchant_location.rb +224 -0
- data/lib/openapi_client/models/merchant_location_merchant_address.rb +250 -0
- data/lib/{swagger_client/models/processor_data.rb → openapi_client/models/order.rb} +49 -47
- data/lib/openapi_client/models/order_error_response.rb +296 -0
- data/lib/openapi_client/models/order_response.rb +287 -0
- data/lib/{swagger_client → openapi_client}/models/pay_pal.rb +19 -23
- data/lib/openapi_client/models/payment.rb +346 -0
- data/lib/openapi_client/models/payment_card.rb +363 -0
- data/lib/{swagger_client → openapi_client}/models/payment_card_authentication_result.rb +32 -37
- data/lib/openapi_client/models/payment_facilitator.rb +292 -0
- data/lib/openapi_client/models/payment_issuer_response.rb +249 -0
- data/lib/openapi_client/models/payment_method.rb +278 -0
- data/lib/openapi_client/models/payment_pay_method.rb +278 -0
- data/lib/openapi_client/models/payment_schedules_error_response.rb +281 -0
- data/lib/{swagger_client → openapi_client}/models/payment_schedules_request.rb +83 -80
- data/lib/openapi_client/models/payment_schedules_response.rb +272 -0
- data/lib/openapi_client/models/payment_tokenization.rb +327 -0
- data/lib/openapi_client/models/payment_tokenization_error_response.rb +329 -0
- data/lib/{swagger_client/models/payment_method.rb → openapi_client/models/payment_tokenization_request.rb} +34 -37
- data/lib/openapi_client/models/payment_tokenization_response.rb +319 -0
- data/lib/openapi_client/models/payment_url_error_response.rb +292 -0
- data/lib/openapi_client/models/payment_url_request.rb +335 -0
- data/lib/{swagger_client → openapi_client}/models/payment_url_response.rb +35 -38
- data/lib/openapi_client/models/payment_verification3ds.rb +215 -0
- data/lib/openapi_client/models/payment_verification_avs.rb +215 -0
- data/lib/openapi_client/models/payment_verification_cvv.rb +215 -0
- data/lib/{swagger_client → openapi_client}/models/primary_transaction.rb +93 -31
- data/lib/openapi_client/models/primary_transaction_additional_details.rb +352 -0
- data/lib/openapi_client/models/processor_data.rb +272 -0
- data/lib/openapi_client/models/purchase_cards.rb +192 -0
- data/lib/openapi_client/models/purchase_cards_level2.rb +267 -0
- data/lib/openapi_client/models/purchase_cards_level3.rb +186 -0
- data/lib/openapi_client/models/purchase_cards_level3_line_items.rb +337 -0
- data/lib/openapi_client/models/recurring_payment_details.rb +399 -0
- data/lib/openapi_client/models/recurring_payment_details_response.rb +296 -0
- data/lib/{swagger_client/models/order.rb → openapi_client/models/referenced_order.rb} +23 -36
- data/lib/openapi_client/models/response_type.rb +37 -0
- data/lib/openapi_client/models/score_only_request.rb +389 -0
- data/lib/{swagger_client/models/payment_schedules_response.rb → openapi_client/models/score_only_response.rb} +56 -56
- data/lib/openapi_client/models/score_only_response_fraud_score.rb +208 -0
- data/lib/openapi_client/models/score_only_response_fraud_score_explanations.rb +201 -0
- data/lib/openapi_client/models/secondary_transaction.rb +220 -0
- data/lib/openapi_client/models/secondary_transaction_additional_details.rb +183 -0
- data/lib/openapi_client/models/secure3d_response.rb +184 -0
- data/lib/{swagger_client → openapi_client}/models/sepa.rb +30 -35
- data/lib/{swagger_client → openapi_client}/models/sepa_mandate.rb +32 -35
- data/lib/{swagger_client → openapi_client}/models/shipping.rb +17 -22
- data/lib/openapi_client/models/soft_descriptor.rb +215 -0
- data/lib/{swagger_client → openapi_client}/models/split_shipment.rb +17 -21
- data/lib/{swagger_client → openapi_client}/models/stored_credential.rb +28 -32
- data/lib/openapi_client/models/sub_merchant_data.rb +302 -0
- data/lib/openapi_client/models/transaction.rb +337 -0
- data/lib/{swagger_client → openapi_client}/models/transaction_error_response.rb +110 -80
- data/lib/openapi_client/models/transaction_origin.rb +32 -0
- data/lib/{swagger_client → openapi_client}/models/transaction_response.rb +112 -82
- data/lib/openapi_client/models/transaction_type.rb +36 -0
- data/lib/openapi_client/version.rb +15 -0
- data/lib/openapi_client.rb +158 -0
- data/lib/simple/client_context.rb +2 -2
- data/lib/simple/gateway.rb +274 -37
- data/spec/api/authentication_api_spec.rb +12 -12
- data/spec/api/card_info_lookup_api_spec.rb +53 -0
- data/spec/api/card_verification_api_spec.rb +53 -0
- data/spec/api/currency_conversion_api_spec.rb +53 -0
- data/spec/api/fraud_detect_api_spec.rb +53 -0
- data/spec/api/order_api_spec.rb +44 -23
- data/spec/api/payment_api_spec.rb +50 -26
- data/spec/api/payment_schedules_api_spec.rb +111 -0
- data/spec/api/payment_token_api_spec.rb +74 -0
- data/spec/api/payment_url_api_spec.rb +53 -0
- data/spec/api_client_spec.rb +66 -66
- data/spec/configuration_spec.rb +15 -15
- data/spec/models/access_token_response_spec.rb +16 -23
- data/spec/models/additional_amount_rate_spec.rb +47 -0
- data/spec/models/additional_transaction_details_spec.rb +53 -0
- data/spec/models/address_spec.rb +16 -17
- data/spec/models/airline_ancillary_service_category_spec.rb +14 -15
- data/spec/models/airline_spec.rb +27 -28
- data/spec/models/airline_travel_route_spec.rb +22 -23
- data/spec/models/ali_pay_spec.rb +63 -0
- data/spec/models/amount_components_spec.rb +16 -17
- data/spec/models/amount_spec.rb +12 -13
- data/spec/models/authentication_request_spec.rb +51 -0
- data/spec/models/authentication_response_verification_request_spec.rb +59 -0
- data/spec/models/authentication_response_verification_spec.rb +23 -18
- data/spec/models/avs_response_spec.rb +55 -0
- data/spec/models/basic_response_spec.rb +53 -0
- data/spec/models/basket_item_spec.rb +13 -14
- data/spec/models/billing_address_phone_spec.rb +47 -0
- data/spec/models/billing_address_spec.rb +95 -0
- data/spec/models/billing_spec.rb +25 -20
- data/spec/models/car_rental_extra_charges_spec.rb +14 -15
- data/spec/models/car_rental_spec.rb +17 -18
- data/spec/models/card_info_lookup_request_spec.rb +47 -0
- data/spec/models/card_info_lookup_response_spec.rb +69 -0
- data/spec/models/card_info_spec.rb +79 -0
- data/spec/models/card_spec.rb +83 -0
- data/spec/models/card_verification_request_spec.rb +47 -0
- data/spec/models/card_verifications_transaction_spec.rb +11 -12
- data/spec/models/china_domestic_spec.rb +83 -0
- data/spec/models/client_locale_spec.rb +11 -12
- data/spec/models/contact_spec.rb +13 -14
- data/spec/models/customer_address_phone_spec.rb +47 -0
- data/spec/models/customer_address_spec.rb +77 -0
- data/spec/models/customer_spec.rb +111 -0
- data/spec/models/dcc_spec.rb +47 -0
- data/spec/models/device_networks_spec.rb +123 -0
- data/spec/models/device_spec.rb +111 -0
- data/spec/models/document_spec.rb +51 -0
- data/spec/models/error_details_spec.rb +11 -12
- data/spec/models/error_response_spec.rb +13 -14
- data/spec/models/error_spec.rb +12 -13
- data/spec/models/exchange_rate_request_spec.rb +69 -0
- data/spec/models/exchange_rate_response_spec.rb +119 -0
- data/spec/models/expiration_spec.rb +11 -12
- data/spec/models/fraud_order_items_spec.rb +83 -0
- data/spec/models/fraud_order_ship_to_address_spec.rb +77 -0
- data/spec/models/fraud_order_spec.rb +53 -0
- data/spec/models/frequency_spec.rb +15 -16
- data/spec/models/industry_specific_extensions_spec.rb +12 -13
- data/spec/models/installment_options_spec.rb +12 -13
- data/spec/models/lodging_extra_charges_spec.rb +14 -15
- data/spec/models/lodging_spec.rb +14 -15
- data/spec/models/loyalty_spec.rb +53 -0
- data/spec/models/merchant_location_merchant_address_spec.rb +71 -0
- data/spec/models/merchant_location_spec.rb +65 -0
- data/spec/models/merchant_spec.rb +59 -0
- data/spec/models/order_error_response_spec.rb +107 -0
- data/spec/models/order_response_spec.rb +101 -0
- data/spec/models/order_spec.rb +12 -13
- data/spec/models/pay_pal_spec.rb +10 -11
- data/spec/models/payment_card_authentication_result_spec.rb +26 -27
- data/spec/models/payment_card_spec.rb +41 -22
- data/spec/models/payment_facilitator_spec.rb +65 -0
- data/spec/models/payment_issuer_response_spec.rb +57 -0
- data/spec/models/payment_method_spec.rb +35 -18
- data/spec/models/payment_pay_method_spec.rb +75 -0
- data/spec/models/payment_schedules_error_response_spec.rb +81 -0
- data/spec/models/payment_schedules_request_spec.rb +43 -30
- data/spec/models/payment_schedules_response_spec.rb +30 -19
- data/spec/models/payment_spec.rb +109 -0
- data/spec/models/payment_tokenization_error_response_spec.rb +111 -0
- data/spec/models/payment_tokenization_request_spec.rb +63 -0
- data/spec/models/payment_tokenization_response_spec.rb +105 -0
- data/spec/models/payment_tokenization_spec.rb +93 -0
- data/spec/models/payment_url_error_response_spec.rb +87 -0
- data/spec/models/payment_url_request_spec.rb +73 -14
- data/spec/models/payment_url_response_spec.rb +25 -20
- data/spec/models/payment_verification3ds_spec.rb +53 -0
- data/spec/models/payment_verification_avs_spec.rb +53 -0
- data/spec/models/payment_verification_cvv_spec.rb +53 -0
- data/spec/models/primary_transaction_additional_details_spec.rb +28 -17
- data/spec/models/primary_transaction_spec.rb +45 -22
- data/spec/models/processor_data_spec.rb +41 -14
- data/spec/models/purchase_cards_level2_spec.rb +65 -0
- data/spec/models/purchase_cards_level3_line_items_spec.rb +89 -0
- data/spec/models/purchase_cards_level3_spec.rb +41 -0
- data/spec/models/purchase_cards_spec.rb +47 -0
- data/spec/models/recurring_payment_details_response_spec.rb +107 -0
- data/spec/models/recurring_payment_details_spec.rb +117 -0
- data/spec/models/referenced_order_spec.rb +47 -0
- data/spec/models/response_type_spec.rb +9 -10
- data/spec/models/score_only_request_spec.rb +127 -0
- data/spec/models/score_only_response_fraud_score_explanations_spec.rb +53 -0
- data/spec/models/score_only_response_fraud_score_spec.rb +53 -0
- data/spec/models/score_only_response_spec.rb +75 -0
- data/spec/models/secondary_transaction_additional_details_spec.rb +41 -0
- data/spec/models/secondary_transaction_spec.rb +29 -12
- data/spec/models/secure3d_response_spec.rb +41 -0
- data/spec/models/sepa_mandate_spec.rb +17 -18
- data/spec/models/sepa_spec.rb +14 -15
- data/spec/models/shipping_spec.rb +12 -13
- data/spec/models/soft_descriptor_spec.rb +47 -0
- data/spec/models/split_shipment_spec.rb +11 -12
- data/spec/models/stored_credential_spec.rb +21 -22
- data/spec/models/sub_merchant_data_spec.rb +71 -0
- data/spec/models/transaction_error_response_spec.rb +62 -51
- data/spec/models/transaction_origin_spec.rb +35 -0
- data/spec/models/transaction_response_spec.rb +61 -50
- data/spec/models/transaction_spec.rb +115 -0
- data/spec/models/transaction_type_spec.rb +9 -10
- data/spec/spec_helper.rb +6 -6
- metadata +339 -69
- data/docs/PaymentCardAuthenticationRequest.md +0 -8
- data/docs/TransactionResponseAuthenticationRedirect.md +0 -10
- data/docs/TransactionResponseAuthenticationRedirectParams.md +0 -10
- data/lib/swagger_client/api/order_api.rb +0 -229
- data/lib/swagger_client/models/response_type.rb +0 -37
- data/lib/swagger_client/models/transaction_type.rb +0 -36
- data/lib/swagger_client/version.rb +0 -15
- data/lib/swagger_client.rb +0 -91
- data/spec/models/payment_card_authentication_request_spec.rb +0 -46
- data/spec/models/transaction_response_authentication_redirect_params_spec.rb +0 -54
- data/spec/models/transaction_response_authentication_redirect_spec.rb +0 -58
@@ -1,24 +1,24 @@
|
|
1
1
|
=begin
|
2
|
-
#Payment Gateway API Specification
|
2
|
+
#Payment Gateway API Specification.
|
3
3
|
|
4
|
-
#Payment Gateway API for payment processing.
|
4
|
+
#Payment Gateway API for payment processing. Version 6.4.0.20181018.001
|
5
5
|
|
6
|
-
OpenAPI spec version:
|
6
|
+
OpenAPI spec version: 6.4.0.20181018.001
|
7
7
|
|
8
|
-
Generated by: https://
|
9
|
-
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
OpenAPI Generator version: unset
|
10
10
|
|
11
11
|
=end
|
12
12
|
|
13
13
|
require 'date'
|
14
14
|
|
15
|
-
module
|
16
|
-
|
15
|
+
module OpenapiClient
|
16
|
+
# Model for basket items
|
17
17
|
class BasketItem
|
18
18
|
# Item ID
|
19
19
|
attr_accessor :id
|
20
20
|
|
21
|
-
#
|
21
|
+
# Item in the basket
|
22
22
|
attr_accessor :description
|
23
23
|
|
24
24
|
attr_accessor :unit_price
|
@@ -26,7 +26,6 @@ module SwaggerClient
|
|
26
26
|
# Total quantity of items
|
27
27
|
attr_accessor :count
|
28
28
|
|
29
|
-
|
30
29
|
# Attribute mapping from ruby-style variable name to JSON key.
|
31
30
|
def self.attribute_map
|
32
31
|
{
|
@@ -38,7 +37,7 @@ module SwaggerClient
|
|
38
37
|
end
|
39
38
|
|
40
39
|
# Attribute type mapping.
|
41
|
-
def self.
|
40
|
+
def self.openapi_types
|
42
41
|
{
|
43
42
|
:'id' => :'String',
|
44
43
|
:'description' => :'String',
|
@@ -53,7 +52,7 @@ module SwaggerClient
|
|
53
52
|
return unless attributes.is_a?(Hash)
|
54
53
|
|
55
54
|
# convert string to symbol for hash key
|
56
|
-
attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
|
55
|
+
attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
|
57
56
|
|
58
57
|
if attributes.has_key?(:'id')
|
59
58
|
self.id = attributes[:'id']
|
@@ -70,20 +69,19 @@ module SwaggerClient
|
|
70
69
|
if attributes.has_key?(:'count')
|
71
70
|
self.count = attributes[:'count']
|
72
71
|
end
|
73
|
-
|
74
72
|
end
|
75
73
|
|
76
74
|
# Show invalid properties with the reasons. Usually used together with valid?
|
77
75
|
# @return Array for valid properties with the reasons
|
78
76
|
def list_invalid_properties
|
79
77
|
invalid_properties = Array.new
|
80
|
-
|
78
|
+
invalid_properties
|
81
79
|
end
|
82
80
|
|
83
81
|
# Check to see if the all the properties in the model are valid
|
84
82
|
# @return true if the model is valid
|
85
83
|
def valid?
|
86
|
-
|
84
|
+
true
|
87
85
|
end
|
88
86
|
|
89
87
|
# Checks equality by comparing each attribute.
|
@@ -114,12 +112,12 @@ module SwaggerClient
|
|
114
112
|
# @return [Object] Returns the model itself
|
115
113
|
def build_from_hash(attributes)
|
116
114
|
return nil unless attributes.is_a?(Hash)
|
117
|
-
self.class.
|
115
|
+
self.class.openapi_types.each_pair do |key, type|
|
118
116
|
if type =~ /\AArray<(.*)>/i
|
119
117
|
# check to ensure the input is an array given that the the attribute
|
120
118
|
# is documented as an array but the input is not
|
121
119
|
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
122
|
-
self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) }
|
120
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
123
121
|
end
|
124
122
|
elsif !attributes[self.class.attribute_map[key]].nil?
|
125
123
|
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
@@ -166,7 +164,7 @@ module SwaggerClient
|
|
166
164
|
end
|
167
165
|
end
|
168
166
|
else # model
|
169
|
-
temp_model =
|
167
|
+
temp_model = OpenapiClient.const_get(type).new
|
170
168
|
temp_model.build_from_hash(value)
|
171
169
|
end
|
172
170
|
end
|
@@ -201,7 +199,7 @@ module SwaggerClient
|
|
201
199
|
# @return [Hash] Returns the value in the form of hash
|
202
200
|
def _to_hash(value)
|
203
201
|
if value.is_a?(Array)
|
204
|
-
value.compact.map{ |v| _to_hash(v) }
|
202
|
+
value.compact.map { |v| _to_hash(v) }
|
205
203
|
elsif value.is_a?(Hash)
|
206
204
|
{}.tap do |hash|
|
207
205
|
value.each { |k, v| hash[k] = _to_hash(v) }
|
@@ -212,7 +210,5 @@ module SwaggerClient
|
|
212
210
|
value
|
213
211
|
end
|
214
212
|
end
|
215
|
-
|
216
213
|
end
|
217
|
-
|
218
214
|
end
|
@@ -1,26 +1,33 @@
|
|
1
1
|
=begin
|
2
|
-
#Payment Gateway API Specification
|
2
|
+
#Payment Gateway API Specification.
|
3
3
|
|
4
|
-
#Payment Gateway API for payment processing.
|
4
|
+
#Payment Gateway API for payment processing. Version 6.4.0.20181018.001
|
5
5
|
|
6
|
-
OpenAPI spec version:
|
6
|
+
OpenAPI spec version: 6.4.0.20181018.001
|
7
7
|
|
8
|
-
Generated by: https://
|
9
|
-
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
OpenAPI Generator version: unset
|
10
10
|
|
11
11
|
=end
|
12
12
|
|
13
13
|
require 'date'
|
14
14
|
|
15
|
-
module
|
16
|
-
|
15
|
+
module OpenapiClient
|
16
|
+
# Customer billing information
|
17
17
|
class Billing
|
18
|
+
# Billing name
|
18
19
|
attr_accessor :name
|
19
20
|
|
21
|
+
# Customer ID for billing purpose
|
22
|
+
attr_accessor :customer_id
|
23
|
+
|
24
|
+
# Personal number for the customer
|
20
25
|
attr_accessor :personal_number
|
21
26
|
|
27
|
+
# Customer birth date
|
22
28
|
attr_accessor :birth_date
|
23
29
|
|
30
|
+
# Customer gender
|
24
31
|
attr_accessor :gender
|
25
32
|
|
26
33
|
attr_accessor :contact
|
@@ -53,6 +60,7 @@ module SwaggerClient
|
|
53
60
|
def self.attribute_map
|
54
61
|
{
|
55
62
|
:'name' => :'name',
|
63
|
+
:'customer_id' => :'customerId',
|
56
64
|
:'personal_number' => :'personalNumber',
|
57
65
|
:'birth_date' => :'birthDate',
|
58
66
|
:'gender' => :'gender',
|
@@ -62,9 +70,10 @@ module SwaggerClient
|
|
62
70
|
end
|
63
71
|
|
64
72
|
# Attribute type mapping.
|
65
|
-
def self.
|
73
|
+
def self.openapi_types
|
66
74
|
{
|
67
75
|
:'name' => :'String',
|
76
|
+
:'customer_id' => :'String',
|
68
77
|
:'personal_number' => :'String',
|
69
78
|
:'birth_date' => :'Date',
|
70
79
|
:'gender' => :'String',
|
@@ -79,12 +88,16 @@ module SwaggerClient
|
|
79
88
|
return unless attributes.is_a?(Hash)
|
80
89
|
|
81
90
|
# convert string to symbol for hash key
|
82
|
-
attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
|
91
|
+
attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
|
83
92
|
|
84
93
|
if attributes.has_key?(:'name')
|
85
94
|
self.name = attributes[:'name']
|
86
95
|
end
|
87
96
|
|
97
|
+
if attributes.has_key?(:'customerId')
|
98
|
+
self.customer_id = attributes[:'customerId']
|
99
|
+
end
|
100
|
+
|
88
101
|
if attributes.has_key?(:'personalNumber')
|
89
102
|
self.personal_number = attributes[:'personalNumber']
|
90
103
|
end
|
@@ -104,7 +117,6 @@ module SwaggerClient
|
|
104
117
|
if attributes.has_key?(:'address')
|
105
118
|
self.address = attributes[:'address']
|
106
119
|
end
|
107
|
-
|
108
120
|
end
|
109
121
|
|
110
122
|
# Show invalid properties with the reasons. Usually used together with valid?
|
@@ -112,38 +124,67 @@ module SwaggerClient
|
|
112
124
|
def list_invalid_properties
|
113
125
|
invalid_properties = Array.new
|
114
126
|
if !@name.nil? && @name.to_s.length > 96
|
115
|
-
invalid_properties.push(
|
127
|
+
invalid_properties.push('invalid value for "name", the character length must be smaller than or equal to 96.')
|
116
128
|
end
|
117
129
|
|
118
|
-
|
130
|
+
if !@customer_id.nil? && @customer_id.to_s.length > 32
|
131
|
+
invalid_properties.push('invalid value for "customer_id", the character length must be smaller than or equal to 32.')
|
132
|
+
end
|
133
|
+
|
134
|
+
if !@personal_number.nil? && @personal_number.to_s.length > 20
|
135
|
+
invalid_properties.push('invalid value for "personal_number", the character length must be smaller than or equal to 20.')
|
136
|
+
end
|
137
|
+
|
138
|
+
invalid_properties
|
119
139
|
end
|
120
140
|
|
121
141
|
# Check to see if the all the properties in the model are valid
|
122
142
|
# @return true if the model is valid
|
123
143
|
def valid?
|
124
144
|
return false if !@name.nil? && @name.to_s.length > 96
|
125
|
-
|
145
|
+
return false if !@customer_id.nil? && @customer_id.to_s.length > 32
|
146
|
+
return false if !@personal_number.nil? && @personal_number.to_s.length > 20
|
147
|
+
gender_validator = EnumAttributeValidator.new('String', ['MALE', 'FEMALE', 'UNKNOWN'])
|
126
148
|
return false unless gender_validator.valid?(@gender)
|
127
|
-
|
149
|
+
true
|
128
150
|
end
|
129
151
|
|
130
152
|
# Custom attribute writer method with validation
|
131
153
|
# @param [Object] name Value to be assigned
|
132
154
|
def name=(name)
|
133
|
-
|
134
155
|
if !name.nil? && name.to_s.length > 96
|
135
|
-
fail ArgumentError,
|
156
|
+
fail ArgumentError, 'invalid value for "name", the character length must be smaller than or equal to 96.'
|
136
157
|
end
|
137
158
|
|
138
159
|
@name = name
|
139
160
|
end
|
140
161
|
|
162
|
+
# Custom attribute writer method with validation
|
163
|
+
# @param [Object] customer_id Value to be assigned
|
164
|
+
def customer_id=(customer_id)
|
165
|
+
if !customer_id.nil? && customer_id.to_s.length > 32
|
166
|
+
fail ArgumentError, 'invalid value for "customer_id", the character length must be smaller than or equal to 32.'
|
167
|
+
end
|
168
|
+
|
169
|
+
@customer_id = customer_id
|
170
|
+
end
|
171
|
+
|
172
|
+
# Custom attribute writer method with validation
|
173
|
+
# @param [Object] personal_number Value to be assigned
|
174
|
+
def personal_number=(personal_number)
|
175
|
+
if !personal_number.nil? && personal_number.to_s.length > 20
|
176
|
+
fail ArgumentError, 'invalid value for "personal_number", the character length must be smaller than or equal to 20.'
|
177
|
+
end
|
178
|
+
|
179
|
+
@personal_number = personal_number
|
180
|
+
end
|
181
|
+
|
141
182
|
# Custom attribute writer method checking allowed values (enum).
|
142
183
|
# @param [Object] gender Object to be assigned
|
143
184
|
def gender=(gender)
|
144
|
-
validator = EnumAttributeValidator.new('String', [
|
185
|
+
validator = EnumAttributeValidator.new('String', ['MALE', 'FEMALE', 'UNKNOWN'])
|
145
186
|
unless validator.valid?(gender)
|
146
|
-
fail ArgumentError,
|
187
|
+
fail ArgumentError, 'invalid value for "gender", must be one of #{validator.allowable_values}.'
|
147
188
|
end
|
148
189
|
@gender = gender
|
149
190
|
end
|
@@ -154,6 +195,7 @@ module SwaggerClient
|
|
154
195
|
return true if self.equal?(o)
|
155
196
|
self.class == o.class &&
|
156
197
|
name == o.name &&
|
198
|
+
customer_id == o.customer_id &&
|
157
199
|
personal_number == o.personal_number &&
|
158
200
|
birth_date == o.birth_date &&
|
159
201
|
gender == o.gender &&
|
@@ -170,7 +212,7 @@ module SwaggerClient
|
|
170
212
|
# Calculates hash code according to all attributes.
|
171
213
|
# @return [Fixnum] Hash code
|
172
214
|
def hash
|
173
|
-
[name, personal_number, birth_date, gender, contact, address].hash
|
215
|
+
[name, customer_id, personal_number, birth_date, gender, contact, address].hash
|
174
216
|
end
|
175
217
|
|
176
218
|
# Builds the object from hash
|
@@ -178,12 +220,12 @@ module SwaggerClient
|
|
178
220
|
# @return [Object] Returns the model itself
|
179
221
|
def build_from_hash(attributes)
|
180
222
|
return nil unless attributes.is_a?(Hash)
|
181
|
-
self.class.
|
223
|
+
self.class.openapi_types.each_pair do |key, type|
|
182
224
|
if type =~ /\AArray<(.*)>/i
|
183
225
|
# check to ensure the input is an array given that the the attribute
|
184
226
|
# is documented as an array but the input is not
|
185
227
|
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
186
|
-
self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) }
|
228
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
187
229
|
end
|
188
230
|
elsif !attributes[self.class.attribute_map[key]].nil?
|
189
231
|
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
@@ -230,7 +272,7 @@ module SwaggerClient
|
|
230
272
|
end
|
231
273
|
end
|
232
274
|
else # model
|
233
|
-
temp_model =
|
275
|
+
temp_model = OpenapiClient.const_get(type).new
|
234
276
|
temp_model.build_from_hash(value)
|
235
277
|
end
|
236
278
|
end
|
@@ -265,7 +307,7 @@ module SwaggerClient
|
|
265
307
|
# @return [Hash] Returns the value in the form of hash
|
266
308
|
def _to_hash(value)
|
267
309
|
if value.is_a?(Array)
|
268
|
-
value.compact.map{ |v| _to_hash(v) }
|
310
|
+
value.compact.map { |v| _to_hash(v) }
|
269
311
|
elsif value.is_a?(Hash)
|
270
312
|
{}.tap do |hash|
|
271
313
|
value.each { |k, v| hash[k] = _to_hash(v) }
|
@@ -276,7 +318,5 @@ module SwaggerClient
|
|
276
318
|
value
|
277
319
|
end
|
278
320
|
end
|
279
|
-
|
280
321
|
end
|
281
|
-
|
282
322
|
end
|
@@ -0,0 +1,279 @@
|
|
1
|
+
=begin
|
2
|
+
#Payment Gateway API Specification.
|
3
|
+
|
4
|
+
#Payment Gateway API for payment processing. Version 6.4.0.20181018.001
|
5
|
+
|
6
|
+
OpenAPI spec version: 6.4.0.20181018.001
|
7
|
+
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
OpenAPI Generator version: unset
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'date'
|
14
|
+
|
15
|
+
module OpenapiClient
|
16
|
+
# Customer Address Fields associated with billing.
|
17
|
+
class BillingAddress
|
18
|
+
# First name.
|
19
|
+
attr_accessor :first_name
|
20
|
+
|
21
|
+
# Last name.
|
22
|
+
attr_accessor :last_name
|
23
|
+
|
24
|
+
# Middle name.
|
25
|
+
attr_accessor :middle_name
|
26
|
+
|
27
|
+
# Street Address 1. This field is required if the parent object is present.
|
28
|
+
attr_accessor :street
|
29
|
+
|
30
|
+
# Street Address 2.
|
31
|
+
attr_accessor :street2
|
32
|
+
|
33
|
+
# State or Province.
|
34
|
+
attr_accessor :state_province
|
35
|
+
|
36
|
+
# City.
|
37
|
+
attr_accessor :city
|
38
|
+
|
39
|
+
# Country.
|
40
|
+
attr_accessor :country
|
41
|
+
|
42
|
+
attr_accessor :phone
|
43
|
+
|
44
|
+
# Postal code
|
45
|
+
attr_accessor :zip_postal_code
|
46
|
+
|
47
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
48
|
+
def self.attribute_map
|
49
|
+
{
|
50
|
+
:'first_name' => :'firstName',
|
51
|
+
:'last_name' => :'lastName',
|
52
|
+
:'middle_name' => :'middleName',
|
53
|
+
:'street' => :'street',
|
54
|
+
:'street2' => :'street2',
|
55
|
+
:'state_province' => :'stateProvince',
|
56
|
+
:'city' => :'city',
|
57
|
+
:'country' => :'country',
|
58
|
+
:'phone' => :'phone',
|
59
|
+
:'zip_postal_code' => :'zipPostalCode'
|
60
|
+
}
|
61
|
+
end
|
62
|
+
|
63
|
+
# Attribute type mapping.
|
64
|
+
def self.openapi_types
|
65
|
+
{
|
66
|
+
:'first_name' => :'String',
|
67
|
+
:'last_name' => :'String',
|
68
|
+
:'middle_name' => :'String',
|
69
|
+
:'street' => :'String',
|
70
|
+
:'street2' => :'String',
|
71
|
+
:'state_province' => :'String',
|
72
|
+
:'city' => :'String',
|
73
|
+
:'country' => :'String',
|
74
|
+
:'phone' => :'BillingAddressPhone',
|
75
|
+
:'zip_postal_code' => :'String'
|
76
|
+
}
|
77
|
+
end
|
78
|
+
|
79
|
+
# Initializes the object
|
80
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
81
|
+
def initialize(attributes = {})
|
82
|
+
return unless attributes.is_a?(Hash)
|
83
|
+
|
84
|
+
# convert string to symbol for hash key
|
85
|
+
attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
|
86
|
+
|
87
|
+
if attributes.has_key?(:'firstName')
|
88
|
+
self.first_name = attributes[:'firstName']
|
89
|
+
end
|
90
|
+
|
91
|
+
if attributes.has_key?(:'lastName')
|
92
|
+
self.last_name = attributes[:'lastName']
|
93
|
+
end
|
94
|
+
|
95
|
+
if attributes.has_key?(:'middleName')
|
96
|
+
self.middle_name = attributes[:'middleName']
|
97
|
+
end
|
98
|
+
|
99
|
+
if attributes.has_key?(:'street')
|
100
|
+
self.street = attributes[:'street']
|
101
|
+
end
|
102
|
+
|
103
|
+
if attributes.has_key?(:'street2')
|
104
|
+
self.street2 = attributes[:'street2']
|
105
|
+
end
|
106
|
+
|
107
|
+
if attributes.has_key?(:'stateProvince')
|
108
|
+
self.state_province = attributes[:'stateProvince']
|
109
|
+
end
|
110
|
+
|
111
|
+
if attributes.has_key?(:'city')
|
112
|
+
self.city = attributes[:'city']
|
113
|
+
end
|
114
|
+
|
115
|
+
if attributes.has_key?(:'country')
|
116
|
+
self.country = attributes[:'country']
|
117
|
+
end
|
118
|
+
|
119
|
+
if attributes.has_key?(:'phone')
|
120
|
+
self.phone = attributes[:'phone']
|
121
|
+
end
|
122
|
+
|
123
|
+
if attributes.has_key?(:'zipPostalCode')
|
124
|
+
self.zip_postal_code = attributes[:'zipPostalCode']
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
129
|
+
# @return Array for valid properties with the reasons
|
130
|
+
def list_invalid_properties
|
131
|
+
invalid_properties = Array.new
|
132
|
+
if @street.nil?
|
133
|
+
invalid_properties.push('invalid value for "street", street cannot be nil.')
|
134
|
+
end
|
135
|
+
|
136
|
+
invalid_properties
|
137
|
+
end
|
138
|
+
|
139
|
+
# Check to see if the all the properties in the model are valid
|
140
|
+
# @return true if the model is valid
|
141
|
+
def valid?
|
142
|
+
return false if @street.nil?
|
143
|
+
true
|
144
|
+
end
|
145
|
+
|
146
|
+
# Checks equality by comparing each attribute.
|
147
|
+
# @param [Object] Object to be compared
|
148
|
+
def ==(o)
|
149
|
+
return true if self.equal?(o)
|
150
|
+
self.class == o.class &&
|
151
|
+
first_name == o.first_name &&
|
152
|
+
last_name == o.last_name &&
|
153
|
+
middle_name == o.middle_name &&
|
154
|
+
street == o.street &&
|
155
|
+
street2 == o.street2 &&
|
156
|
+
state_province == o.state_province &&
|
157
|
+
city == o.city &&
|
158
|
+
country == o.country &&
|
159
|
+
phone == o.phone &&
|
160
|
+
zip_postal_code == o.zip_postal_code
|
161
|
+
end
|
162
|
+
|
163
|
+
# @see the `==` method
|
164
|
+
# @param [Object] Object to be compared
|
165
|
+
def eql?(o)
|
166
|
+
self == o
|
167
|
+
end
|
168
|
+
|
169
|
+
# Calculates hash code according to all attributes.
|
170
|
+
# @return [Fixnum] Hash code
|
171
|
+
def hash
|
172
|
+
[first_name, last_name, middle_name, street, street2, state_province, city, country, phone, zip_postal_code].hash
|
173
|
+
end
|
174
|
+
|
175
|
+
# Builds the object from hash
|
176
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
177
|
+
# @return [Object] Returns the model itself
|
178
|
+
def build_from_hash(attributes)
|
179
|
+
return nil unless attributes.is_a?(Hash)
|
180
|
+
self.class.openapi_types.each_pair do |key, type|
|
181
|
+
if type =~ /\AArray<(.*)>/i
|
182
|
+
# check to ensure the input is an array given that the the attribute
|
183
|
+
# is documented as an array but the input is not
|
184
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
185
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
186
|
+
end
|
187
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
188
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
189
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
190
|
+
end
|
191
|
+
|
192
|
+
self
|
193
|
+
end
|
194
|
+
|
195
|
+
# Deserializes the data based on type
|
196
|
+
# @param string type Data type
|
197
|
+
# @param string value Value to be deserialized
|
198
|
+
# @return [Object] Deserialized data
|
199
|
+
def _deserialize(type, value)
|
200
|
+
case type.to_sym
|
201
|
+
when :DateTime
|
202
|
+
DateTime.parse(value)
|
203
|
+
when :Date
|
204
|
+
Date.parse(value)
|
205
|
+
when :String
|
206
|
+
value.to_s
|
207
|
+
when :Integer
|
208
|
+
value.to_i
|
209
|
+
when :Float
|
210
|
+
value.to_f
|
211
|
+
when :BOOLEAN
|
212
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
213
|
+
true
|
214
|
+
else
|
215
|
+
false
|
216
|
+
end
|
217
|
+
when :Object
|
218
|
+
# generic object (usually a Hash), return directly
|
219
|
+
value
|
220
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
221
|
+
inner_type = Regexp.last_match[:inner_type]
|
222
|
+
value.map { |v| _deserialize(inner_type, v) }
|
223
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
224
|
+
k_type = Regexp.last_match[:k_type]
|
225
|
+
v_type = Regexp.last_match[:v_type]
|
226
|
+
{}.tap do |hash|
|
227
|
+
value.each do |k, v|
|
228
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
229
|
+
end
|
230
|
+
end
|
231
|
+
else # model
|
232
|
+
temp_model = OpenapiClient.const_get(type).new
|
233
|
+
temp_model.build_from_hash(value)
|
234
|
+
end
|
235
|
+
end
|
236
|
+
|
237
|
+
# Returns the string representation of the object
|
238
|
+
# @return [String] String presentation of the object
|
239
|
+
def to_s
|
240
|
+
to_hash.to_s
|
241
|
+
end
|
242
|
+
|
243
|
+
# to_body is an alias to to_hash (backward compatibility)
|
244
|
+
# @return [Hash] Returns the object in the form of hash
|
245
|
+
def to_body
|
246
|
+
to_hash
|
247
|
+
end
|
248
|
+
|
249
|
+
# Returns the object in the form of hash
|
250
|
+
# @return [Hash] Returns the object in the form of hash
|
251
|
+
def to_hash
|
252
|
+
hash = {}
|
253
|
+
self.class.attribute_map.each_pair do |attr, param|
|
254
|
+
value = self.send(attr)
|
255
|
+
next if value.nil?
|
256
|
+
hash[param] = _to_hash(value)
|
257
|
+
end
|
258
|
+
hash
|
259
|
+
end
|
260
|
+
|
261
|
+
# Outputs non-array value in the form of hash
|
262
|
+
# For object, use to_hash. Otherwise, just return the value
|
263
|
+
# @param [Object] value Any valid value
|
264
|
+
# @return [Hash] Returns the value in the form of hash
|
265
|
+
def _to_hash(value)
|
266
|
+
if value.is_a?(Array)
|
267
|
+
value.compact.map { |v| _to_hash(v) }
|
268
|
+
elsif value.is_a?(Hash)
|
269
|
+
{}.tap do |hash|
|
270
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
271
|
+
end
|
272
|
+
elsif value.respond_to? :to_hash
|
273
|
+
value.to_hash
|
274
|
+
else
|
275
|
+
value
|
276
|
+
end
|
277
|
+
end
|
278
|
+
end
|
279
|
+
end
|