hydrogen-nucleus-api 1.9.2

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 (549) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +7 -0
  3. data/README.md +80 -0
  4. data/Rakefile +8 -0
  5. data/git_push.sh +55 -0
  6. data/lib/nucleus_api.rb +306 -0
  7. data/lib/nucleus_api/api/account_api.rb +1755 -0
  8. data/lib/nucleus_api/api/admin_client_api.rb +346 -0
  9. data/lib/nucleus_api/api/aggregation_account_api.rb +1642 -0
  10. data/lib/nucleus_api/api/allocation_api.rb +824 -0
  11. data/lib/nucleus_api/api/benchmark_api.rb +362 -0
  12. data/lib/nucleus_api/api/budget_api.rb +307 -0
  13. data/lib/nucleus_api/api/bulk_api.rb +253 -0
  14. data/lib/nucleus_api/api/business_api.rb +526 -0
  15. data/lib/nucleus_api/api/card_api.rb +864 -0
  16. data/lib/nucleus_api/api/client_api.rb +1246 -0
  17. data/lib/nucleus_api/api/contact_api.rb +585 -0
  18. data/lib/nucleus_api/api/decision_tree_api.rb +911 -0
  19. data/lib/nucleus_api/api/document_api.rb +301 -0
  20. data/lib/nucleus_api/api/financial_statement_api.rb +307 -0
  21. data/lib/nucleus_api/api/funding_api.rb +1213 -0
  22. data/lib/nucleus_api/api/goal_api.rb +837 -0
  23. data/lib/nucleus_api/api/household_api.rb +526 -0
  24. data/lib/nucleus_api/api/invoice_api.rb +591 -0
  25. data/lib/nucleus_api/api/model_api.rb +1479 -0
  26. data/lib/nucleus_api/api/order_api.rb +1688 -0
  27. data/lib/nucleus_api/api/overflow_api.rb +468 -0
  28. data/lib/nucleus_api/api/portfolio_api.rb +1840 -0
  29. data/lib/nucleus_api/api/questionnaire_api.rb +857 -0
  30. data/lib/nucleus_api/api/resource_api.rb +823 -0
  31. data/lib/nucleus_api/api/risk_profile_api.rb +301 -0
  32. data/lib/nucleus_api/api/roundup_api.rb +468 -0
  33. data/lib/nucleus_api/api/score_api.rb +301 -0
  34. data/lib/nucleus_api/api/securities_api.rb +863 -0
  35. data/lib/nucleus_api/api/spending_control_api.rb +301 -0
  36. data/lib/nucleus_api/api/utils_api.rb +2692 -0
  37. data/lib/nucleus_api/api/webhook_api.rb +301 -0
  38. data/lib/nucleus_api/api_client.rb +391 -0
  39. data/lib/nucleus_api/api_error.rb +38 -0
  40. data/lib/nucleus_api/auth_configuration.rb +181 -0
  41. data/lib/nucleus_api/configuration.rb +209 -0
  42. data/lib/nucleus_api/environment.rb +26 -0
  43. data/lib/nucleus_api/models/account.rb +335 -0
  44. data/lib/nucleus_api/models/account_allocation_mapping.rb +295 -0
  45. data/lib/nucleus_api/models/account_map.rb +203 -0
  46. data/lib/nucleus_api/models/account_permission_vo.rb +196 -0
  47. data/lib/nucleus_api/models/account_portfolio_rebalance_request.rb +314 -0
  48. data/lib/nucleus_api/models/account_status.rb +271 -0
  49. data/lib/nucleus_api/models/account_type.rb +336 -0
  50. data/lib/nucleus_api/models/acl_client_permission_vo.rb +237 -0
  51. data/lib/nucleus_api/models/admin_client.rb +290 -0
  52. data/lib/nucleus_api/models/aggregation_account.rb +541 -0
  53. data/lib/nucleus_api/models/aggregation_account_balance.rb +285 -0
  54. data/lib/nucleus_api/models/aggregation_account_holding.rb +357 -0
  55. data/lib/nucleus_api/models/aggregation_account_transaction.rb +336 -0
  56. data/lib/nucleus_api/models/aggregation_accounts_map.rb +203 -0
  57. data/lib/nucleus_api/models/allocation.rb +326 -0
  58. data/lib/nucleus_api/models/allocation_aggregated_vo.rb +229 -0
  59. data/lib/nucleus_api/models/allocation_composition.rb +305 -0
  60. data/lib/nucleus_api/models/allocation_composition_aggregated_vo.rb +283 -0
  61. data/lib/nucleus_api/models/allocation_composition_model_holdings_vo.rb +312 -0
  62. data/lib/nucleus_api/models/allocation_node_map.rb +188 -0
  63. data/lib/nucleus_api/models/answer.rb +314 -0
  64. data/lib/nucleus_api/models/answer_map.rb +182 -0
  65. data/lib/nucleus_api/models/application.rb +257 -0
  66. data/lib/nucleus_api/models/audit_log.rb +358 -0
  67. data/lib/nucleus_api/models/available_date_double_vo.rb +244 -0
  68. data/lib/nucleus_api/models/balances.rb +224 -0
  69. data/lib/nucleus_api/models/bank_credit.rb +283 -0
  70. data/lib/nucleus_api/models/bank_link.rb +431 -0
  71. data/lib/nucleus_api/models/bank_link_map.rb +203 -0
  72. data/lib/nucleus_api/models/benchmark.rb +278 -0
  73. data/lib/nucleus_api/models/benchmark_composition.rb +203 -0
  74. data/lib/nucleus_api/models/brokers.rb +204 -0
  75. data/lib/nucleus_api/models/budget.rb +383 -0
  76. data/lib/nucleus_api/models/budget_aggregation_account.rb +188 -0
  77. data/lib/nucleus_api/models/budget_object.rb +214 -0
  78. data/lib/nucleus_api/models/bulk_transaction.rb +227 -0
  79. data/lib/nucleus_api/models/bulk_transaction_vo.rb +218 -0
  80. data/lib/nucleus_api/models/business.rb +430 -0
  81. data/lib/nucleus_api/models/business_address.rb +279 -0
  82. data/lib/nucleus_api/models/business_details_vo.rb +236 -0
  83. data/lib/nucleus_api/models/card.rb +497 -0
  84. data/lib/nucleus_api/models/card_address.rb +269 -0
  85. data/lib/nucleus_api/models/card_balance_vo.rb +214 -0
  86. data/lib/nucleus_api/models/card_details_vo.rb +284 -0
  87. data/lib/nucleus_api/models/card_program.rb +351 -0
  88. data/lib/nucleus_api/models/cash.rb +214 -0
  89. data/lib/nucleus_api/models/categories_map.rb +203 -0
  90. data/lib/nucleus_api/models/check.rb +211 -0
  91. data/lib/nucleus_api/models/check_images.rb +199 -0
  92. data/lib/nucleus_api/models/client.rb +524 -0
  93. data/lib/nucleus_api/models/client_account_mapping.rb +213 -0
  94. data/lib/nucleus_api/models/client_address.rb +279 -0
  95. data/lib/nucleus_api/models/client_business_card_vo.rb +218 -0
  96. data/lib/nucleus_api/models/client_business_total_card_balance_vo.rb +204 -0
  97. data/lib/nucleus_api/models/client_card_vo.rb +244 -0
  98. data/lib/nucleus_api/models/client_credentials.rb +200 -0
  99. data/lib/nucleus_api/models/client_relationship.rb +210 -0
  100. data/lib/nucleus_api/models/client_response.rb +281 -0
  101. data/lib/nucleus_api/models/client_status.rb +271 -0
  102. data/lib/nucleus_api/models/client_view_goal_data.rb +303 -0
  103. data/lib/nucleus_api/models/contact.rb +356 -0
  104. data/lib/nucleus_api/models/contact_address.rb +269 -0
  105. data/lib/nucleus_api/models/country.rb +251 -0
  106. data/lib/nucleus_api/models/currency.rb +213 -0
  107. data/lib/nucleus_api/models/customer_revenue.rb +297 -0
  108. data/lib/nucleus_api/models/date_double_vo.rb +204 -0
  109. data/lib/nucleus_api/models/decision_tree.rb +276 -0
  110. data/lib/nucleus_api/models/decision_tree_co.rb +203 -0
  111. data/lib/nucleus_api/models/decision_tree_result_vo.rb +193 -0
  112. data/lib/nucleus_api/models/document.rb +407 -0
  113. data/lib/nucleus_api/models/employment.rb +214 -0
  114. data/lib/nucleus_api/models/external_account_transfer.rb +413 -0
  115. data/lib/nucleus_api/models/feature.rb +287 -0
  116. data/lib/nucleus_api/models/feature_track.rb +252 -0
  117. data/lib/nucleus_api/models/financial_statement.rb +363 -0
  118. data/lib/nucleus_api/models/funding.rb +509 -0
  119. data/lib/nucleus_api/models/funding_request_map.rb +188 -0
  120. data/lib/nucleus_api/models/funding_transaction.rb +391 -0
  121. data/lib/nucleus_api/models/fx_rate.rb +234 -0
  122. data/lib/nucleus_api/models/fx_rate_view.rb +234 -0
  123. data/lib/nucleus_api/models/goal.rb +341 -0
  124. data/lib/nucleus_api/models/goal_account_mapping.rb +219 -0
  125. data/lib/nucleus_api/models/goal_track.rb +373 -0
  126. data/lib/nucleus_api/models/goal_track_accounts.rb +188 -0
  127. data/lib/nucleus_api/models/household.rb +286 -0
  128. data/lib/nucleus_api/models/institution.rb +256 -0
  129. data/lib/nucleus_api/models/investment.rb +279 -0
  130. data/lib/nucleus_api/models/invoice.rb +473 -0
  131. data/lib/nucleus_api/models/invoice_payment.rb +282 -0
  132. data/lib/nucleus_api/models/json_node.rb +173 -0
  133. data/lib/nucleus_api/models/line_items.rb +279 -0
  134. data/lib/nucleus_api/models/location.rb +254 -0
  135. data/lib/nucleus_api/models/member.rb +218 -0
  136. data/lib/nucleus_api/models/merchant_category_code.rb +229 -0
  137. data/lib/nucleus_api/models/merchants_map.rb +203 -0
  138. data/lib/nucleus_api/models/model.rb +397 -0
  139. data/lib/nucleus_api/models/model_asset_size.rb +275 -0
  140. data/lib/nucleus_api/models/model_comment.rb +265 -0
  141. data/lib/nucleus_api/models/model_holding.rb +371 -0
  142. data/lib/nucleus_api/models/model_holding_vo.rb +209 -0
  143. data/lib/nucleus_api/models/model_transaction.rb +299 -0
  144. data/lib/nucleus_api/models/mx_merchant_res.rb +236 -0
  145. data/lib/nucleus_api/models/node.rb +261 -0
  146. data/lib/nucleus_api/models/node_relationship.rb +301 -0
  147. data/lib/nucleus_api/models/notification.rb +314 -0
  148. data/lib/nucleus_api/models/notification_client.rb +310 -0
  149. data/lib/nucleus_api/models/notification_setting.rb +301 -0
  150. data/lib/nucleus_api/models/order.rb +391 -0
  151. data/lib/nucleus_api/models/order_bulk.rb +310 -0
  152. data/lib/nucleus_api/models/order_reconcile_request.rb +221 -0
  153. data/lib/nucleus_api/models/order_reconcile_return_object.rb +228 -0
  154. data/lib/nucleus_api/models/order_status.rb +251 -0
  155. data/lib/nucleus_api/models/order_track.rb +317 -0
  156. data/lib/nucleus_api/models/order_vo_clone.rb +305 -0
  157. data/lib/nucleus_api/models/overflow.rb +282 -0
  158. data/lib/nucleus_api/models/overflow_bank_link_map.rb +213 -0
  159. data/lib/nucleus_api/models/overflow_settings.rb +288 -0
  160. data/lib/nucleus_api/models/overflow_vo.rb +204 -0
  161. data/lib/nucleus_api/models/ownership.rb +234 -0
  162. data/lib/nucleus_api/models/page_account.rb +259 -0
  163. data/lib/nucleus_api/models/page_account_allocation_mapping.rb +259 -0
  164. data/lib/nucleus_api/models/page_account_permission_vo.rb +259 -0
  165. data/lib/nucleus_api/models/page_account_status.rb +259 -0
  166. data/lib/nucleus_api/models/page_account_type.rb +259 -0
  167. data/lib/nucleus_api/models/page_admin_client.rb +259 -0
  168. data/lib/nucleus_api/models/page_aggregation_account.rb +259 -0
  169. data/lib/nucleus_api/models/page_aggregation_account_balance.rb +259 -0
  170. data/lib/nucleus_api/models/page_aggregation_account_holding.rb +259 -0
  171. data/lib/nucleus_api/models/page_aggregation_account_transaction.rb +259 -0
  172. data/lib/nucleus_api/models/page_allocation.rb +259 -0
  173. data/lib/nucleus_api/models/page_allocation_composition.rb +259 -0
  174. data/lib/nucleus_api/models/page_answer.rb +259 -0
  175. data/lib/nucleus_api/models/page_application.rb +259 -0
  176. data/lib/nucleus_api/models/page_audit_log.rb +259 -0
  177. data/lib/nucleus_api/models/page_bank_link.rb +259 -0
  178. data/lib/nucleus_api/models/page_benchmark.rb +259 -0
  179. data/lib/nucleus_api/models/page_budget.rb +259 -0
  180. data/lib/nucleus_api/models/page_business.rb +259 -0
  181. data/lib/nucleus_api/models/page_card.rb +259 -0
  182. data/lib/nucleus_api/models/page_card_program.rb +259 -0
  183. data/lib/nucleus_api/models/page_client.rb +259 -0
  184. data/lib/nucleus_api/models/page_client_business_card_vo.rb +259 -0
  185. data/lib/nucleus_api/models/page_client_response.rb +259 -0
  186. data/lib/nucleus_api/models/page_client_status.rb +259 -0
  187. data/lib/nucleus_api/models/page_contact.rb +259 -0
  188. data/lib/nucleus_api/models/page_customer_revenue.rb +259 -0
  189. data/lib/nucleus_api/models/page_decision_tree.rb +259 -0
  190. data/lib/nucleus_api/models/page_document.rb +259 -0
  191. data/lib/nucleus_api/models/page_external_account_transfer.rb +259 -0
  192. data/lib/nucleus_api/models/page_feature.rb +259 -0
  193. data/lib/nucleus_api/models/page_feature_track.rb +259 -0
  194. data/lib/nucleus_api/models/page_financial_statement.rb +259 -0
  195. data/lib/nucleus_api/models/page_funding.rb +259 -0
  196. data/lib/nucleus_api/models/page_funding_transaction.rb +259 -0
  197. data/lib/nucleus_api/models/page_goal.rb +259 -0
  198. data/lib/nucleus_api/models/page_goal_track.rb +259 -0
  199. data/lib/nucleus_api/models/page_household.rb +259 -0
  200. data/lib/nucleus_api/models/page_institution.rb +259 -0
  201. data/lib/nucleus_api/models/page_invoice.rb +259 -0
  202. data/lib/nucleus_api/models/page_invoice_payment.rb +259 -0
  203. data/lib/nucleus_api/models/page_model.rb +259 -0
  204. data/lib/nucleus_api/models/page_model_asset_size.rb +259 -0
  205. data/lib/nucleus_api/models/page_model_comment.rb +259 -0
  206. data/lib/nucleus_api/models/page_model_holding.rb +259 -0
  207. data/lib/nucleus_api/models/page_model_transaction.rb +259 -0
  208. data/lib/nucleus_api/models/page_mx_merchant_res.rb +274 -0
  209. data/lib/nucleus_api/models/page_node.rb +259 -0
  210. data/lib/nucleus_api/models/page_node_relationship.rb +259 -0
  211. data/lib/nucleus_api/models/page_notification.rb +259 -0
  212. data/lib/nucleus_api/models/page_notification_client.rb +259 -0
  213. data/lib/nucleus_api/models/page_notification_setting.rb +259 -0
  214. data/lib/nucleus_api/models/page_order.rb +259 -0
  215. data/lib/nucleus_api/models/page_order_bulk.rb +259 -0
  216. data/lib/nucleus_api/models/page_order_status.rb +259 -0
  217. data/lib/nucleus_api/models/page_order_track.rb +259 -0
  218. data/lib/nucleus_api/models/page_overflow.rb +259 -0
  219. data/lib/nucleus_api/models/page_overflow_settings.rb +259 -0
  220. data/lib/nucleus_api/models/page_portfolio.rb +259 -0
  221. data/lib/nucleus_api/models/page_portfolio_asset_size_log.rb +259 -0
  222. data/lib/nucleus_api/models/page_portfolio_comment.rb +259 -0
  223. data/lib/nucleus_api/models/page_portfolio_goal.rb +259 -0
  224. data/lib/nucleus_api/models/page_portfolio_holding_agg.rb +259 -0
  225. data/lib/nucleus_api/models/page_portfolio_holding_log.rb +259 -0
  226. data/lib/nucleus_api/models/page_portfolio_transaction.rb +259 -0
  227. data/lib/nucleus_api/models/page_question.rb +259 -0
  228. data/lib/nucleus_api/models/page_questionnaire.rb +259 -0
  229. data/lib/nucleus_api/models/page_reason_code.rb +259 -0
  230. data/lib/nucleus_api/models/page_risk_profile.rb +259 -0
  231. data/lib/nucleus_api/models/page_roundup.rb +259 -0
  232. data/lib/nucleus_api/models/page_roundup_settings.rb +259 -0
  233. data/lib/nucleus_api/models/page_score.rb +259 -0
  234. data/lib/nucleus_api/models/page_security.rb +259 -0
  235. data/lib/nucleus_api/models/page_security_exclusion.rb +259 -0
  236. data/lib/nucleus_api/models/page_security_price.rb +259 -0
  237. data/lib/nucleus_api/models/page_spending_control.rb +259 -0
  238. data/lib/nucleus_api/models/page_stage.rb +259 -0
  239. data/lib/nucleus_api/models/page_transaction_code.rb +259 -0
  240. data/lib/nucleus_api/models/page_webhook.rb +259 -0
  241. data/lib/nucleus_api/models/pageable.rb +227 -0
  242. data/lib/nucleus_api/models/permission_vo.rb +227 -0
  243. data/lib/nucleus_api/models/portfolio.rb +337 -0
  244. data/lib/nucleus_api/models/portfolio_asset_size_log.rb +330 -0
  245. data/lib/nucleus_api/models/portfolio_comment.rb +280 -0
  246. data/lib/nucleus_api/models/portfolio_goal.rb +256 -0
  247. data/lib/nucleus_api/models/portfolio_goal_map.rb +203 -0
  248. data/lib/nucleus_api/models/portfolio_holding_agg.rb +244 -0
  249. data/lib/nucleus_api/models/portfolio_holding_log.rb +340 -0
  250. data/lib/nucleus_api/models/portfolio_transaction.rb +536 -0
  251. data/lib/nucleus_api/models/question.rb +362 -0
  252. data/lib/nucleus_api/models/questionnaire.rb +288 -0
  253. data/lib/nucleus_api/models/reason_code.rb +275 -0
  254. data/lib/nucleus_api/models/risk_profile.rb +287 -0
  255. data/lib/nucleus_api/models/roundup.rb +267 -0
  256. data/lib/nucleus_api/models/roundup_co.rb +233 -0
  257. data/lib/nucleus_api/models/roundup_settings.rb +332 -0
  258. data/lib/nucleus_api/models/score.rb +375 -0
  259. data/lib/nucleus_api/models/securities_composition.rb +233 -0
  260. data/lib/nucleus_api/models/securities_country.rb +203 -0
  261. data/lib/nucleus_api/models/security.rb +435 -0
  262. data/lib/nucleus_api/models/security_composition_vo.rb +301 -0
  263. data/lib/nucleus_api/models/security_country_vo.rb +191 -0
  264. data/lib/nucleus_api/models/security_exclusion.rb +301 -0
  265. data/lib/nucleus_api/models/security_price.rb +314 -0
  266. data/lib/nucleus_api/models/sort.rb +234 -0
  267. data/lib/nucleus_api/models/spending_control.rb +343 -0
  268. data/lib/nucleus_api/models/stage.rb +346 -0
  269. data/lib/nucleus_api/models/stat.rb +204 -0
  270. data/lib/nucleus_api/models/state.rb +203 -0
  271. data/lib/nucleus_api/models/statistic_resource_vo.rb +209 -0
  272. data/lib/nucleus_api/models/token_date_request.rb +234 -0
  273. data/lib/nucleus_api/models/transaction_code.rb +313 -0
  274. data/lib/nucleus_api/models/v_account_vo.rb +227 -0
  275. data/lib/nucleus_api/models/v_client_goal_view_data.rb +229 -0
  276. data/lib/nucleus_api/models/v_portfolio_vo.rb +209 -0
  277. data/lib/nucleus_api/models/webhook.rb +278 -0
  278. data/lib/nucleus_api/version.rb +15 -0
  279. data/nucleus_api.gemspec +46 -0
  280. data/spec/api/account_api_spec.rb +445 -0
  281. data/spec/api/admin_client_api_spec.rb +107 -0
  282. data/spec/api/aggregation_account_api_spec.rb +412 -0
  283. data/spec/api/allocation_api_spec.rb +225 -0
  284. data/spec/api/benchmark_api_spec.rb +115 -0
  285. data/spec/api/budget_api_spec.rb +102 -0
  286. data/spec/api/bulk_api_spec.rb +86 -0
  287. data/spec/api/business_api_spec.rb +159 -0
  288. data/spec/api/card_api_spec.rb +239 -0
  289. data/spec/api/client_api_spec.rb +327 -0
  290. data/spec/api/contact_api_spec.rb +167 -0
  291. data/spec/api/decision_tree_api_spec.rb +242 -0
  292. data/spec/api/document_api_spec.rb +100 -0
  293. data/spec/api/financial_statement_api_spec.rb +102 -0
  294. data/spec/api/funding_api_spec.rb +315 -0
  295. data/spec/api/goal_api_spec.rb +231 -0
  296. data/spec/api/household_api_spec.rb +159 -0
  297. data/spec/api/invoice_api_spec.rb +169 -0
  298. data/spec/api/model_api_spec.rb +375 -0
  299. data/spec/api/order_api_spec.rb +412 -0
  300. data/spec/api/overflow_api_spec.rb +140 -0
  301. data/spec/api/portfolio_api_spec.rb +464 -0
  302. data/spec/api/questionnaire_api_spec.rb +230 -0
  303. data/spec/api/resource_api_spec.rb +229 -0
  304. data/spec/api/risk_profile_api_spec.rb +100 -0
  305. data/spec/api/roundup_api_spec.rb +140 -0
  306. data/spec/api/score_api_spec.rb +100 -0
  307. data/spec/api/securities_api_spec.rb +232 -0
  308. data/spec/api/spending_control_api_spec.rb +100 -0
  309. data/spec/api/utils_api_spec.rb +660 -0
  310. data/spec/api/webhook_api_spec.rb +100 -0
  311. data/spec/api_client_spec.rb +243 -0
  312. data/spec/configuration_spec.rb +42 -0
  313. data/spec/models/account_allocation_mapping_spec.rb +95 -0
  314. data/spec/models/account_map_spec.rb +47 -0
  315. data/spec/models/account_permission_vo_spec.rb +47 -0
  316. data/spec/models/account_portfolio_rebalance_request_spec.rb +119 -0
  317. data/spec/models/account_spec.rb +125 -0
  318. data/spec/models/account_status_spec.rb +89 -0
  319. data/spec/models/account_type_spec.rb +131 -0
  320. data/spec/models/acl_client_permission_vo_spec.rb +57 -0
  321. data/spec/models/admin_client_spec.rb +113 -0
  322. data/spec/models/aggregation_account_balance_spec.rb +101 -0
  323. data/spec/models/aggregation_account_holding_spec.rb +149 -0
  324. data/spec/models/aggregation_account_spec.rb +251 -0
  325. data/spec/models/aggregation_account_transaction_spec.rb +131 -0
  326. data/spec/models/aggregation_accounts_map_spec.rb +47 -0
  327. data/spec/models/allocation_aggregated_vo_spec.rb +71 -0
  328. data/spec/models/allocation_composition_aggregated_vo_spec.rb +107 -0
  329. data/spec/models/allocation_composition_model_holdings_vo_spec.rb +125 -0
  330. data/spec/models/allocation_composition_spec.rb +101 -0
  331. data/spec/models/allocation_node_map_spec.rb +41 -0
  332. data/spec/models/allocation_spec.rb +125 -0
  333. data/spec/models/answer_map_spec.rb +41 -0
  334. data/spec/models/answer_spec.rb +119 -0
  335. data/spec/models/application_spec.rb +83 -0
  336. data/spec/models/audit_log_spec.rb +131 -0
  337. data/spec/models/available_date_double_vo_spec.rb +77 -0
  338. data/spec/models/balances_spec.rb +65 -0
  339. data/spec/models/bank_credit_spec.rb +95 -0
  340. data/spec/models/bank_link_map_spec.rb +47 -0
  341. data/spec/models/bank_link_spec.rb +179 -0
  342. data/spec/models/benchmark_composition_spec.rb +47 -0
  343. data/spec/models/benchmark_spec.rb +95 -0
  344. data/spec/models/brokers_spec.rb +47 -0
  345. data/spec/models/budget_aggregation_account_spec.rb +41 -0
  346. data/spec/models/budget_object_spec.rb +53 -0
  347. data/spec/models/budget_spec.rb +149 -0
  348. data/spec/models/bulk_transaction_spec.rb +71 -0
  349. data/spec/models/bulk_transaction_vo_spec.rb +65 -0
  350. data/spec/models/business_address_spec.rb +83 -0
  351. data/spec/models/business_details_vo_spec.rb +71 -0
  352. data/spec/models/business_spec.rb +185 -0
  353. data/spec/models/card_address_spec.rb +77 -0
  354. data/spec/models/card_balance_vo_spec.rb +59 -0
  355. data/spec/models/card_details_vo_spec.rb +101 -0
  356. data/spec/models/card_program_spec.rb +131 -0
  357. data/spec/models/card_spec.rb +215 -0
  358. data/spec/models/cash_spec.rb +53 -0
  359. data/spec/models/categories_map_spec.rb +47 -0
  360. data/spec/models/check_images_spec.rb +47 -0
  361. data/spec/models/check_spec.rb +53 -0
  362. data/spec/models/client_account_mapping_spec.rb +53 -0
  363. data/spec/models/client_address_spec.rb +83 -0
  364. data/spec/models/client_business_card_vo_spec.rb +59 -0
  365. data/spec/models/client_business_total_card_balance_vo_spec.rb +53 -0
  366. data/spec/models/client_card_vo_spec.rb +77 -0
  367. data/spec/models/client_credentials_spec.rb +53 -0
  368. data/spec/models/client_relationship_spec.rb +53 -0
  369. data/spec/models/client_response_spec.rb +95 -0
  370. data/spec/models/client_spec.rb +239 -0
  371. data/spec/models/client_status_spec.rb +89 -0
  372. data/spec/models/client_view_goal_data_spec.rb +119 -0
  373. data/spec/models/contact_address_spec.rb +77 -0
  374. data/spec/models/contact_spec.rb +143 -0
  375. data/spec/models/country_spec.rb +71 -0
  376. data/spec/models/currency_spec.rb +59 -0
  377. data/spec/models/customer_revenue_spec.rb +95 -0
  378. data/spec/models/date_double_vo_spec.rb +53 -0
  379. data/spec/models/decision_tree_co_spec.rb +47 -0
  380. data/spec/models/decision_tree_result_vo_spec.rb +47 -0
  381. data/spec/models/decision_tree_spec.rb +95 -0
  382. data/spec/models/document_spec.rb +173 -0
  383. data/spec/models/employment_spec.rb +59 -0
  384. data/spec/models/external_account_transfer_spec.rb +161 -0
  385. data/spec/models/feature_spec.rb +101 -0
  386. data/spec/models/feature_track_spec.rb +77 -0
  387. data/spec/models/financial_statement_spec.rb +137 -0
  388. data/spec/models/funding_request_map_spec.rb +41 -0
  389. data/spec/models/funding_spec.rb +221 -0
  390. data/spec/models/funding_transaction_spec.rb +155 -0
  391. data/spec/models/fx_rate_spec.rb +59 -0
  392. data/spec/models/fx_rate_view_spec.rb +59 -0
  393. data/spec/models/goal_account_mapping_spec.rb +59 -0
  394. data/spec/models/goal_spec.rb +137 -0
  395. data/spec/models/goal_track_accounts_spec.rb +41 -0
  396. data/spec/models/goal_track_spec.rb +149 -0
  397. data/spec/models/household_spec.rb +101 -0
  398. data/spec/models/institution_spec.rb +83 -0
  399. data/spec/models/investment_spec.rb +89 -0
  400. data/spec/models/invoice_payment_spec.rb +89 -0
  401. data/spec/models/invoice_spec.rb +197 -0
  402. data/spec/models/json_node_spec.rb +35 -0
  403. data/spec/models/line_items_spec.rb +83 -0
  404. data/spec/models/location_spec.rb +83 -0
  405. data/spec/models/member_spec.rb +59 -0
  406. data/spec/models/merchant_category_code_spec.rb +65 -0
  407. data/spec/models/merchants_map_spec.rb +47 -0
  408. data/spec/models/model_asset_size_spec.rb +89 -0
  409. data/spec/models/model_comment_spec.rb +83 -0
  410. data/spec/models/model_holding_spec.rb +143 -0
  411. data/spec/models/model_holding_vo_spec.rb +59 -0
  412. data/spec/models/model_spec.rb +167 -0
  413. data/spec/models/model_transaction_spec.rb +95 -0
  414. data/spec/models/mx_merchant_res_spec.rb +77 -0
  415. data/spec/models/node_relationship_spec.rb +101 -0
  416. data/spec/models/node_spec.rb +83 -0
  417. data/spec/models/notification_client_spec.rb +107 -0
  418. data/spec/models/notification_setting_spec.rb +107 -0
  419. data/spec/models/notification_spec.rb +113 -0
  420. data/spec/models/order_bulk_spec.rb +101 -0
  421. data/spec/models/order_reconcile_request_spec.rb +65 -0
  422. data/spec/models/order_reconcile_return_object_spec.rb +65 -0
  423. data/spec/models/order_spec.rb +155 -0
  424. data/spec/models/order_status_spec.rb +77 -0
  425. data/spec/models/order_track_spec.rb +113 -0
  426. data/spec/models/order_vo_clone_spec.rb +113 -0
  427. data/spec/models/overflow_bank_link_map_spec.rb +53 -0
  428. data/spec/models/overflow_settings_spec.rb +95 -0
  429. data/spec/models/overflow_spec.rb +89 -0
  430. data/spec/models/overflow_vo_spec.rb +53 -0
  431. data/spec/models/ownership_spec.rb +65 -0
  432. data/spec/models/page_account_allocation_mapping_spec.rb +89 -0
  433. data/spec/models/page_account_permission_vo_spec.rb +89 -0
  434. data/spec/models/page_account_spec.rb +89 -0
  435. data/spec/models/page_account_status_spec.rb +89 -0
  436. data/spec/models/page_account_type_spec.rb +89 -0
  437. data/spec/models/page_admin_client_spec.rb +89 -0
  438. data/spec/models/page_aggregation_account_balance_spec.rb +89 -0
  439. data/spec/models/page_aggregation_account_holding_spec.rb +89 -0
  440. data/spec/models/page_aggregation_account_spec.rb +89 -0
  441. data/spec/models/page_aggregation_account_transaction_spec.rb +89 -0
  442. data/spec/models/page_allocation_composition_spec.rb +89 -0
  443. data/spec/models/page_allocation_spec.rb +89 -0
  444. data/spec/models/page_answer_spec.rb +89 -0
  445. data/spec/models/page_application_spec.rb +89 -0
  446. data/spec/models/page_audit_log_spec.rb +89 -0
  447. data/spec/models/page_bank_link_spec.rb +89 -0
  448. data/spec/models/page_benchmark_spec.rb +89 -0
  449. data/spec/models/page_budget_spec.rb +89 -0
  450. data/spec/models/page_business_spec.rb +89 -0
  451. data/spec/models/page_card_program_spec.rb +89 -0
  452. data/spec/models/page_card_spec.rb +89 -0
  453. data/spec/models/page_client_business_card_vo_spec.rb +89 -0
  454. data/spec/models/page_client_response_spec.rb +89 -0
  455. data/spec/models/page_client_spec.rb +89 -0
  456. data/spec/models/page_client_status_spec.rb +89 -0
  457. data/spec/models/page_contact_spec.rb +89 -0
  458. data/spec/models/page_customer_revenue_spec.rb +89 -0
  459. data/spec/models/page_decision_tree_spec.rb +89 -0
  460. data/spec/models/page_document_spec.rb +89 -0
  461. data/spec/models/page_external_account_transfer_spec.rb +89 -0
  462. data/spec/models/page_feature_spec.rb +89 -0
  463. data/spec/models/page_feature_track_spec.rb +89 -0
  464. data/spec/models/page_financial_statement_spec.rb +89 -0
  465. data/spec/models/page_funding_spec.rb +89 -0
  466. data/spec/models/page_funding_transaction_spec.rb +89 -0
  467. data/spec/models/page_goal_spec.rb +89 -0
  468. data/spec/models/page_goal_track_spec.rb +89 -0
  469. data/spec/models/page_household_spec.rb +89 -0
  470. data/spec/models/page_institution_spec.rb +89 -0
  471. data/spec/models/page_invoice_payment_spec.rb +89 -0
  472. data/spec/models/page_invoice_spec.rb +89 -0
  473. data/spec/models/page_model_asset_size_spec.rb +89 -0
  474. data/spec/models/page_model_comment_spec.rb +89 -0
  475. data/spec/models/page_model_holding_spec.rb +89 -0
  476. data/spec/models/page_model_spec.rb +89 -0
  477. data/spec/models/page_model_transaction_spec.rb +89 -0
  478. data/spec/models/page_mx_merchant_res_spec.rb +101 -0
  479. data/spec/models/page_node_relationship_spec.rb +89 -0
  480. data/spec/models/page_node_spec.rb +89 -0
  481. data/spec/models/page_notification_client_spec.rb +89 -0
  482. data/spec/models/page_notification_setting_spec.rb +89 -0
  483. data/spec/models/page_notification_spec.rb +89 -0
  484. data/spec/models/page_order_bulk_spec.rb +89 -0
  485. data/spec/models/page_order_spec.rb +89 -0
  486. data/spec/models/page_order_status_spec.rb +89 -0
  487. data/spec/models/page_order_track_spec.rb +89 -0
  488. data/spec/models/page_overflow_settings_spec.rb +89 -0
  489. data/spec/models/page_overflow_spec.rb +89 -0
  490. data/spec/models/page_portfolio_asset_size_log_spec.rb +89 -0
  491. data/spec/models/page_portfolio_comment_spec.rb +89 -0
  492. data/spec/models/page_portfolio_goal_spec.rb +89 -0
  493. data/spec/models/page_portfolio_holding_agg_spec.rb +89 -0
  494. data/spec/models/page_portfolio_holding_log_spec.rb +89 -0
  495. data/spec/models/page_portfolio_spec.rb +89 -0
  496. data/spec/models/page_portfolio_transaction_spec.rb +89 -0
  497. data/spec/models/page_question_spec.rb +89 -0
  498. data/spec/models/page_questionnaire_spec.rb +89 -0
  499. data/spec/models/page_reason_code_spec.rb +89 -0
  500. data/spec/models/page_risk_profile_spec.rb +89 -0
  501. data/spec/models/page_roundup_settings_spec.rb +89 -0
  502. data/spec/models/page_roundup_spec.rb +89 -0
  503. data/spec/models/page_score_spec.rb +89 -0
  504. data/spec/models/page_security_exclusion_spec.rb +89 -0
  505. data/spec/models/page_security_price_spec.rb +89 -0
  506. data/spec/models/page_security_spec.rb +89 -0
  507. data/spec/models/page_spending_control_spec.rb +89 -0
  508. data/spec/models/page_stage_spec.rb +89 -0
  509. data/spec/models/page_transaction_code_spec.rb +89 -0
  510. data/spec/models/page_webhook_spec.rb +89 -0
  511. data/spec/models/pageable_spec.rb +71 -0
  512. data/spec/models/permission_vo_spec.rb +51 -0
  513. data/spec/models/portfolio_asset_size_log_spec.rb +113 -0
  514. data/spec/models/portfolio_comment_spec.rb +89 -0
  515. data/spec/models/portfolio_goal_map_spec.rb +47 -0
  516. data/spec/models/portfolio_goal_spec.rb +77 -0
  517. data/spec/models/portfolio_holding_agg_spec.rb +77 -0
  518. data/spec/models/portfolio_holding_log_spec.rb +119 -0
  519. data/spec/models/portfolio_spec.rb +125 -0
  520. data/spec/models/portfolio_transaction_spec.rb +239 -0
  521. data/spec/models/question_spec.rb +149 -0
  522. data/spec/models/questionnaire_spec.rb +101 -0
  523. data/spec/models/reason_code_spec.rb +95 -0
  524. data/spec/models/risk_profile_spec.rb +101 -0
  525. data/spec/models/roundup_co_spec.rb +65 -0
  526. data/spec/models/roundup_settings_spec.rb +119 -0
  527. data/spec/models/roundup_spec.rb +83 -0
  528. data/spec/models/score_spec.rb +135 -0
  529. data/spec/models/securities_composition_spec.rb +59 -0
  530. data/spec/models/securities_country_spec.rb +47 -0
  531. data/spec/models/security_composition_vo_spec.rb +119 -0
  532. data/spec/models/security_country_vo_spec.rb +47 -0
  533. data/spec/models/security_exclusion_spec.rb +101 -0
  534. data/spec/models/security_price_spec.rb +113 -0
  535. data/spec/models/security_spec.rb +185 -0
  536. data/spec/models/sort_spec.rb +71 -0
  537. data/spec/models/spending_control_spec.rb +125 -0
  538. data/spec/models/stage_spec.rb +137 -0
  539. data/spec/models/stat_spec.rb +47 -0
  540. data/spec/models/state_spec.rb +53 -0
  541. data/spec/models/statistic_resource_vo_spec.rb +59 -0
  542. data/spec/models/token_date_request_spec.rb +71 -0
  543. data/spec/models/transaction_code_spec.rb +119 -0
  544. data/spec/models/v_account_vo_spec.rb +71 -0
  545. data/spec/models/v_client_goal_view_data_spec.rb +71 -0
  546. data/spec/models/v_portfolio_vo_spec.rb +59 -0
  547. data/spec/models/webhook_spec.rb +87 -0
  548. data/spec/spec_helper.rb +111 -0
  549. metadata +1059 -0
@@ -0,0 +1,280 @@
1
+ =begin
2
+ #Hydrogen Nucleus API
3
+
4
+ #The Hydrogen Nucleus API
5
+
6
+ OpenAPI spec version: 1.9.2
7
+ Contact: info@hydrogenplatform.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.19
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module NucleusApi
16
+ # PortfolioComment Object
17
+ class PortfolioComment
18
+ # accountId
19
+ attr_accessor :account_id
20
+
21
+ attr_accessor :create_date
22
+
23
+ attr_accessor :id
24
+
25
+ # isRead
26
+ attr_accessor :is_read
27
+
28
+ # modelCommentId
29
+ attr_accessor :model_comment_id
30
+
31
+ # modelId
32
+ attr_accessor :model_id
33
+
34
+ # portfolioId
35
+ attr_accessor :portfolio_id
36
+
37
+ attr_accessor :secondary_id
38
+
39
+ attr_accessor :update_date
40
+
41
+ # Attribute mapping from ruby-style variable name to JSON key.
42
+ def self.attribute_map
43
+ {
44
+ :'account_id' => :'account_id',
45
+ :'create_date' => :'create_date',
46
+ :'id' => :'id',
47
+ :'is_read' => :'is_read',
48
+ :'model_comment_id' => :'model_comment_id',
49
+ :'model_id' => :'model_id',
50
+ :'portfolio_id' => :'portfolio_id',
51
+ :'secondary_id' => :'secondary_id',
52
+ :'update_date' => :'update_date'
53
+ }
54
+ end
55
+
56
+ # Attribute type mapping.
57
+ def self.swagger_types
58
+ {
59
+ :'account_id' => :'String',
60
+ :'create_date' => :'DateTime',
61
+ :'id' => :'String',
62
+ :'is_read' => :'BOOLEAN',
63
+ :'model_comment_id' => :'String',
64
+ :'model_id' => :'String',
65
+ :'portfolio_id' => :'String',
66
+ :'secondary_id' => :'String',
67
+ :'update_date' => :'DateTime'
68
+ }
69
+ end
70
+
71
+ # Initializes the object
72
+ # @param [Hash] attributes Model attributes in the form of hash
73
+ def initialize(attributes = {})
74
+ return unless attributes.is_a?(Hash)
75
+
76
+ # convert string to symbol for hash key
77
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
78
+
79
+ if attributes.has_key?(:'account_id')
80
+ self.account_id = attributes[:'account_id']
81
+ end
82
+
83
+ if attributes.has_key?(:'create_date')
84
+ self.create_date = attributes[:'create_date']
85
+ end
86
+
87
+ if attributes.has_key?(:'id')
88
+ self.id = attributes[:'id']
89
+ end
90
+
91
+ if attributes.has_key?(:'is_read')
92
+ self.is_read = attributes[:'is_read']
93
+ end
94
+
95
+ if attributes.has_key?(:'model_comment_id')
96
+ self.model_comment_id = attributes[:'model_comment_id']
97
+ end
98
+
99
+ if attributes.has_key?(:'model_id')
100
+ self.model_id = attributes[:'model_id']
101
+ end
102
+
103
+ if attributes.has_key?(:'portfolio_id')
104
+ self.portfolio_id = attributes[:'portfolio_id']
105
+ end
106
+
107
+ if attributes.has_key?(:'secondary_id')
108
+ self.secondary_id = attributes[:'secondary_id']
109
+ end
110
+
111
+ if attributes.has_key?(:'update_date')
112
+ self.update_date = attributes[:'update_date']
113
+ end
114
+ end
115
+
116
+ # Show invalid properties with the reasons. Usually used together with valid?
117
+ # @return Array for valid properties with the reasons
118
+ def list_invalid_properties
119
+ invalid_properties = Array.new
120
+ if @account_id.nil?
121
+ invalid_properties.push('invalid value for "account_id", account_id cannot be nil.')
122
+ end
123
+
124
+ if @model_comment_id.nil?
125
+ invalid_properties.push('invalid value for "model_comment_id", model_comment_id cannot be nil.')
126
+ end
127
+
128
+ if @model_id.nil?
129
+ invalid_properties.push('invalid value for "model_id", model_id cannot be nil.')
130
+ end
131
+
132
+ if @portfolio_id.nil?
133
+ invalid_properties.push('invalid value for "portfolio_id", portfolio_id 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 @account_id.nil?
143
+ return false if @model_comment_id.nil?
144
+ return false if @model_id.nil?
145
+ return false if @portfolio_id.nil?
146
+ true
147
+ end
148
+
149
+ # Checks equality by comparing each attribute.
150
+ # @param [Object] Object to be compared
151
+ def ==(o)
152
+ return true if self.equal?(o)
153
+ self.class == o.class &&
154
+ account_id == o.account_id &&
155
+ create_date == o.create_date &&
156
+ id == o.id &&
157
+ is_read == o.is_read &&
158
+ model_comment_id == o.model_comment_id &&
159
+ model_id == o.model_id &&
160
+ portfolio_id == o.portfolio_id &&
161
+ secondary_id == o.secondary_id &&
162
+ update_date == o.update_date
163
+ end
164
+
165
+ # @see the `==` method
166
+ # @param [Object] Object to be compared
167
+ def eql?(o)
168
+ self == o
169
+ end
170
+
171
+ # Calculates hash code according to all attributes.
172
+ # @return [Fixnum] Hash code
173
+ def hash
174
+ [account_id, create_date, id, is_read, model_comment_id, model_id, portfolio_id, secondary_id, update_date].hash
175
+ end
176
+
177
+ # Builds the object from hash
178
+ # @param [Hash] attributes Model attributes in the form of hash
179
+ # @return [Object] Returns the model itself
180
+ def build_from_hash(attributes)
181
+ self.class.swagger_types.each_pair do |key, type|
182
+ if type =~ /\AArray<(.*)>/i
183
+ # check to ensure the input is an array given that the attribute
184
+ # is documented as an array but the input is not
185
+ 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) })
187
+ end
188
+ elsif !attributes[self.class.attribute_map[key]].nil?
189
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
190
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
191
+ end
192
+
193
+ self
194
+ end
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
+ (value)
203
+ when :Date
204
+ (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 = NucleusApi.const_get(type).new
233
+ temp_model.build_from_hash(value)
234
+ end
235
+ end
236
+
237
+
238
+ # Returns the string representation of the object
239
+ # @return [String] String presentation of the object
240
+ def to_s
241
+ to_hash.to_s
242
+ end
243
+
244
+ # to_body is an alias to to_hash (backward compatibility)
245
+ # @return [Hash] Returns the object in the form of hash
246
+ def to_body
247
+ to_hash
248
+ end
249
+
250
+ # Returns the object in the form of hash
251
+ # @return [Hash] Returns the object in the form of hash
252
+ def to_hash
253
+ hash = {}
254
+ self.class.attribute_map.each_pair do |attr, param|
255
+ value = self.send(attr)
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
+
279
+ end
280
+ end
@@ -0,0 +1,256 @@
1
+ =begin
2
+ #Hydrogen Nucleus API
3
+
4
+ #The Hydrogen Nucleus API
5
+
6
+ OpenAPI spec version: 1.9.2
7
+ Contact: info@hydrogenplatform.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.19
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module NucleusApi
16
+ # PortfolioGoal Object
17
+ class PortfolioGoal
18
+ attr_accessor :create_date
19
+
20
+ # date
21
+ attr_accessor :date
22
+
23
+ attr_accessor :goals
24
+
25
+ attr_accessor :id
26
+
27
+ # portfolioId
28
+ attr_accessor :portfolio_id
29
+
30
+ attr_accessor :secondary_id
31
+
32
+ attr_accessor :update_date
33
+
34
+ # Attribute mapping from ruby-style variable name to JSON key.
35
+ def self.attribute_map
36
+ {
37
+ :'create_date' => :'create_date',
38
+ :'date' => :'date',
39
+ :'goals' => :'goals',
40
+ :'id' => :'id',
41
+ :'portfolio_id' => :'portfolio_id',
42
+ :'secondary_id' => :'secondary_id',
43
+ :'update_date' => :'update_date'
44
+ }
45
+ end
46
+
47
+ # Attribute type mapping.
48
+ def self.swagger_types
49
+ {
50
+ :'create_date' => :'DateTime',
51
+ :'date' => :'Date',
52
+ :'goals' => :'Array<PortfolioGoalMap>',
53
+ :'id' => :'String',
54
+ :'portfolio_id' => :'String',
55
+ :'secondary_id' => :'String',
56
+ :'update_date' => :'DateTime'
57
+ }
58
+ end
59
+
60
+ # Initializes the object
61
+ # @param [Hash] attributes Model attributes in the form of hash
62
+ def initialize(attributes = {})
63
+ return unless attributes.is_a?(Hash)
64
+
65
+ # convert string to symbol for hash key
66
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
67
+
68
+ if attributes.has_key?(:'create_date')
69
+ self.create_date = attributes[:'create_date']
70
+ end
71
+
72
+ if attributes.has_key?(:'date')
73
+ self.date = attributes[:'date']
74
+ end
75
+
76
+ if attributes.has_key?(:'goals')
77
+ if (value = attributes[:'goals']).is_a?(Array)
78
+ self.goals = value
79
+ end
80
+ end
81
+
82
+ if attributes.has_key?(:'id')
83
+ self.id = attributes[:'id']
84
+ end
85
+
86
+ if attributes.has_key?(:'portfolio_id')
87
+ self.portfolio_id = attributes[:'portfolio_id']
88
+ end
89
+
90
+ if attributes.has_key?(:'secondary_id')
91
+ self.secondary_id = attributes[:'secondary_id']
92
+ end
93
+
94
+ if attributes.has_key?(:'update_date')
95
+ self.update_date = attributes[:'update_date']
96
+ end
97
+ end
98
+
99
+ # Show invalid properties with the reasons. Usually used together with valid?
100
+ # @return Array for valid properties with the reasons
101
+ def list_invalid_properties
102
+ invalid_properties = Array.new
103
+ if @date.nil?
104
+ invalid_properties.push('invalid value for "date", date cannot be nil.')
105
+ end
106
+
107
+ if @goals.nil?
108
+ invalid_properties.push('invalid value for "goals", goals cannot be nil.')
109
+ end
110
+
111
+ if @portfolio_id.nil?
112
+ invalid_properties.push('invalid value for "portfolio_id", portfolio_id cannot be nil.')
113
+ end
114
+
115
+ invalid_properties
116
+ end
117
+
118
+ # Check to see if the all the properties in the model are valid
119
+ # @return true if the model is valid
120
+ def valid?
121
+ return false if @date.nil?
122
+ return false if @goals.nil?
123
+ return false if @portfolio_id.nil?
124
+ true
125
+ end
126
+
127
+ # Checks equality by comparing each attribute.
128
+ # @param [Object] Object to be compared
129
+ def ==(o)
130
+ return true if self.equal?(o)
131
+ self.class == o.class &&
132
+ create_date == o.create_date &&
133
+ date == o.date &&
134
+ goals == o.goals &&
135
+ id == o.id &&
136
+ portfolio_id == o.portfolio_id &&
137
+ secondary_id == o.secondary_id &&
138
+ update_date == o.update_date
139
+ end
140
+
141
+ # @see the `==` method
142
+ # @param [Object] Object to be compared
143
+ def eql?(o)
144
+ self == o
145
+ end
146
+
147
+ # Calculates hash code according to all attributes.
148
+ # @return [Fixnum] Hash code
149
+ def hash
150
+ [create_date, date, goals, id, portfolio_id, secondary_id, update_date].hash
151
+ end
152
+
153
+ # Builds the object from hash
154
+ # @param [Hash] attributes Model attributes in the form of hash
155
+ # @return [Object] Returns the model itself
156
+ def build_from_hash(attributes)
157
+ self.class.swagger_types.each_pair do |key, type|
158
+ if type =~ /\AArray<(.*)>/i
159
+ # check to ensure the input is an array given that the attribute
160
+ # is documented as an array but the input is not
161
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
162
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
163
+ end
164
+ elsif !attributes[self.class.attribute_map[key]].nil?
165
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
166
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
167
+ end
168
+
169
+ self
170
+ end
171
+ # Deserializes the data based on type
172
+ # @param string type Data type
173
+ # @param string value Value to be deserialized
174
+ # @return [Object] Deserialized data
175
+ def _deserialize(type, value)
176
+ case type.to_sym
177
+ when :DateTime
178
+ (value)
179
+ when :Date
180
+ (value)
181
+ when :String
182
+ value.to_s
183
+ when :Integer
184
+ value.to_i
185
+ when :Float
186
+ value.to_f
187
+ when :BOOLEAN
188
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
189
+ true
190
+ else
191
+ false
192
+ end
193
+ when :Object
194
+ # generic object (usually a Hash), return directly
195
+ value
196
+ when /\AArray<(?<inner_type>.+)>\z/
197
+ inner_type = Regexp.last_match[:inner_type]
198
+ value.map { |v| _deserialize(inner_type, v) }
199
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
200
+ k_type = Regexp.last_match[:k_type]
201
+ v_type = Regexp.last_match[:v_type]
202
+ {}.tap do |hash|
203
+ value.each do |k, v|
204
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
205
+ end
206
+ end
207
+ else # model
208
+ temp_model = NucleusApi.const_get(type).new
209
+ temp_model.build_from_hash(value)
210
+ end
211
+ end
212
+
213
+
214
+ # Returns the string representation of the object
215
+ # @return [String] String presentation of the object
216
+ def to_s
217
+ to_hash.to_s
218
+ end
219
+
220
+ # to_body is an alias to to_hash (backward compatibility)
221
+ # @return [Hash] Returns the object in the form of hash
222
+ def to_body
223
+ to_hash
224
+ end
225
+
226
+ # Returns the object in the form of hash
227
+ # @return [Hash] Returns the object in the form of hash
228
+ def to_hash
229
+ hash = {}
230
+ self.class.attribute_map.each_pair do |attr, param|
231
+ value = self.send(attr)
232
+ hash[param] = _to_hash(value)
233
+ end
234
+ hash
235
+ end
236
+
237
+ # Outputs non-array value in the form of hash
238
+ # For object, use to_hash. Otherwise, just return the value
239
+ # @param [Object] value Any valid value
240
+ # @return [Hash] Returns the value in the form of hash
241
+ def _to_hash(value)
242
+ if value.is_a?(Array)
243
+ value.compact.map { |v| _to_hash(v) }
244
+ elsif value.is_a?(Hash)
245
+ {}.tap do |hash|
246
+ value.each { |k, v| hash[k] = _to_hash(v) }
247
+ end
248
+ elsif value.respond_to? :to_hash
249
+ value.to_hash
250
+ else
251
+ value
252
+ end
253
+ end
254
+
255
+ end
256
+ end