paypal-server-sdk 2.0.0 → 2.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.
Files changed (96) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +73 -23
  3. data/bin/console +15 -0
  4. data/lib/paypal_server_sdk/client.rb +11 -0
  5. data/lib/paypal_server_sdk/configuration.rb +66 -0
  6. data/lib/paypal_server_sdk/controllers/base_controller.rb +1 -1
  7. data/lib/paypal_server_sdk/http/auth/o_auth2.rb +15 -0
  8. data/lib/paypal_server_sdk/http/proxy_settings.rb +9 -0
  9. data/lib/paypal_server_sdk/logging/configuration/api_logging_configuration.rb +181 -109
  10. data/lib/paypal_server_sdk/models/apple_pay_payment_data_type.rb +13 -0
  11. data/lib/paypal_server_sdk/models/application_context_user_action.rb +13 -0
  12. data/lib/paypal_server_sdk/models/authorization_incomplete_reason.rb +13 -0
  13. data/lib/paypal_server_sdk/models/authorization_status.rb +17 -0
  14. data/lib/paypal_server_sdk/models/avs_code.rb +35 -0
  15. data/lib/paypal_server_sdk/models/callback_events.rb +13 -0
  16. data/lib/paypal_server_sdk/models/capture_incomplete_reason.rb +23 -0
  17. data/lib/paypal_server_sdk/models/capture_status.rb +17 -0
  18. data/lib/paypal_server_sdk/models/capture_type.rb +6 -0
  19. data/lib/paypal_server_sdk/models/card_brand.rb +41 -0
  20. data/lib/paypal_server_sdk/models/card_type.rb +16 -0
  21. data/lib/paypal_server_sdk/models/card_verification_status.rb +13 -0
  22. data/lib/paypal_server_sdk/models/checkout_payment_intent.rb +13 -0
  23. data/lib/paypal_server_sdk/models/cvv_code.rb +25 -0
  24. data/lib/paypal_server_sdk/models/disbursement_mode.rb +13 -0
  25. data/lib/paypal_server_sdk/models/dispute_category.rb +13 -0
  26. data/lib/paypal_server_sdk/models/eci_flag.rb +17 -0
  27. data/lib/paypal_server_sdk/models/enrollment_status.rb +15 -0
  28. data/lib/paypal_server_sdk/models/experience_context_shipping_preference.rb +14 -0
  29. data/lib/paypal_server_sdk/models/experience_status.rb +15 -0
  30. data/lib/paypal_server_sdk/models/fulfillment_type.rb +15 -0
  31. data/lib/paypal_server_sdk/models/google_pay_authentication_method.rb +13 -0
  32. data/lib/paypal_server_sdk/models/google_pay_payment_method.rb +6 -0
  33. data/lib/paypal_server_sdk/models/interval_unit.rb +15 -0
  34. data/lib/paypal_server_sdk/models/item_category.rb +14 -0
  35. data/lib/paypal_server_sdk/models/liability_shift_indicator.rb +14 -0
  36. data/lib/paypal_server_sdk/models/link_http_method.rb +19 -0
  37. data/lib/paypal_server_sdk/models/mobile_return_flow.rb +13 -0
  38. data/lib/paypal_server_sdk/models/o_auth_provider_error.rb +17 -0
  39. data/lib/paypal_server_sdk/models/order_application_context_landing_page.rb +14 -0
  40. data/lib/paypal_server_sdk/models/order_application_context_shipping_preference.rb +14 -0
  41. data/lib/paypal_server_sdk/models/order_application_context_user_action.rb +13 -0
  42. data/lib/paypal_server_sdk/models/order_status.rb +17 -0
  43. data/lib/paypal_server_sdk/models/order_tracker_status.rb +13 -0
  44. data/lib/paypal_server_sdk/models/orders_card_verification_method.rb +15 -0
  45. data/lib/paypal_server_sdk/models/os_type.rb +14 -0
  46. data/lib/paypal_server_sdk/models/pa_res_status.rb +19 -0
  47. data/lib/paypal_server_sdk/models/patch_op.rb +17 -0
  48. data/lib/paypal_server_sdk/models/payee_payment_method_preference.rb +13 -0
  49. data/lib/paypal_server_sdk/models/payment_advice_code.rb +26 -0
  50. data/lib/paypal_server_sdk/models/payment_initiator.rb +13 -0
  51. data/lib/paypal_server_sdk/models/payment_token_status.rb +16 -0
  52. data/lib/paypal_server_sdk/models/paypal_experience_landing_page.rb +15 -0
  53. data/lib/paypal_server_sdk/models/paypal_experience_user_action.rb +13 -0
  54. data/lib/paypal_server_sdk/models/paypal_payment_token_customer_type.rb +13 -0
  55. data/lib/paypal_server_sdk/models/paypal_payment_token_usage_type.rb +13 -0
  56. data/lib/paypal_server_sdk/models/paypal_reference_id_type.rb +15 -0
  57. data/lib/paypal_server_sdk/models/paypal_wallet_account_verification_status.rb +13 -0
  58. data/lib/paypal_server_sdk/models/paypal_wallet_contact_preference.rb +14 -0
  59. data/lib/paypal_server_sdk/models/paypal_wallet_context_shipping_preference.rb +14 -0
  60. data/lib/paypal_server_sdk/models/paypal_wallet_vault_status.rb +14 -0
  61. data/lib/paypal_server_sdk/models/phone_type.rb +16 -0
  62. data/lib/paypal_server_sdk/models/plan_request_status.rb +14 -0
  63. data/lib/paypal_server_sdk/models/pricing_model.rb +14 -0
  64. data/lib/paypal_server_sdk/models/processor_response_code.rb +165 -0
  65. data/lib/paypal_server_sdk/models/reason_code.rb +19 -0
  66. data/lib/paypal_server_sdk/models/refund_incomplete_reason.rb +6 -0
  67. data/lib/paypal_server_sdk/models/refund_status.rb +15 -0
  68. data/lib/paypal_server_sdk/models/return_flow.rb +13 -0
  69. data/lib/paypal_server_sdk/models/seller_protection_status.rb +14 -0
  70. data/lib/paypal_server_sdk/models/setup_fee_failure_action.rb +13 -0
  71. data/lib/paypal_server_sdk/models/shipment_carrier.rb +1428 -1
  72. data/lib/paypal_server_sdk/models/shipping_type.rb +15 -0
  73. data/lib/paypal_server_sdk/models/standard_entry_class_code.rb +15 -0
  74. data/lib/paypal_server_sdk/models/store_in_vault_instruction.rb +6 -0
  75. data/lib/paypal_server_sdk/models/stored_payment_source_payment_type.rb +14 -0
  76. data/lib/paypal_server_sdk/models/stored_payment_source_usage_type.rb +14 -0
  77. data/lib/paypal_server_sdk/models/subscription_plan_status.rb +14 -0
  78. data/lib/paypal_server_sdk/models/subscription_pricing_model.rb +13 -0
  79. data/lib/paypal_server_sdk/models/subscriptions_card_brand.rb +36 -0
  80. data/lib/paypal_server_sdk/models/tax_id_type.rb +13 -0
  81. data/lib/paypal_server_sdk/models/tenure_type.rb +13 -0
  82. data/lib/paypal_server_sdk/models/token_type.rb +6 -0
  83. data/lib/paypal_server_sdk/models/upc_type.rb +18 -0
  84. data/lib/paypal_server_sdk/models/usage_pattern.rb +23 -0
  85. data/lib/paypal_server_sdk/models/vault_card_verification_method.rb +13 -0
  86. data/lib/paypal_server_sdk/models/vault_instruction_action.rb +13 -0
  87. data/lib/paypal_server_sdk/models/vault_status.rb +14 -0
  88. data/lib/paypal_server_sdk/models/vault_token_request_type.rb +6 -0
  89. data/lib/paypal_server_sdk/models/vault_user_action.rb +13 -0
  90. data/lib/paypal_server_sdk/models/venmo_payment_token_customer_type.rb +13 -0
  91. data/lib/paypal_server_sdk/models/venmo_payment_token_usage_pattern.rb +17 -0
  92. data/lib/paypal_server_sdk/models/venmo_payment_token_usage_type.rb +13 -0
  93. data/lib/paypal_server_sdk/models/venmo_vault_response_status.rb +14 -0
  94. data/lib/paypal_server_sdk/models/venmo_wallet_experience_context_shipping_preference.rb +14 -0
  95. data/lib/paypal_server_sdk/models/venmo_wallet_experience_context_user_action.rb +13 -0
  96. metadata +3 -2
@@ -25,5 +25,18 @@ module PaypalServerSdk
25
25
 
26
26
  true
27
27
  end
28
+
29
+ def self.from_value(value, default_value = CONTINUE)
30
+ return default_value if value.nil?
31
+
32
+ str = value.to_s.strip
33
+
34
+ case str.downcase
35
+ when 'continue' then CONTINUE
36
+ when 'subscribe_now' then SUBSCRIBE_NOW
37
+ else
38
+ default_value
39
+ end
40
+ end
28
41
  end
29
42
  end
@@ -19,5 +19,18 @@ module PaypalServerSdk
19
19
 
20
20
  true
21
21
  end
22
+
23
+ def self.from_value(value, default_value = PENDING_REVIEW)
24
+ return default_value if value.nil?
25
+
26
+ str = value.to_s.strip
27
+
28
+ case str.downcase
29
+ when 'pending_review' then PENDING_REVIEW
30
+ when 'declined_by_risk_fraud_filters' then DECLINED_BY_RISK_FRAUD_FILTERS
31
+ else
32
+ default_value
33
+ end
34
+ end
22
35
  end
23
36
  end
@@ -37,5 +37,22 @@ module PaypalServerSdk
37
37
 
38
38
  true
39
39
  end
40
+
41
+ def self.from_value(value, default_value = CREATED)
42
+ return default_value if value.nil?
43
+
44
+ str = value.to_s.strip
45
+
46
+ case str.downcase
47
+ when 'created' then CREATED
48
+ when 'captured' then CAPTURED
49
+ when 'denied' then DENIED
50
+ when 'partially_captured' then PARTIALLY_CAPTURED
51
+ when 'voided' then VOIDED
52
+ when 'pending' then PENDING
53
+ else
54
+ default_value
55
+ end
56
+ end
40
57
  end
41
58
  end
@@ -117,5 +117,40 @@ module PaypalServerSdk
117
117
 
118
118
  true
119
119
  end
120
+
121
+ def self.from_value(value, default_value = AVS_A)
122
+ return default_value if value.nil?
123
+
124
+ str = value.to_s.strip
125
+
126
+ case str.downcase
127
+ when 'avs_a' then AVS_A
128
+ when 'avs_b' then AVS_B
129
+ when 'avs_c' then AVS_C
130
+ when 'avs_d' then AVS_D
131
+ when 'avs_e' then AVS_E
132
+ when 'avs_f' then AVS_F
133
+ when 'avs_g' then AVS_G
134
+ when 'avs_i' then AVS_I
135
+ when 'avs_m' then AVS_M
136
+ when 'avs_n' then AVS_N
137
+ when 'avs_p' then AVS_P
138
+ when 'avs_r' then AVS_R
139
+ when 'avs_s' then AVS_S
140
+ when 'avs_u' then AVS_U
141
+ when 'avs_w' then AVS_W
142
+ when 'avs_x' then AVS_X
143
+ when 'avs_y' then AVS_Y
144
+ when 'avs_z' then AVS_Z
145
+ when 'avs_null' then AVS_NULL
146
+ when 'avs_0' then AVS_0
147
+ when 'avs_1' then AVS_1
148
+ when 'avs_2' then AVS_2
149
+ when 'avs_3' then AVS_3
150
+ when 'avs_4' then AVS_4
151
+ else
152
+ default_value
153
+ end
154
+ end
120
155
  end
121
156
  end
@@ -23,5 +23,18 @@ module PaypalServerSdk
23
23
 
24
24
  true
25
25
  end
26
+
27
+ def self.from_value(value, default_value = SHIPPING_ADDRESS)
28
+ return default_value if value.nil?
29
+
30
+ str = value.to_s.strip
31
+
32
+ case str.downcase
33
+ when 'shipping_address' then SHIPPING_ADDRESS
34
+ when 'shipping_options' then SHIPPING_OPTIONS
35
+ else
36
+ default_value
37
+ end
38
+ end
26
39
  end
27
40
  end
@@ -59,5 +59,28 @@ module PaypalServerSdk
59
59
 
60
60
  true
61
61
  end
62
+
63
+ def self.from_value(value, default_value = BUYER_COMPLAINT)
64
+ return default_value if value.nil?
65
+
66
+ str = value.to_s.strip
67
+
68
+ case str.downcase
69
+ when 'buyer_complaint' then BUYER_COMPLAINT
70
+ when 'chargeback' then CHARGEBACK
71
+ when 'echeck' then ECHECK
72
+ when 'international_withdrawal' then INTERNATIONAL_WITHDRAWAL
73
+ when 'other' then OTHER
74
+ when 'pending_review' then PENDING_REVIEW
75
+ when 'receiving_preference_mandates_manual_action' then RECEIVING_PREFERENCE_MANDATES_MANUAL_ACTION
76
+ when 'refunded' then REFUNDED
77
+ when 'transaction_approved_awaiting_funding' then TRANSACTION_APPROVED_AWAITING_FUNDING
78
+ when 'unilateral' then UNILATERAL
79
+ when 'verification_required' then VERIFICATION_REQUIRED
80
+ when 'declined_by_risk_fraud_filters' then DECLINED_BY_RISK_FRAUD_FILTERS
81
+ else
82
+ default_value
83
+ end
84
+ end
62
85
  end
63
86
  end
@@ -35,5 +35,22 @@ module PaypalServerSdk
35
35
 
36
36
  true
37
37
  end
38
+
39
+ def self.from_value(value, default_value = COMPLETED)
40
+ return default_value if value.nil?
41
+
42
+ str = value.to_s.strip
43
+
44
+ case str.downcase
45
+ when 'completed' then COMPLETED
46
+ when 'declined' then DECLINED
47
+ when 'partially_refunded' then PARTIALLY_REFUNDED
48
+ when 'pending' then PENDING
49
+ when 'refunded' then REFUNDED
50
+ when 'failed' then FAILED
51
+ else
52
+ default_value
53
+ end
54
+ end
38
55
  end
39
56
  end
@@ -16,5 +16,11 @@ module PaypalServerSdk
16
16
 
17
17
  true
18
18
  end
19
+
20
+ def self.from_value(value, default_value = OUTSTANDING_BALANCE)
21
+ return default_value if value.nil?
22
+
23
+ default_value
24
+ end
19
25
  end
20
26
  end
@@ -108,5 +108,46 @@ module PaypalServerSdk
108
108
 
109
109
  true
110
110
  end
111
+
112
+ def self.from_value(value, default_value = VISA)
113
+ return default_value if value.nil?
114
+
115
+ str = value.to_s.strip
116
+
117
+ case str.downcase
118
+ when 'visa' then VISA
119
+ when 'mastercard' then MASTERCARD
120
+ when 'discover' then DISCOVER
121
+ when 'amex' then AMEX
122
+ when 'solo' then SOLO
123
+ when 'jcb' then JCB
124
+ when 'star' then STAR
125
+ when 'delta' then DELTA
126
+ when 'switch' then SWITCH
127
+ when 'maestro' then MAESTRO
128
+ when 'cb_nationale' then CB_NATIONALE
129
+ when 'configoga' then CONFIGOGA
130
+ when 'confidis' then CONFIDIS
131
+ when 'electron' then ELECTRON
132
+ when 'cetelem' then CETELEM
133
+ when 'china_union_pay' then CHINA_UNION_PAY
134
+ when 'diners' then DINERS
135
+ when 'elo' then ELO
136
+ when 'hiper' then HIPER
137
+ when 'hipercard' then HIPERCARD
138
+ when 'rupay' then RUPAY
139
+ when 'ge' then GE
140
+ when 'synchrony' then SYNCHRONY
141
+ when 'eftpos' then EFTPOS
142
+ when 'carte_bancaire' then CARTE_BANCAIRE
143
+ when 'star_access' then STAR_ACCESS
144
+ when 'pulse' then PULSE
145
+ when 'nyce' then NYCE
146
+ when 'accel' then ACCEL
147
+ when 'unknown' then UNKNOWN
148
+ else
149
+ default_value
150
+ end
151
+ end
111
152
  end
112
153
  end
@@ -28,5 +28,21 @@ module PaypalServerSdk
28
28
 
29
29
  true
30
30
  end
31
+
32
+ def self.from_value(value, default_value = CREDIT)
33
+ return default_value if value.nil?
34
+
35
+ str = value.to_s.strip
36
+
37
+ case str.downcase
38
+ when 'credit' then CREDIT
39
+ when 'debit' then DEBIT
40
+ when 'prepaid' then PREPAID
41
+ when 'store' then STORE
42
+ when 'unknown' then UNKNOWN
43
+ else
44
+ default_value
45
+ end
46
+ end
31
47
  end
32
48
  end
@@ -19,5 +19,18 @@ module PaypalServerSdk
19
19
 
20
20
  true
21
21
  end
22
+
23
+ def self.from_value(value, default_value = VERIFIED)
24
+ return default_value if value.nil?
25
+
26
+ str = value.to_s.strip
27
+
28
+ case str.downcase
29
+ when 'verified' then VERIFIED
30
+ when 'failed' then FAILED
31
+ else
32
+ default_value
33
+ end
34
+ end
22
35
  end
23
36
  end
@@ -28,5 +28,18 @@ module PaypalServerSdk
28
28
 
29
29
  true
30
30
  end
31
+
32
+ def self.from_value(value, default_value = CAPTURE)
33
+ return default_value if value.nil?
34
+
35
+ str = value.to_s.strip
36
+
37
+ case str.downcase
38
+ when 'capture' then CAPTURE
39
+ when 'authorize' then AUTHORIZE
40
+ else
41
+ default_value
42
+ end
43
+ end
31
44
  end
32
45
  end
@@ -64,5 +64,30 @@ module PaypalServerSdk
64
64
 
65
65
  true
66
66
  end
67
+
68
+ def self.from_value(value, default_value = CVV_E)
69
+ return default_value if value.nil?
70
+
71
+ str = value.to_s.strip
72
+
73
+ case str.downcase
74
+ when 'cvv_e' then CVV_E
75
+ when 'cvv_i' then CVV_I
76
+ when 'cvv_m' then CVV_M
77
+ when 'cvv_n' then CVV_N
78
+ when 'cvv_p' then CVV_P
79
+ when 'cvv_s' then CVV_S
80
+ when 'cvv_u' then CVV_U
81
+ when 'cvv_x' then CVV_X
82
+ when 'enum_all_others' then ENUM_ALL_OTHERS
83
+ when 'cvv_0' then CVV_0
84
+ when 'cvv_1' then CVV_1
85
+ when 'cvv_2' then CVV_2
86
+ when 'cvv_3' then CVV_3
87
+ when 'cvv_4' then CVV_4
88
+ else
89
+ default_value
90
+ end
91
+ end
67
92
  end
68
93
  end
@@ -22,5 +22,18 @@ module PaypalServerSdk
22
22
 
23
23
  true
24
24
  end
25
+
26
+ def self.from_value(value, default_value = INSTANT)
27
+ return default_value if value.nil?
28
+
29
+ str = value.to_s.strip
30
+
31
+ case str.downcase
32
+ when 'instant' then INSTANT
33
+ when 'delayed' then DELAYED
34
+ else
35
+ default_value
36
+ end
37
+ end
25
38
  end
26
39
  end
@@ -19,5 +19,18 @@ module PaypalServerSdk
19
19
 
20
20
  true
21
21
  end
22
+
23
+ def self.from_value(value, default_value = ITEM_NOT_RECEIVED)
24
+ return default_value if value.nil?
25
+
26
+ str = value.to_s.strip
27
+
28
+ case str.downcase
29
+ when 'item_not_received' then ITEM_NOT_RECEIVED
30
+ when 'unauthorized_transaction' then UNAUTHORIZED_TRANSACTION
31
+ else
32
+ default_value
33
+ end
34
+ end
22
35
  end
23
36
  end
@@ -33,5 +33,22 @@ module PaypalServerSdk
33
33
 
34
34
  true
35
35
  end
36
+
37
+ def self.from_value(value, default_value = MASTERCARD_NON_3D_SECURE_TRANSACTION)
38
+ return default_value if value.nil?
39
+
40
+ str = value.to_s.strip
41
+
42
+ case str.downcase
43
+ when 'mastercard_non_3d_secure_transaction' then MASTERCARD_NON_3D_SECURE_TRANSACTION
44
+ when 'mastercard_attempted_authentication_transaction' then MASTERCARD_ATTEMPTED_AUTHENTICATION_TRANSACTION
45
+ when 'mastercard_fully_authenticated_transaction' then MASTERCARD_FULLY_AUTHENTICATED_TRANSACTION
46
+ when 'fully_authenticated_transaction' then FULLY_AUTHENTICATED_TRANSACTION
47
+ when 'attempted_authentication_transaction' then ATTEMPTED_AUTHENTICATION_TRANSACTION
48
+ when 'non_3d_secure_transaction' then NON_3D_SECURE_TRANSACTION
49
+ else
50
+ default_value
51
+ end
52
+ end
36
53
  end
37
54
  end
@@ -28,5 +28,20 @@ module PaypalServerSdk
28
28
 
29
29
  true
30
30
  end
31
+
32
+ def self.from_value(value, default_value = ENROLLED)
33
+ return default_value if value.nil?
34
+
35
+ str = value.to_s.strip
36
+
37
+ case str.downcase
38
+ when 'enrolled' then ENROLLED
39
+ when 'notenrolled' then NOTENROLLED
40
+ when 'unavailable' then UNAVAILABLE
41
+ when 'bypass' then BYPASS
42
+ else
43
+ default_value
44
+ end
45
+ end
31
46
  end
32
47
  end
@@ -28,5 +28,19 @@ module PaypalServerSdk
28
28
 
29
29
  true
30
30
  end
31
+
32
+ def self.from_value(value, default_value = GET_FROM_FILE)
33
+ return default_value if value.nil?
34
+
35
+ str = value.to_s.strip
36
+
37
+ case str.downcase
38
+ when 'get_from_file' then GET_FROM_FILE
39
+ when 'no_shipping' then NO_SHIPPING
40
+ when 'set_provided_address' then SET_PROVIDED_ADDRESS
41
+ else
42
+ default_value
43
+ end
44
+ end
31
45
  end
32
46
  end
@@ -29,5 +29,20 @@ module PaypalServerSdk
29
29
 
30
30
  true
31
31
  end
32
+
33
+ def self.from_value(value, default_value = NOT_STARTED)
34
+ return default_value if value.nil?
35
+
36
+ str = value.to_s.strip
37
+
38
+ case str.downcase
39
+ when 'not_started' then NOT_STARTED
40
+ when 'in_progress' then IN_PROGRESS
41
+ when 'canceled' then CANCELED
42
+ when 'approved' then APPROVED
43
+ else
44
+ default_value
45
+ end
46
+ end
32
47
  end
33
48
  end
@@ -32,5 +32,20 @@ module PaypalServerSdk
32
32
 
33
33
  true
34
34
  end
35
+
36
+ def self.from_value(value, default_value = SHIPPING)
37
+ return default_value if value.nil?
38
+
39
+ str = value.to_s.strip
40
+
41
+ case str.downcase
42
+ when 'shipping' then SHIPPING
43
+ when 'pickup_in_person' then PICKUP_IN_PERSON
44
+ when 'pickup_in_store' then PICKUP_IN_STORE
45
+ when 'pickup_from_person' then PICKUP_FROM_PERSON
46
+ else
47
+ default_value
48
+ end
49
+ end
35
50
  end
36
51
  end
@@ -25,5 +25,18 @@ module PaypalServerSdk
25
25
 
26
26
  true
27
27
  end
28
+
29
+ def self.from_value(value, default_value = PAN_ONLY)
30
+ return default_value if value.nil?
31
+
32
+ str = value.to_s.strip
33
+
34
+ case str.downcase
35
+ when 'pan_only' then PAN_ONLY
36
+ when 'cryptogram_3ds' then CRYPTOGRAM_3DS
37
+ else
38
+ default_value
39
+ end
40
+ end
28
41
  end
29
42
  end
@@ -16,5 +16,11 @@ module PaypalServerSdk
16
16
 
17
17
  true
18
18
  end
19
+
20
+ def self.from_value(value, default_value = CARD)
21
+ return default_value if value.nil?
22
+
23
+ default_value
24
+ end
19
25
  end
20
26
  end
@@ -25,5 +25,20 @@ module PaypalServerSdk
25
25
 
26
26
  true
27
27
  end
28
+
29
+ def self.from_value(value, default_value = DAY)
30
+ return default_value if value.nil?
31
+
32
+ str = value.to_s.strip
33
+
34
+ case str.downcase
35
+ when 'day' then DAY
36
+ when 'week' then WEEK
37
+ when 'month' then MONTH
38
+ when 'year' then YEAR
39
+ else
40
+ default_value
41
+ end
42
+ end
28
43
  end
29
44
  end
@@ -25,5 +25,19 @@ module PaypalServerSdk
25
25
 
26
26
  true
27
27
  end
28
+
29
+ def self.from_value(value, default_value = DIGITAL_GOODS)
30
+ return default_value if value.nil?
31
+
32
+ str = value.to_s.strip
33
+
34
+ case str.downcase
35
+ when 'digital_goods' then DIGITAL_GOODS
36
+ when 'physical_goods' then PHYSICAL_GOODS
37
+ when 'donation' then DONATION
38
+ else
39
+ default_value
40
+ end
41
+ end
28
42
  end
29
43
  end
@@ -22,5 +22,19 @@ module PaypalServerSdk
22
22
 
23
23
  true
24
24
  end
25
+
26
+ def self.from_value(value, default_value = NO)
27
+ return default_value if value.nil?
28
+
29
+ str = value.to_s.strip
30
+
31
+ case str.downcase
32
+ when 'no' then NO
33
+ when 'possible' then POSSIBLE
34
+ when 'unknown' then UNKNOWN
35
+ else
36
+ default_value
37
+ end
38
+ end
25
39
  end
26
40
  end
@@ -37,5 +37,24 @@ module PaypalServerSdk
37
37
 
38
38
  true
39
39
  end
40
+
41
+ def self.from_value(value, default_value = GET)
42
+ return default_value if value.nil?
43
+
44
+ str = value.to_s.strip
45
+
46
+ case str.downcase
47
+ when 'get' then GET
48
+ when 'post' then POST
49
+ when 'put' then PUT
50
+ when 'delete' then DELETE
51
+ when 'head' then HEAD
52
+ when 'connect' then CONNECT
53
+ when 'options' then OPTIONS
54
+ when 'patch' then PATCH
55
+ else
56
+ default_value
57
+ end
58
+ end
40
59
  end
41
60
  end
@@ -24,5 +24,18 @@ module PaypalServerSdk
24
24
 
25
25
  true
26
26
  end
27
+
28
+ def self.from_value(value, default_value = AUTO)
29
+ return default_value if value.nil?
30
+
31
+ str = value.to_s.strip
32
+
33
+ case str.downcase
34
+ when 'auto' then AUTO
35
+ when 'manual' then MANUAL
36
+ else
37
+ default_value
38
+ end
39
+ end
27
40
  end
28
41
  end
@@ -41,5 +41,22 @@ module PaypalServerSdk
41
41
 
42
42
  O_AUTH_PROVIDER_ERROR.include?(value)
43
43
  end
44
+
45
+ def self.from_value(value, default_value = INVALID_REQUEST)
46
+ return default_value if value.nil?
47
+
48
+ str = value.to_s.strip
49
+
50
+ case str.downcase
51
+ when 'invalid_request' then INVALID_REQUEST
52
+ when 'invalid_client' then INVALID_CLIENT
53
+ when 'invalid_grant' then INVALID_GRANT
54
+ when 'unauthorized_client' then UNAUTHORIZED_CLIENT
55
+ when 'unsupported_grant_type' then UNSUPPORTED_GRANT_TYPE
56
+ when 'invalid_scope' then INVALID_SCOPE
57
+ else
58
+ default_value
59
+ end
60
+ end
44
61
  end
45
62
  end
@@ -35,5 +35,19 @@ module PaypalServerSdk
35
35
 
36
36
  true
37
37
  end
38
+
39
+ def self.from_value(value, default_value = LOGIN)
40
+ return default_value if value.nil?
41
+
42
+ str = value.to_s.strip
43
+
44
+ case str.downcase
45
+ when 'login' then LOGIN
46
+ when 'billing' then BILLING
47
+ when 'no_preference' then NO_PREFERENCE
48
+ else
49
+ default_value
50
+ end
51
+ end
38
52
  end
39
53
  end
@@ -32,5 +32,19 @@ module PaypalServerSdk
32
32
 
33
33
  true
34
34
  end
35
+
36
+ def self.from_value(value, default_value = GET_FROM_FILE)
37
+ return default_value if value.nil?
38
+
39
+ str = value.to_s.strip
40
+
41
+ case str.downcase
42
+ when 'get_from_file' then GET_FROM_FILE
43
+ when 'no_shipping' then NO_SHIPPING
44
+ when 'set_provided_address' then SET_PROVIDED_ADDRESS
45
+ else
46
+ default_value
47
+ end
48
+ end
35
49
  end
36
50
  end