transferzero-sdk 1.0.0 → 1.7.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 (163) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +17 -11
  3. data/docs/AccountMeta.md +1 -1
  4. data/docs/AccountValidationApi.md +4 -4
  5. data/docs/AccountValidationRequest.md +6 -4
  6. data/docs/Currency.md +1 -1
  7. data/docs/CurrencyExchange.md +1 -1
  8. data/docs/CurrencyInfoApi.md +20 -6
  9. data/docs/CurrencyOpposite.md +4 -2
  10. data/docs/Debit.md +2 -2
  11. data/docs/Document.md +4 -0
  12. data/docs/FieldSelectValidation.md +1 -1
  13. data/docs/FieldValidation.md +1 -1
  14. data/docs/PayinMethod.md +4 -4
  15. data/docs/PayinMethodDetails.md +7 -3
  16. data/docs/PayinMethodDetailsBTC.md +17 -0
  17. data/docs/PayinMethodDetailsMobile.md +1 -1
  18. data/docs/PayinMethodDetailsNGNBank.md +4 -2
  19. data/docs/PaymentMethod.md +2 -2
  20. data/docs/PaymentMethodOpposite.md +2 -2
  21. data/docs/PayoutMethod.md +1 -1
  22. data/docs/PayoutMethodDetails.md +12 -4
  23. data/docs/PayoutMethodDetailsBTC.md +23 -0
  24. data/docs/PayoutMethodDetailsGBPBank.md +29 -0
  25. data/docs/PayoutMethodDetailsIBAN.md +1 -1
  26. data/docs/PayoutMethodDetailsNGNBank.md +1 -1
  27. data/docs/PayoutMethodDetailsXOFBank.md +25 -0
  28. data/docs/PoliticallyExposedPerson.md +31 -0
  29. data/docs/Recipient.md +5 -3
  30. data/docs/RecipientsApi.md +3 -3
  31. data/docs/Sender.md +63 -27
  32. data/docs/Transaction.md +5 -5
  33. data/docs/TransactionTraits.md +2 -2
  34. data/docs/TransactionsApi.md +64 -0
  35. data/example/client.rb +14 -14
  36. data/git_push.sh +1 -1
  37. data/lib/transferzero-sdk.rb +5 -0
  38. data/lib/transferzero-sdk/api/account_validation_api.rb +4 -4
  39. data/lib/transferzero-sdk/api/currency_info_api.rb +6 -0
  40. data/lib/transferzero-sdk/api/recipients_api.rb +4 -4
  41. data/lib/transferzero-sdk/api/transactions_api.rb +59 -0
  42. data/lib/transferzero-sdk/api_client.rb +5 -5
  43. data/lib/transferzero-sdk/models/account.rb +70 -69
  44. data/lib/transferzero-sdk/models/account_list_response.rb +67 -66
  45. data/lib/transferzero-sdk/models/account_meta.rb +61 -60
  46. data/lib/transferzero-sdk/models/account_response.rb +66 -65
  47. data/lib/transferzero-sdk/models/account_validation_error.rb +61 -60
  48. data/lib/transferzero-sdk/models/account_validation_request.rb +164 -163
  49. data/lib/transferzero-sdk/models/account_validation_response.rb +66 -65
  50. data/lib/transferzero-sdk/models/account_validation_result.rb +61 -60
  51. data/lib/transferzero-sdk/models/api_log.rb +136 -135
  52. data/lib/transferzero-sdk/models/api_log_list_response.rb +70 -69
  53. data/lib/transferzero-sdk/models/api_log_response.rb +60 -59
  54. data/lib/transferzero-sdk/models/currency.rb +142 -141
  55. data/lib/transferzero-sdk/models/currency_exchange.rb +158 -157
  56. data/lib/transferzero-sdk/models/currency_exchange_list_response.rb +62 -61
  57. data/lib/transferzero-sdk/models/currency_list_response.rb +62 -61
  58. data/lib/transferzero-sdk/models/currency_opposite.rb +166 -155
  59. data/lib/transferzero-sdk/models/debit.rb +151 -155
  60. data/lib/transferzero-sdk/models/debit_list_request.rb +61 -60
  61. data/lib/transferzero-sdk/models/debit_list_response.rb +67 -66
  62. data/lib/transferzero-sdk/models/debit_request.rb +60 -59
  63. data/lib/transferzero-sdk/models/debit_request_wrapper.rb +80 -79
  64. data/lib/transferzero-sdk/models/debit_response.rb +60 -59
  65. data/lib/transferzero-sdk/models/document.rb +181 -160
  66. data/lib/transferzero-sdk/models/document_list_response.rb +67 -66
  67. data/lib/transferzero-sdk/models/document_request.rb +60 -59
  68. data/lib/transferzero-sdk/models/document_response.rb +60 -59
  69. data/lib/transferzero-sdk/models/document_webhook.rb +96 -95
  70. data/lib/transferzero-sdk/models/error_status.rb +66 -65
  71. data/lib/transferzero-sdk/models/field_description.rb +95 -94
  72. data/lib/transferzero-sdk/models/field_select_validation.rb +70 -69
  73. data/lib/transferzero-sdk/models/field_validation.rb +78 -77
  74. data/lib/transferzero-sdk/models/pagination.rb +97 -96
  75. data/lib/transferzero-sdk/models/pagination_meta.rb +60 -59
  76. data/lib/transferzero-sdk/models/payin_method.rb +97 -96
  77. data/lib/transferzero-sdk/models/payin_method_details.rb +122 -105
  78. data/lib/transferzero-sdk/models/payin_method_details_btc.rb +204 -0
  79. data/lib/transferzero-sdk/models/payin_method_details_mobile.rb +75 -74
  80. data/lib/transferzero-sdk/models/payin_method_details_ngn_bank.rb +71 -65
  81. data/lib/transferzero-sdk/models/payin_method_request.rb +60 -59
  82. data/lib/transferzero-sdk/models/payment_method.rb +109 -108
  83. data/lib/transferzero-sdk/models/payment_method_list_response.rb +61 -60
  84. data/lib/transferzero-sdk/models/payment_method_opposite.rb +124 -123
  85. data/lib/transferzero-sdk/models/payout_method.rb +107 -106
  86. data/lib/transferzero-sdk/models/payout_method_bank_account_type_enum.rb +14 -19
  87. data/lib/transferzero-sdk/models/payout_method_details.rb +338 -288
  88. data/lib/transferzero-sdk/models/payout_method_details_balance.rb +61 -60
  89. data/lib/transferzero-sdk/models/payout_method_details_btc.rb +250 -0
  90. data/lib/transferzero-sdk/models/payout_method_details_gbp_bank.rb +267 -0
  91. data/lib/transferzero-sdk/models/payout_method_details_ghs_bank.rb +97 -96
  92. data/lib/transferzero-sdk/models/payout_method_details_iban.rb +100 -104
  93. data/lib/transferzero-sdk/models/payout_method_details_mad_cash.rb +162 -161
  94. data/lib/transferzero-sdk/models/payout_method_details_mobile.rb +86 -85
  95. data/lib/transferzero-sdk/models/payout_method_details_ngn_bank.rb +104 -108
  96. data/lib/transferzero-sdk/models/payout_method_details_xof_bank.rb +264 -0
  97. data/lib/transferzero-sdk/models/payout_method_details_xof_mobile.rb +97 -96
  98. data/lib/transferzero-sdk/models/payout_method_gender_enum.rb +14 -19
  99. data/lib/transferzero-sdk/models/payout_method_identity_card_type_enum.rb +15 -20
  100. data/lib/transferzero-sdk/models/payout_method_list_response.rb +67 -66
  101. data/lib/transferzero-sdk/models/payout_method_mobile_provider_enum.rb +14 -19
  102. data/lib/transferzero-sdk/models/payout_method_request.rb +60 -59
  103. data/lib/transferzero-sdk/models/payout_method_response.rb +60 -59
  104. data/lib/transferzero-sdk/models/payout_method_webhook.rb +96 -95
  105. data/lib/transferzero-sdk/models/politically_exposed_person.rb +272 -0
  106. data/lib/transferzero-sdk/models/recipient.rb +230 -219
  107. data/lib/transferzero-sdk/models/recipient_list_response.rb +67 -66
  108. data/lib/transferzero-sdk/models/recipient_request.rb +60 -59
  109. data/lib/transferzero-sdk/models/recipient_response.rb +60 -59
  110. data/lib/transferzero-sdk/models/recipient_state.rb +22 -27
  111. data/lib/transferzero-sdk/models/recipient_webhook.rb +96 -95
  112. data/lib/transferzero-sdk/models/sender.rb +529 -322
  113. data/lib/transferzero-sdk/models/sender_list_response.rb +67 -66
  114. data/lib/transferzero-sdk/models/sender_request.rb +60 -59
  115. data/lib/transferzero-sdk/models/sender_response.rb +66 -65
  116. data/lib/transferzero-sdk/models/sender_response_existing.rb +60 -59
  117. data/lib/transferzero-sdk/models/sender_response_meta.rb +60 -59
  118. data/lib/transferzero-sdk/models/sender_state.rb +19 -23
  119. data/lib/transferzero-sdk/models/sender_webhook.rb +96 -95
  120. data/lib/transferzero-sdk/models/transaction.rb +192 -191
  121. data/lib/transferzero-sdk/models/transaction_list_response.rb +67 -66
  122. data/lib/transferzero-sdk/models/transaction_request.rb +60 -59
  123. data/lib/transferzero-sdk/models/transaction_response.rb +66 -65
  124. data/lib/transferzero-sdk/models/transaction_response_existing.rb +66 -65
  125. data/lib/transferzero-sdk/models/transaction_response_meta.rb +60 -59
  126. data/lib/transferzero-sdk/models/transaction_state.rb +23 -27
  127. data/lib/transferzero-sdk/models/transaction_traits.rb +71 -70
  128. data/lib/transferzero-sdk/models/transaction_webhook.rb +96 -95
  129. data/lib/transferzero-sdk/models/validation_error_description.rb +62 -61
  130. data/lib/transferzero-sdk/models/webhook.rb +92 -91
  131. data/lib/transferzero-sdk/models/webhook_definition.rb +107 -106
  132. data/lib/transferzero-sdk/models/webhook_definition_event_list_response.rb +61 -60
  133. data/lib/transferzero-sdk/models/webhook_definition_list_response.rb +67 -66
  134. data/lib/transferzero-sdk/models/webhook_definition_request.rb +60 -59
  135. data/lib/transferzero-sdk/models/webhook_definition_response.rb +60 -59
  136. data/lib/transferzero-sdk/models/webhook_log.rb +97 -96
  137. data/lib/transferzero-sdk/models/webhook_log_list_response.rb +70 -69
  138. data/lib/transferzero-sdk/models/webhook_log_metadata.rb +129 -128
  139. data/lib/transferzero-sdk/models/webhook_log_metadata_request.rb +80 -79
  140. data/lib/transferzero-sdk/models/webhook_log_metadata_response.rb +81 -80
  141. data/lib/transferzero-sdk/models/webhook_log_response.rb +60 -59
  142. data/lib/transferzero-sdk/version.rb +1 -1
  143. data/spec/api/account_validation_api_spec.rb +2 -2
  144. data/spec/api/currency_info_api_spec.rb +2 -0
  145. data/spec/api/documents_api_spec.rb +15 -0
  146. data/spec/api/recipients_api_spec.rb +1 -1
  147. data/spec/api/transactions_api_spec.rb +13 -0
  148. data/spec/models/account_validation_request_spec.rb +7 -1
  149. data/spec/models/currency_opposite_spec.rb +6 -0
  150. data/spec/models/document_spec.rb +12 -0
  151. data/spec/models/payin_method_details_btc_spec.rb +41 -0
  152. data/spec/models/payin_method_details_ngn_bank_spec.rb +6 -0
  153. data/spec/models/payin_method_details_spec.rb +6 -0
  154. data/spec/models/payout_method_details_btc_spec.rb +59 -0
  155. data/spec/models/payout_method_details_gbp_bank_spec.rb +77 -0
  156. data/spec/models/payout_method_details_spec.rb +7 -1
  157. data/spec/models/payout_method_details_xof_bank_spec.rb +65 -0
  158. data/spec/models/politically_exposed_person_spec.rb +83 -0
  159. data/spec/models/recipient_spec.rb +6 -0
  160. data/spec/models/sender_spec.rb +16 -0
  161. data/transferzero-sdk.gemspec +2 -2
  162. metadata +35 -24
  163. data/spec/api_client_spec.rb +0 -189
@@ -13,76 +13,76 @@ OpenAPI Generator version: 4.0.0-beta3
13
13
  require 'date'
14
14
 
15
15
  module TransferZero
16
- # Describes the error message on an unsuccessful match
17
- class AccountValidationError
18
- attr_accessor :error
19
-
20
- # Attribute mapping from ruby-style variable name to JSON key.
21
- def self.attribute_map
22
- {
23
- :'error' => :'error'
24
- }
25
- end
16
+ # Describes the error message on an unsuccessful match
17
+ class AccountValidationError
18
+ attr_accessor :error
19
+
20
+ # Attribute mapping from ruby-style variable name to JSON key.
21
+ def self.attribute_map
22
+ {
23
+ :'error' => :'error'
24
+ }
25
+ end
26
+
27
+ # Attribute type mapping.
28
+ def self.openapi_types
29
+ {
30
+ :'error' => :'String'
31
+ }
32
+ end
26
33
 
27
- # Attribute type mapping.
28
- def self.openapi_types
29
- {
30
- :'error' => :'String'
31
- }
34
+ # Initializes the object
35
+ # @param [Hash] attributes Model attributes in the form of hash
36
+ def initialize(attributes = {})
37
+ if (!attributes.is_a?(Hash))
38
+ fail ArgumentError, "The input argument (attributes) must be a hash in `TransferZero::AccountValidationError` initialize method"
32
39
  end
33
40
 
34
- # Initializes the object
35
- # @param [Hash] attributes Model attributes in the form of hash
36
- def initialize(attributes = {})
37
- if (!attributes.is_a?(Hash))
38
- fail ArgumentError, "The input argument (attributes) must be a hash in `TransferZero::AccountValidationError` initialize method"
41
+ # check to see if the attribute exists and convert string to symbol for hash key
42
+ attributes = attributes.each_with_object({}) { |(k, v), h|
43
+ if (!self.class.attribute_map.key?(k.to_sym))
44
+ fail ArgumentError, "`#{k}` is not a valid attribute in `TransferZero::AccountValidationError`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
39
45
  end
46
+ h[k.to_sym] = v
47
+ }
40
48
 
41
- # check to see if the attribute exists and convert string to symbol for hash key
42
- attributes = attributes.each_with_object({}) { |(k, v), h|
43
- if (!self.class.attribute_map.key?(k.to_sym))
44
- fail ArgumentError, "`#{k}` is not a valid attribute in `TransferZero::AccountValidationError`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
45
- end
46
- h[k.to_sym] = v
47
- }
48
-
49
- if attributes.key?(:'error')
50
- self.error = attributes[:'error']
51
- end
49
+ if attributes.key?(:'error')
50
+ self.error = attributes[:'error']
52
51
  end
52
+ end
53
53
 
54
- # Show invalid properties with the reasons. Usually used together with valid?
55
- # @return Array for valid properties with the reasons
56
- def list_invalid_properties
57
- invalid_properties = Array.new
58
- invalid_properties
59
- end
54
+ # Show invalid properties with the reasons. Usually used together with valid?
55
+ # @return Array for valid properties with the reasons
56
+ def list_invalid_properties
57
+ invalid_properties = Array.new
58
+ invalid_properties
59
+ end
60
60
 
61
- # Check to see if the all the properties in the model are valid
62
- # @return true if the model is valid
63
- def valid?
64
- true
65
- end
61
+ # Check to see if the all the properties in the model are valid
62
+ # @return true if the model is valid
63
+ def valid?
64
+ true
65
+ end
66
66
 
67
- # Checks equality by comparing each attribute.
68
- # @param [Object] Object to be compared
69
- def ==(o)
70
- return true if self.equal?(o)
71
- self.class == o.class &&
72
- error == o.error
73
- end
67
+ # Checks equality by comparing each attribute.
68
+ # @param [Object] Object to be compared
69
+ def ==(o)
70
+ return true if self.equal?(o)
71
+ self.class == o.class &&
72
+ error == o.error
73
+ end
74
74
 
75
- # @see the `==` method
76
- # @param [Object] Object to be compared
77
- def eql?(o)
78
- self == o
79
- end
75
+ # @see the `==` method
76
+ # @param [Object] Object to be compared
77
+ def eql?(o)
78
+ self == o
79
+ end
80
80
 
81
- # Calculates hash code according to all attributes.
82
- # @return [Integer] Hash code
83
- def hash
84
- [error].hash
85
- end
81
+ # Calculates hash code according to all attributes.
82
+ # @return [Integer] Hash code
83
+ def hash
84
+ [error].hash
85
+ end
86
86
 
87
87
  require 'active_support/core_ext/hash'
88
88
  require 'active_support/hash_with_indifferent_access.rb'
@@ -198,5 +198,6 @@ def _to_hash(value)
198
198
  end
199
199
  end
200
200
 
201
- end
201
+ end
202
+
202
203
  end
@@ -13,199 +13,199 @@ OpenAPI Generator version: 4.0.0-beta3
13
13
  require 'date'
14
14
 
15
15
  module TransferZero
16
- class AccountValidationRequest
17
- # Account Number to query
18
- attr_accessor :bank_account
19
-
20
- # Bank Code to query - same codes are used as for creating the transactions
21
- attr_accessor :bank_code
22
-
23
- # Country of account in 2-character alpha ISO 3166-2 country format (only NG is currently supported)
24
- attr_accessor :country
25
-
26
- # The currency the bank account is in
27
- attr_accessor :currency
28
-
29
- # The method of the payment. Currently only bank is supported
30
- attr_accessor :method
31
-
32
- class EnumAttributeValidator
33
- attr_reader :datatype
34
- attr_reader :allowable_values
35
-
36
- def initialize(datatype, allowable_values)
37
- @allowable_values = allowable_values.map do |value|
38
- case datatype.to_s
39
- when /Integer/i
40
- value.to_i
41
- when /Float/i
42
- value.to_f
43
- else
44
- value
45
- end
16
+ class AccountValidationRequest
17
+ # Account Number to query
18
+ attr_accessor :bank_account
19
+
20
+ # Bank Code to query - same codes are used as for creating the transactions
21
+ attr_accessor :bank_code
22
+
23
+ # Phone number to query
24
+ attr_accessor :phone_number
25
+
26
+ # Country of account in 2-character alpha ISO 3166-2 country format
27
+ attr_accessor :country
28
+
29
+ # The currency the bank account is in
30
+ attr_accessor :currency
31
+
32
+ # The method of the payment. Currently bank and mobile are supported
33
+ attr_accessor :method
34
+
35
+ class EnumAttributeValidator
36
+ attr_reader :datatype
37
+ attr_reader :allowable_values
38
+
39
+ def initialize(datatype, allowable_values)
40
+ @allowable_values = allowable_values.map do |value|
41
+ case datatype.to_s
42
+ when /Integer/i
43
+ value.to_i
44
+ when /Float/i
45
+ value.to_f
46
+ else
47
+ value
46
48
  end
47
49
  end
48
-
49
- def valid?(value)
50
- !value || allowable_values.include?(value)
51
- end
52
- end
53
-
54
- # Attribute mapping from ruby-style variable name to JSON key.
55
- def self.attribute_map
56
- {
57
- :'bank_account' => :'bank_account',
58
- :'bank_code' => :'bank_code',
59
- :'country' => :'country',
60
- :'currency' => :'currency',
61
- :'method' => :'method'
62
- }
63
50
  end
64
51
 
65
- # Attribute type mapping.
66
- def self.openapi_types
67
- {
68
- :'bank_account' => :'String',
69
- :'bank_code' => :'String',
70
- :'country' => :'String',
71
- :'currency' => :'String',
72
- :'method' => :'String'
73
- }
52
+ def valid?(value)
53
+ !value || allowable_values.include?(value)
74
54
  end
55
+ end
75
56
 
76
- # Initializes the object
77
- # @param [Hash] attributes Model attributes in the form of hash
78
- def initialize(attributes = {})
79
- if (!attributes.is_a?(Hash))
80
- fail ArgumentError, "The input argument (attributes) must be a hash in `TransferZero::AccountValidationRequest` initialize method"
81
- end
82
-
83
- # check to see if the attribute exists and convert string to symbol for hash key
84
- attributes = attributes.each_with_object({}) { |(k, v), h|
85
- if (!self.class.attribute_map.key?(k.to_sym))
86
- fail ArgumentError, "`#{k}` is not a valid attribute in `TransferZero::AccountValidationRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
87
- end
88
- h[k.to_sym] = v
89
- }
90
-
91
- if attributes.key?(:'bank_account')
92
- self.bank_account = attributes[:'bank_account']
93
- end
94
-
95
- if attributes.key?(:'bank_code')
96
- self.bank_code = attributes[:'bank_code']
97
- end
98
-
99
- if attributes.key?(:'country')
100
- self.country = attributes[:'country']
101
- end
57
+ # Attribute mapping from ruby-style variable name to JSON key.
58
+ def self.attribute_map
59
+ {
60
+ :'bank_account' => :'bank_account',
61
+ :'bank_code' => :'bank_code',
62
+ :'phone_number' => :'phone_number',
63
+ :'country' => :'country',
64
+ :'currency' => :'currency',
65
+ :'method' => :'method'
66
+ }
67
+ end
102
68
 
103
- if attributes.key?(:'currency')
104
- self.currency = attributes[:'currency']
105
- end
69
+ # Attribute type mapping.
70
+ def self.openapi_types
71
+ {
72
+ :'bank_account' => :'String',
73
+ :'bank_code' => :'String',
74
+ :'phone_number' => :'String',
75
+ :'country' => :'String',
76
+ :'currency' => :'String',
77
+ :'method' => :'String'
78
+ }
79
+ end
106
80
 
107
- if attributes.key?(:'method')
108
- self.method = attributes[:'method']
109
- end
81
+ # Initializes the object
82
+ # @param [Hash] attributes Model attributes in the form of hash
83
+ def initialize(attributes = {})
84
+ if (!attributes.is_a?(Hash))
85
+ fail ArgumentError, "The input argument (attributes) must be a hash in `TransferZero::AccountValidationRequest` initialize method"
110
86
  end
111
87
 
112
- # Show invalid properties with the reasons. Usually used together with valid?
113
- # @return Array for valid properties with the reasons
114
- def list_invalid_properties
115
- invalid_properties = Array.new
116
- if @bank_account.nil?
117
- invalid_properties.push('invalid value for "bank_account", bank_account cannot be nil.')
88
+ # check to see if the attribute exists and convert string to symbol for hash key
89
+ attributes = attributes.each_with_object({}) { |(k, v), h|
90
+ if (!self.class.attribute_map.key?(k.to_sym))
91
+ fail ArgumentError, "`#{k}` is not a valid attribute in `TransferZero::AccountValidationRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
118
92
  end
93
+ h[k.to_sym] = v
94
+ }
119
95
 
120
- if @bank_code.nil?
121
- invalid_properties.push('invalid value for "bank_code", bank_code cannot be nil.')
122
- end
96
+ if attributes.key?(:'bank_account')
97
+ self.bank_account = attributes[:'bank_account']
98
+ end
123
99
 
124
- if @country.nil?
125
- invalid_properties.push('invalid value for "country", country cannot be nil.')
126
- end
100
+ if attributes.key?(:'bank_code')
101
+ self.bank_code = attributes[:'bank_code']
102
+ end
127
103
 
128
- if @currency.nil?
129
- invalid_properties.push('invalid value for "currency", currency cannot be nil.')
130
- end
104
+ if attributes.key?(:'phone_number')
105
+ self.phone_number = attributes[:'phone_number']
106
+ end
131
107
 
132
- if @method.nil?
133
- invalid_properties.push('invalid value for "method", method cannot be nil.')
134
- end
108
+ if attributes.key?(:'country')
109
+ self.country = attributes[:'country']
110
+ end
135
111
 
136
- invalid_properties
112
+ if attributes.key?(:'currency')
113
+ self.currency = attributes[:'currency']
137
114
  end
138
115
 
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 @bank_account.nil?
143
- return false if @bank_code.nil?
144
- return false if @country.nil?
145
- country_validator = EnumAttributeValidator.new('String', ["NG", "GH"])
146
- return false unless country_validator.valid?(@country)
147
- return false if @currency.nil?
148
- currency_validator = EnumAttributeValidator.new('String', ["NGN", "GHS"])
149
- return false unless currency_validator.valid?(@currency)
150
- return false if @method.nil?
151
- method_validator = EnumAttributeValidator.new('String', ["bank"])
152
- return false unless method_validator.valid?(@method)
153
- true
116
+ if attributes.key?(:'method')
117
+ self.method = attributes[:'method']
154
118
  end
119
+ end
155
120
 
156
- # Custom attribute writer method checking allowed values (enum).
157
- # @param [Object] country Object to be assigned
158
- def country=(country)
159
- validator = EnumAttributeValidator.new('String', ["NG", "GH"])
160
- unless validator.valid?(country)
161
- fail ArgumentError, "invalid value for \"country\", must be one of #{validator.allowable_values}."
162
- end
163
- @country = country
121
+ # Show invalid properties with the reasons. Usually used together with valid?
122
+ # @return Array for valid properties with the reasons
123
+ def list_invalid_properties
124
+ invalid_properties = Array.new
125
+ if @country.nil?
126
+ invalid_properties.push('invalid value for "country", country cannot be nil.')
164
127
  end
165
128
 
166
- # Custom attribute writer method checking allowed values (enum).
167
- # @param [Object] currency Object to be assigned
168
- def currency=(currency)
169
- validator = EnumAttributeValidator.new('String', ["NGN", "GHS"])
170
- unless validator.valid?(currency)
171
- fail ArgumentError, "invalid value for \"currency\", must be one of #{validator.allowable_values}."
172
- end
173
- @currency = currency
129
+ if @currency.nil?
130
+ invalid_properties.push('invalid value for "currency", currency cannot be nil.')
174
131
  end
175
132
 
176
- # Custom attribute writer method checking allowed values (enum).
177
- # @param [Object] method Object to be assigned
178
- def method=(method)
179
- validator = EnumAttributeValidator.new('String', ["bank"])
180
- unless validator.valid?(method)
181
- fail ArgumentError, "invalid value for \"method\", must be one of #{validator.allowable_values}."
182
- end
183
- @method = method
133
+ if @method.nil?
134
+ invalid_properties.push('invalid value for "method", method cannot be nil.')
184
135
  end
185
136
 
186
- # Checks equality by comparing each attribute.
187
- # @param [Object] Object to be compared
188
- def ==(o)
189
- return true if self.equal?(o)
190
- self.class == o.class &&
191
- bank_account == o.bank_account &&
192
- bank_code == o.bank_code &&
193
- country == o.country &&
194
- currency == o.currency &&
195
- method == o.method
137
+ invalid_properties
138
+ end
139
+
140
+ # Check to see if the all the properties in the model are valid
141
+ # @return true if the model is valid
142
+ def valid?
143
+ return false if @country.nil?
144
+ country_validator = EnumAttributeValidator.new('String', ["NG", "GH"])
145
+ return false unless country_validator.valid?(@country)
146
+ return false if @currency.nil?
147
+ currency_validator = EnumAttributeValidator.new('String', ["NGN", "GHS"])
148
+ return false unless currency_validator.valid?(@currency)
149
+ return false if @method.nil?
150
+ method_validator = EnumAttributeValidator.new('String', ["bank", "mobile"])
151
+ return false unless method_validator.valid?(@method)
152
+ true
153
+ end
154
+
155
+ # Custom attribute writer method checking allowed values (enum).
156
+ # @param [Object] country Object to be assigned
157
+ def country=(country)
158
+ validator = EnumAttributeValidator.new('String', ["NG", "GH"])
159
+ unless validator.valid?(country) || country.empty?
160
+ fail ArgumentError, "invalid value for \"country\", must be one of #{validator.allowable_values}."
196
161
  end
162
+ @country = country
163
+ end
197
164
 
198
- # @see the `==` method
199
- # @param [Object] Object to be compared
200
- def eql?(o)
201
- self == o
165
+ # Custom attribute writer method checking allowed values (enum).
166
+ # @param [Object] currency Object to be assigned
167
+ def currency=(currency)
168
+ validator = EnumAttributeValidator.new('String', ["NGN", "GHS"])
169
+ unless validator.valid?(currency) || currency.empty?
170
+ fail ArgumentError, "invalid value for \"currency\", must be one of #{validator.allowable_values}."
202
171
  end
172
+ @currency = currency
173
+ end
203
174
 
204
- # Calculates hash code according to all attributes.
205
- # @return [Integer] Hash code
206
- def hash
207
- [bank_account, bank_code, country, currency, method].hash
175
+ # Custom attribute writer method checking allowed values (enum).
176
+ # @param [Object] method Object to be assigned
177
+ def method=(method)
178
+ validator = EnumAttributeValidator.new('String', ["bank", "mobile"])
179
+ unless validator.valid?(method) || method.empty?
180
+ fail ArgumentError, "invalid value for \"method\", must be one of #{validator.allowable_values}."
208
181
  end
182
+ @method = method
183
+ end
184
+
185
+ # Checks equality by comparing each attribute.
186
+ # @param [Object] Object to be compared
187
+ def ==(o)
188
+ return true if self.equal?(o)
189
+ self.class == o.class &&
190
+ bank_account == o.bank_account &&
191
+ bank_code == o.bank_code &&
192
+ phone_number == o.phone_number &&
193
+ country == o.country &&
194
+ currency == o.currency &&
195
+ method == o.method
196
+ end
197
+
198
+ # @see the `==` method
199
+ # @param [Object] Object to be compared
200
+ def eql?(o)
201
+ self == o
202
+ end
203
+
204
+ # Calculates hash code according to all attributes.
205
+ # @return [Integer] Hash code
206
+ def hash
207
+ [bank_account, bank_code, phone_number, country, currency, method].hash
208
+ end
209
209
 
210
210
  require 'active_support/core_ext/hash'
211
211
  require 'active_support/hash_with_indifferent_access.rb'
@@ -321,5 +321,6 @@ def _to_hash(value)
321
321
  end
322
322
  end
323
323
 
324
- end
324
+ end
325
+
325
326
  end