happyco_json 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (334) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +7 -0
  3. data/README.md +215 -0
  4. data/Rakefile +8 -0
  5. data/docs/AccountProvisioningServiceApi.md +98 -0
  6. data/docs/AccountServiceApi.md +98 -0
  7. data/docs/AccountUsersServiceApi.md +188 -0
  8. data/docs/AssetServiceApi.md +233 -0
  9. data/docs/CreateAccountsRequestAccountWithAdmin.md +9 -0
  10. data/docs/CreateAccountsResponseAccountIDWithAdminID.md +9 -0
  11. data/docs/FolderServiceApi.md +188 -0
  12. data/docs/InspectionServiceApi.md +329 -0
  13. data/docs/InspectionStatusChangeStatus.md +7 -0
  14. data/docs/InspectionStatusChangesEventInspectionStatusChange.md +10 -0
  15. data/docs/TemplateServiceApi.md +233 -0
  16. data/docs/UpdateAccountsRequestAccountWithAdminId.md +9 -0
  17. data/docs/V1Account.md +17 -0
  18. data/docs/V1AddInspectionPhotoRequest.md +11 -0
  19. data/docs/V1AddInspectionPhotoResponse.md +9 -0
  20. data/docs/V1AddInspectionPhotosRequest.md +9 -0
  21. data/docs/V1AddInspectionPhotosResponse.md +8 -0
  22. data/docs/V1AddUsersRequest.md +9 -0
  23. data/docs/V1AddUsersResponse.md +8 -0
  24. data/docs/V1Asset.md +17 -0
  25. data/docs/V1CreateAccountsRequest.md +8 -0
  26. data/docs/V1CreateAccountsResponse.md +8 -0
  27. data/docs/V1CreateAssetsRequest.md +10 -0
  28. data/docs/V1CreateAssetsResponse.md +8 -0
  29. data/docs/V1CreateDelegatedInspectionLinkRequest.md +12 -0
  30. data/docs/V1CreateDelegatedInspectionLinkResponse.md +9 -0
  31. data/docs/V1CreateDelegatedInspectionLinksRequest.md +13 -0
  32. data/docs/V1CreateDelegatedInspectionLinksResponse.md +8 -0
  33. data/docs/V1CreateFoldersRequest.md +9 -0
  34. data/docs/V1CreateFoldersResponse.md +8 -0
  35. data/docs/V1CreateInspectionsRequest.md +9 -0
  36. data/docs/V1CreateInspectionsResponse.md +8 -0
  37. data/docs/V1CreateTemplatesRequest.md +10 -0
  38. data/docs/V1CreateTemplatesResponse.md +8 -0
  39. data/docs/V1DateTime.md +13 -0
  40. data/docs/V1Event.md +8 -0
  41. data/docs/V1EventAck.md +10 -0
  42. data/docs/V1EventHandlerOptions.md +8 -0
  43. data/docs/V1FloatArray.md +8 -0
  44. data/docs/V1Folder.md +11 -0
  45. data/docs/V1FolderType.md +7 -0
  46. data/docs/V1FooterField.md +10 -0
  47. data/docs/V1HeaderField.md +10 -0
  48. data/docs/V1Inspection.md +16 -0
  49. data/docs/V1InspectionData.md +15 -0
  50. data/docs/V1InspectionStatusChangesEvent.md +9 -0
  51. data/docs/V1InspectionStatusChangesEventAck.md +8 -0
  52. data/docs/V1InspectionStatusChangesEventAckResponse.md +7 -0
  53. data/docs/V1InspectionStatusChangesEventRequest.md +9 -0
  54. data/docs/V1IntegrationID.md +10 -0
  55. data/docs/V1Item.md +14 -0
  56. data/docs/V1ListAccountsRequest.md +10 -0
  57. data/docs/V1ListAccountsResponse.md +9 -0
  58. data/docs/V1ListAssetsRequest.md +12 -0
  59. data/docs/V1ListAssetsResponse.md +9 -0
  60. data/docs/V1ListFoldersRequest.md +11 -0
  61. data/docs/V1ListFoldersResponse.md +9 -0
  62. data/docs/V1ListInspectionsRequest.md +13 -0
  63. data/docs/V1ListInspectionsResponse.md +10 -0
  64. data/docs/V1ListTemplatesRequest.md +12 -0
  65. data/docs/V1ListTemplatesResponse.md +10 -0
  66. data/docs/V1ListUsersRequest.md +11 -0
  67. data/docs/V1ListUsersResponse.md +9 -0
  68. data/docs/V1Paging.md +7 -0
  69. data/docs/V1PagingResponse.md +7 -0
  70. data/docs/V1Photo.md +9 -0
  71. data/docs/V1Property.md +8 -0
  72. data/docs/V1RatingCheckbox.md +12 -0
  73. data/docs/V1RatingControl.md +11 -0
  74. data/docs/V1RatingDropDown.md +9 -0
  75. data/docs/V1RatingDropDownOption.md +12 -0
  76. data/docs/V1RatingGroups.md +9 -0
  77. data/docs/V1RatingImage.md +7 -0
  78. data/docs/V1RatingRadioGroup.md +9 -0
  79. data/docs/V1RatingRadioGroupOption.md +11 -0
  80. data/docs/V1RatingValues.md +9 -0
  81. data/docs/V1ScheduledInspection.md +11 -0
  82. data/docs/V1Section.md +9 -0
  83. data/docs/V1SetAssetsArchivedRequest.md +10 -0
  84. data/docs/V1SetAssetsArchivedResponse.md +7 -0
  85. data/docs/V1SetInspectionsArchivedRequest.md +9 -0
  86. data/docs/V1SetInspectionsArchivedResponse.md +7 -0
  87. data/docs/V1SetTemplatesArchivedRequest.md +10 -0
  88. data/docs/V1SetTemplatesArchivedResponse.md +7 -0
  89. data/docs/V1StringArray.md +8 -0
  90. data/docs/V1Template.md +18 -0
  91. data/docs/V1Unit.md +9 -0
  92. data/docs/V1UpdateAccountStatusesRequest.md +9 -0
  93. data/docs/V1UpdateAccountStatusesResponse.md +7 -0
  94. data/docs/V1UpdateAccountsRequest.md +8 -0
  95. data/docs/V1UpdateAccountsResponse.md +7 -0
  96. data/docs/V1UpdateAssetsRequest.md +10 -0
  97. data/docs/V1UpdateAssetsResponse.md +7 -0
  98. data/docs/V1UpdateFolderStatusesRequest.md +10 -0
  99. data/docs/V1UpdateFolderStatusesResponse.md +7 -0
  100. data/docs/V1UpdateFoldersRequest.md +9 -0
  101. data/docs/V1UpdateFoldersResponse.md +8 -0
  102. data/docs/V1UpdateInspectionsRequest.md +9 -0
  103. data/docs/V1UpdateInspectionsResponse.md +7 -0
  104. data/docs/V1UpdateTemplatesRequest.md +10 -0
  105. data/docs/V1UpdateTemplatesResponse.md +7 -0
  106. data/docs/V1UpdateUserStatusesRequest.md +10 -0
  107. data/docs/V1UpdateUserStatusesResponse.md +7 -0
  108. data/docs/V1UpdateUsersRequest.md +9 -0
  109. data/docs/V1UpdateUsersResponse.md +8 -0
  110. data/docs/V1User.md +13 -0
  111. data/git_push.sh +55 -0
  112. data/happyco_json.gemspec +45 -0
  113. data/lib/happyco_json/api/account_provisioning_service_api.rb +128 -0
  114. data/lib/happyco_json/api/account_service_api.rb +128 -0
  115. data/lib/happyco_json/api/account_users_service_api.rb +234 -0
  116. data/lib/happyco_json/api/asset_service_api.rb +287 -0
  117. data/lib/happyco_json/api/folder_service_api.rb +234 -0
  118. data/lib/happyco_json/api/inspection_service_api.rb +393 -0
  119. data/lib/happyco_json/api/template_service_api.rb +287 -0
  120. data/lib/happyco_json/api_client.rb +375 -0
  121. data/lib/happyco_json/api_error.rb +37 -0
  122. data/lib/happyco_json/configuration.rb +195 -0
  123. data/lib/happyco_json/helpers.rb +30 -0
  124. data/lib/happyco_json/models/create_accounts_request_account_with_admin.rb +196 -0
  125. data/lib/happyco_json/models/create_accounts_response_account_id_with_admin_id.rb +196 -0
  126. data/lib/happyco_json/models/inspection_status_change_status.rb +22 -0
  127. data/lib/happyco_json/models/inspection_status_changes_event_inspection_status_change.rb +256 -0
  128. data/lib/happyco_json/models/update_accounts_request_account_with_admin_id.rb +196 -0
  129. data/lib/happyco_json/models/v1_account.rb +268 -0
  130. data/lib/happyco_json/models/v1_add_inspection_photo_request.rb +216 -0
  131. data/lib/happyco_json/models/v1_add_inspection_photo_response.rb +197 -0
  132. data/lib/happyco_json/models/v1_add_inspection_photos_request.rb +200 -0
  133. data/lib/happyco_json/models/v1_add_inspection_photos_response.rb +190 -0
  134. data/lib/happyco_json/models/v1_add_users_request.rb +198 -0
  135. data/lib/happyco_json/models/v1_add_users_response.rb +189 -0
  136. data/lib/happyco_json/models/v1_asset.rb +268 -0
  137. data/lib/happyco_json/models/v1_create_accounts_request.rb +189 -0
  138. data/lib/happyco_json/models/v1_create_accounts_response.rb +189 -0
  139. data/lib/happyco_json/models/v1_create_assets_request.rb +207 -0
  140. data/lib/happyco_json/models/v1_create_assets_response.rb +189 -0
  141. data/lib/happyco_json/models/v1_create_delegated_inspection_link_request.rb +223 -0
  142. data/lib/happyco_json/models/v1_create_delegated_inspection_link_response.rb +196 -0
  143. data/lib/happyco_json/models/v1_create_delegated_inspection_links_request.rb +234 -0
  144. data/lib/happyco_json/models/v1_create_delegated_inspection_links_response.rb +189 -0
  145. data/lib/happyco_json/models/v1_create_folders_request.rb +198 -0
  146. data/lib/happyco_json/models/v1_create_folders_response.rb +189 -0
  147. data/lib/happyco_json/models/v1_create_inspections_request.rb +200 -0
  148. data/lib/happyco_json/models/v1_create_inspections_response.rb +189 -0
  149. data/lib/happyco_json/models/v1_create_templates_request.rb +207 -0
  150. data/lib/happyco_json/models/v1_create_templates_response.rb +189 -0
  151. data/lib/happyco_json/models/v1_date_time.rb +232 -0
  152. data/lib/happyco_json/models/v1_event.rb +187 -0
  153. data/lib/happyco_json/models/v1_event_ack.rb +207 -0
  154. data/lib/happyco_json/models/v1_event_handler_options.rb +187 -0
  155. data/lib/happyco_json/models/v1_float_array.rb +189 -0
  156. data/lib/happyco_json/models/v1_folder.rb +249 -0
  157. data/lib/happyco_json/models/v1_folder_type.rb +21 -0
  158. data/lib/happyco_json/models/v1_footer_field.rb +208 -0
  159. data/lib/happyco_json/models/v1_header_field.rb +208 -0
  160. data/lib/happyco_json/models/v1_inspection.rb +264 -0
  161. data/lib/happyco_json/models/v1_inspection_data.rb +266 -0
  162. data/lib/happyco_json/models/v1_inspection_status_changes_event.rb +198 -0
  163. data/lib/happyco_json/models/v1_inspection_status_changes_event_ack.rb +188 -0
  164. data/lib/happyco_json/models/v1_inspection_status_changes_event_ack_response.rb +178 -0
  165. data/lib/happyco_json/models/v1_inspection_status_changes_event_request.rb +198 -0
  166. data/lib/happyco_json/models/v1_integration_id.rb +205 -0
  167. data/lib/happyco_json/models/v1_item.rb +254 -0
  168. data/lib/happyco_json/models/v1_list_accounts_request.rb +207 -0
  169. data/lib/happyco_json/models/v1_list_accounts_response.rb +198 -0
  170. data/lib/happyco_json/models/v1_list_assets_request.rb +225 -0
  171. data/lib/happyco_json/models/v1_list_assets_response.rb +198 -0
  172. data/lib/happyco_json/models/v1_list_folders_request.rb +216 -0
  173. data/lib/happyco_json/models/v1_list_folders_response.rb +198 -0
  174. data/lib/happyco_json/models/v1_list_inspections_request.rb +244 -0
  175. data/lib/happyco_json/models/v1_list_inspections_response.rb +210 -0
  176. data/lib/happyco_json/models/v1_list_templates_request.rb +227 -0
  177. data/lib/happyco_json/models/v1_list_templates_response.rb +207 -0
  178. data/lib/happyco_json/models/v1_list_users_request.rb +216 -0
  179. data/lib/happyco_json/models/v1_list_users_response.rb +198 -0
  180. data/lib/happyco_json/models/v1_paging.rb +178 -0
  181. data/lib/happyco_json/models/v1_paging_response.rb +178 -0
  182. data/lib/happyco_json/models/v1_photo.rb +196 -0
  183. data/lib/happyco_json/models/v1_property.rb +187 -0
  184. data/lib/happyco_json/models/v1_rating_checkbox.rb +261 -0
  185. data/lib/happyco_json/models/v1_rating_control.rb +215 -0
  186. data/lib/happyco_json/models/v1_rating_drop_down.rb +199 -0
  187. data/lib/happyco_json/models/v1_rating_drop_down_option.rb +261 -0
  188. data/lib/happyco_json/models/v1_rating_groups.rb +200 -0
  189. data/lib/happyco_json/models/v1_rating_image.rb +137 -0
  190. data/lib/happyco_json/models/v1_rating_radio_group.rb +199 -0
  191. data/lib/happyco_json/models/v1_rating_radio_group_option.rb +251 -0
  192. data/lib/happyco_json/models/v1_rating_values.rb +196 -0
  193. data/lib/happyco_json/models/v1_scheduled_inspection.rb +223 -0
  194. data/lib/happyco_json/models/v1_section.rb +200 -0
  195. data/lib/happyco_json/models/v1_set_assets_archived_request.rb +207 -0
  196. data/lib/happyco_json/models/v1_set_assets_archived_response.rb +178 -0
  197. data/lib/happyco_json/models/v1_set_inspections_archived_request.rb +200 -0
  198. data/lib/happyco_json/models/v1_set_inspections_archived_response.rb +178 -0
  199. data/lib/happyco_json/models/v1_set_templates_archived_request.rb +207 -0
  200. data/lib/happyco_json/models/v1_set_templates_archived_response.rb +178 -0
  201. data/lib/happyco_json/models/v1_string_array.rb +189 -0
  202. data/lib/happyco_json/models/v1_template.rb +287 -0
  203. data/lib/happyco_json/models/v1_unit.rb +196 -0
  204. data/lib/happyco_json/models/v1_update_account_statuses_request.rb +198 -0
  205. data/lib/happyco_json/models/v1_update_account_statuses_response.rb +178 -0
  206. data/lib/happyco_json/models/v1_update_accounts_request.rb +189 -0
  207. data/lib/happyco_json/models/v1_update_accounts_response.rb +178 -0
  208. data/lib/happyco_json/models/v1_update_assets_request.rb +207 -0
  209. data/lib/happyco_json/models/v1_update_assets_response.rb +178 -0
  210. data/lib/happyco_json/models/v1_update_folder_statuses_request.rb +207 -0
  211. data/lib/happyco_json/models/v1_update_folder_statuses_response.rb +178 -0
  212. data/lib/happyco_json/models/v1_update_folders_request.rb +198 -0
  213. data/lib/happyco_json/models/v1_update_folders_response.rb +189 -0
  214. data/lib/happyco_json/models/v1_update_inspections_request.rb +200 -0
  215. data/lib/happyco_json/models/v1_update_inspections_response.rb +178 -0
  216. data/lib/happyco_json/models/v1_update_templates_request.rb +207 -0
  217. data/lib/happyco_json/models/v1_update_templates_response.rb +178 -0
  218. data/lib/happyco_json/models/v1_update_user_statuses_request.rb +207 -0
  219. data/lib/happyco_json/models/v1_update_user_statuses_response.rb +178 -0
  220. data/lib/happyco_json/models/v1_update_users_request.rb +198 -0
  221. data/lib/happyco_json/models/v1_update_users_response.rb +189 -0
  222. data/lib/happyco_json/models/v1_user.rb +232 -0
  223. data/lib/happyco_json/version.rb +14 -0
  224. data/lib/happyco_json.rb +145 -0
  225. data/spec/api/account_provisioning_service_api_spec.rb +58 -0
  226. data/spec/api/account_service_api_spec.rb +58 -0
  227. data/spec/api/account_users_service_api_spec.rb +82 -0
  228. data/spec/api/asset_service_api_spec.rb +94 -0
  229. data/spec/api/folder_service_api_spec.rb +82 -0
  230. data/spec/api/inspection_service_api_spec.rb +118 -0
  231. data/spec/api/template_service_api_spec.rb +94 -0
  232. data/spec/api_client_spec.rb +225 -0
  233. data/spec/configuration_spec.rb +41 -0
  234. data/spec/models/create_accounts_request_account_with_admin_spec.rb +47 -0
  235. data/spec/models/create_accounts_response_account_id_with_admin_id_spec.rb +47 -0
  236. data/spec/models/inspection_status_change_status_spec.rb +35 -0
  237. data/spec/models/inspection_status_changes_event_inspection_status_change_spec.rb +61 -0
  238. data/spec/models/update_accounts_request_account_with_admin_id_spec.rb +47 -0
  239. data/spec/models/v1_account_spec.rb +95 -0
  240. data/spec/models/v1_add_inspection_photo_request_spec.rb +59 -0
  241. data/spec/models/v1_add_inspection_photo_response_spec.rb +47 -0
  242. data/spec/models/v1_add_inspection_photos_request_spec.rb +47 -0
  243. data/spec/models/v1_add_inspection_photos_response_spec.rb +41 -0
  244. data/spec/models/v1_add_users_request_spec.rb +47 -0
  245. data/spec/models/v1_add_users_response_spec.rb +41 -0
  246. data/spec/models/v1_asset_spec.rb +95 -0
  247. data/spec/models/v1_create_accounts_request_spec.rb +41 -0
  248. data/spec/models/v1_create_accounts_response_spec.rb +41 -0
  249. data/spec/models/v1_create_assets_request_spec.rb +53 -0
  250. data/spec/models/v1_create_assets_response_spec.rb +41 -0
  251. data/spec/models/v1_create_delegated_inspection_link_request_spec.rb +65 -0
  252. data/spec/models/v1_create_delegated_inspection_link_response_spec.rb +47 -0
  253. data/spec/models/v1_create_delegated_inspection_links_request_spec.rb +71 -0
  254. data/spec/models/v1_create_delegated_inspection_links_response_spec.rb +41 -0
  255. data/spec/models/v1_create_folders_request_spec.rb +47 -0
  256. data/spec/models/v1_create_folders_response_spec.rb +41 -0
  257. data/spec/models/v1_create_inspections_request_spec.rb +47 -0
  258. data/spec/models/v1_create_inspections_response_spec.rb +41 -0
  259. data/spec/models/v1_create_templates_request_spec.rb +53 -0
  260. data/spec/models/v1_create_templates_response_spec.rb +41 -0
  261. data/spec/models/v1_date_time_spec.rb +71 -0
  262. data/spec/models/v1_event_ack_spec.rb +53 -0
  263. data/spec/models/v1_event_handler_options_spec.rb +41 -0
  264. data/spec/models/v1_event_spec.rb +41 -0
  265. data/spec/models/v1_float_array_spec.rb +41 -0
  266. data/spec/models/v1_folder_spec.rb +63 -0
  267. data/spec/models/v1_folder_type_spec.rb +35 -0
  268. data/spec/models/v1_footer_field_spec.rb +53 -0
  269. data/spec/models/v1_header_field_spec.rb +53 -0
  270. data/spec/models/v1_inspection_data_spec.rb +83 -0
  271. data/spec/models/v1_inspection_spec.rb +89 -0
  272. data/spec/models/v1_inspection_status_changes_event_ack_response_spec.rb +35 -0
  273. data/spec/models/v1_inspection_status_changes_event_ack_spec.rb +41 -0
  274. data/spec/models/v1_inspection_status_changes_event_request_spec.rb +47 -0
  275. data/spec/models/v1_inspection_status_changes_event_spec.rb +47 -0
  276. data/spec/models/v1_integration_id_spec.rb +53 -0
  277. data/spec/models/v1_item_spec.rb +77 -0
  278. data/spec/models/v1_list_accounts_request_spec.rb +53 -0
  279. data/spec/models/v1_list_accounts_response_spec.rb +47 -0
  280. data/spec/models/v1_list_assets_request_spec.rb +65 -0
  281. data/spec/models/v1_list_assets_response_spec.rb +47 -0
  282. data/spec/models/v1_list_folders_request_spec.rb +59 -0
  283. data/spec/models/v1_list_folders_response_spec.rb +47 -0
  284. data/spec/models/v1_list_inspections_request_spec.rb +71 -0
  285. data/spec/models/v1_list_inspections_response_spec.rb +53 -0
  286. data/spec/models/v1_list_templates_request_spec.rb +65 -0
  287. data/spec/models/v1_list_templates_response_spec.rb +53 -0
  288. data/spec/models/v1_list_users_request_spec.rb +59 -0
  289. data/spec/models/v1_list_users_response_spec.rb +47 -0
  290. data/spec/models/v1_paging_response_spec.rb +35 -0
  291. data/spec/models/v1_paging_spec.rb +35 -0
  292. data/spec/models/v1_photo_spec.rb +47 -0
  293. data/spec/models/v1_property_spec.rb +41 -0
  294. data/spec/models/v1_rating_checkbox_spec.rb +69 -0
  295. data/spec/models/v1_rating_control_spec.rb +59 -0
  296. data/spec/models/v1_rating_drop_down_option_spec.rb +69 -0
  297. data/spec/models/v1_rating_drop_down_spec.rb +47 -0
  298. data/spec/models/v1_rating_groups_spec.rb +47 -0
  299. data/spec/models/v1_rating_image_spec.rb +35 -0
  300. data/spec/models/v1_rating_radio_group_option_spec.rb +63 -0
  301. data/spec/models/v1_rating_radio_group_spec.rb +47 -0
  302. data/spec/models/v1_rating_values_spec.rb +47 -0
  303. data/spec/models/v1_scheduled_inspection_spec.rb +59 -0
  304. data/spec/models/v1_section_spec.rb +47 -0
  305. data/spec/models/v1_set_assets_archived_request_spec.rb +53 -0
  306. data/spec/models/v1_set_assets_archived_response_spec.rb +35 -0
  307. data/spec/models/v1_set_inspections_archived_request_spec.rb +47 -0
  308. data/spec/models/v1_set_inspections_archived_response_spec.rb +35 -0
  309. data/spec/models/v1_set_templates_archived_request_spec.rb +53 -0
  310. data/spec/models/v1_set_templates_archived_response_spec.rb +35 -0
  311. data/spec/models/v1_string_array_spec.rb +41 -0
  312. data/spec/models/v1_template_spec.rb +101 -0
  313. data/spec/models/v1_unit_spec.rb +47 -0
  314. data/spec/models/v1_update_account_statuses_request_spec.rb +47 -0
  315. data/spec/models/v1_update_account_statuses_response_spec.rb +35 -0
  316. data/spec/models/v1_update_accounts_request_spec.rb +41 -0
  317. data/spec/models/v1_update_accounts_response_spec.rb +35 -0
  318. data/spec/models/v1_update_assets_request_spec.rb +53 -0
  319. data/spec/models/v1_update_assets_response_spec.rb +35 -0
  320. data/spec/models/v1_update_folder_statuses_request_spec.rb +53 -0
  321. data/spec/models/v1_update_folder_statuses_response_spec.rb +35 -0
  322. data/spec/models/v1_update_folders_request_spec.rb +47 -0
  323. data/spec/models/v1_update_folders_response_spec.rb +41 -0
  324. data/spec/models/v1_update_inspections_request_spec.rb +47 -0
  325. data/spec/models/v1_update_inspections_response_spec.rb +35 -0
  326. data/spec/models/v1_update_templates_request_spec.rb +53 -0
  327. data/spec/models/v1_update_templates_response_spec.rb +35 -0
  328. data/spec/models/v1_update_user_statuses_request_spec.rb +53 -0
  329. data/spec/models/v1_update_user_statuses_response_spec.rb +35 -0
  330. data/spec/models/v1_update_users_request_spec.rb +47 -0
  331. data/spec/models/v1_update_users_response_spec.rb +41 -0
  332. data/spec/models/v1_user_spec.rb +71 -0
  333. data/spec/spec_helper.rb +110 -0
  334. metadata +658 -0
@@ -0,0 +1,251 @@
1
+ =begin
2
+ #Merged swaggers
3
+
4
+ #All happy services merged together
5
+
6
+ OpenAPI spec version: 0.0.1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+
10
+ =end
11
+
12
+ require 'date'
13
+
14
+ module HappyCo
15
+ # * Rating radio group option represent one of the toggles in a radio group.
16
+ class V1RatingRadioGroupOption
17
+ # * Value is a required field that will be inserted into the item and shown on reports if this radio option is selected. No two options in the same radio group can have the same value.
18
+ attr_accessor :value
19
+
20
+ # * Score is an optional field that will be inserted into the item and can be shown on reports if this radio option is selected.
21
+ attr_accessor :score
22
+
23
+ attr_accessor :color
24
+
25
+ attr_accessor :image
26
+
27
+ class EnumAttributeValidator
28
+ attr_reader :datatype
29
+ attr_reader :allowable_values
30
+
31
+ def initialize(datatype, allowable_values)
32
+ @allowable_values = allowable_values.map do |value|
33
+ case datatype.to_s
34
+ when /Integer/i
35
+ value.to_i
36
+ when /Float/i
37
+ value.to_f
38
+ else
39
+ value
40
+ end
41
+ end
42
+ end
43
+
44
+ def valid?(value)
45
+ !value || allowable_values.include?(value)
46
+ end
47
+ end
48
+
49
+ # Attribute mapping from ruby-style variable name to JSON key.
50
+ def self.attribute_map
51
+ {
52
+ :'value' => :'value',
53
+ :'score' => :'score',
54
+ :'color' => :'color',
55
+ :'image' => :'image'
56
+ }
57
+ end
58
+
59
+ # Attribute type mapping.
60
+ def self.swagger_types
61
+ {
62
+ :'value' => :'String',
63
+ :'score' => :'Float',
64
+ :'color' => :'String',
65
+ :'image' => :'String'
66
+ }
67
+ end
68
+
69
+ # Initializes the object
70
+ # @param [Hash] attributes Model attributes in the form of hash
71
+ def initialize(attributes = {})
72
+ return unless attributes.is_a?(Hash)
73
+
74
+ # convert string to symbol for hash key
75
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
76
+
77
+ if attributes.has_key?(:'value')
78
+ self.value = attributes[:'value']
79
+ end
80
+
81
+ if attributes.has_key?(:'score')
82
+ self.score = attributes[:'score']
83
+ end
84
+
85
+ if attributes.has_key?(:'color')
86
+ self.color = attributes[:'color']
87
+ end
88
+
89
+ if attributes.has_key?(:'image')
90
+ self.image = attributes[:'image']
91
+ else
92
+ self.image = "UNDEFINED"
93
+ end
94
+
95
+ end
96
+
97
+ # Show invalid properties with the reasons. Usually used together with valid?
98
+ # @return Array for valid properies with the reasons
99
+ def list_invalid_properties
100
+ invalid_properties = Array.new
101
+ return invalid_properties
102
+ end
103
+
104
+ # Check to see if the all the properties in the model are valid
105
+ # @return true if the model is valid
106
+ def valid?
107
+ image_validator = EnumAttributeValidator.new('String', ["UNDEFINED", "STAR_FULL", "STAR_HALF", "STAR_EMPTY", "TICK_ROUND", "CLEAN", "SCRATCHES", "SPLAT", "BROKEN", "TICK", "CROSS", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "DIGIT_0", "DIGIT_1", "DIGIT_2", "DIGIT_3", "DIGIT_4", "DIGIT_5", "DIGIT_6", "DIGIT_7", "DIGIT_8", "DIGIT_9", "EXCLAMATION", "QUESTION", "EXCLAMATION_QUESTION", "DOUBLE_EXCLAMATION", "DOLLAR", "POUND", "CENTS", "THUMBS_UP", "THUMBS_DOWN", "AWARD", "FEMALE", "MALE", "CALENDAR", "BUILDINGS", "BUILDING", "HOUSE", "NO_ENTRY", "DOG", "CAT", "RAT", "CIGARETTE", "NO_SMOKING", "POOP", "WEED", "GUN", "BROKEN_GLASS", "CRACKED", "DEAD_FACE", "HANDICAP", "BROKEN_HEART", "HEART", "SYRINGE", "CLOCK", "MUSIC_NOTE", "PLANT", "NOSE", "DROPLET", "ELECTRIC", "BUG", "ARROW_RIGHT", "ARROW_LEFT", "ARROW_UP", "ARROW_DOWN", "RECYCLE", "TRASH", "KEY", "LOCK", "UNLOCK", "CLOUD", "SUNSHINE", "PLUS", "MINUS", "TEXTFIELD", "METER", "CAR", "CHART", "WRENCH", "CALCULATOR", "CREDIT_CARD", "PAINTBRUSH", "ROLLER", "MOBILE", "FLAG", "DOOR_OPEN", "DOOR_SHUT", "BED", "SHOWER", "SMOKE_ALARM", "LIGHT_BULB", "SMILEY_HAPPY", "SMILEY_SAD"])
108
+ return false unless image_validator.valid?(@image)
109
+ return true
110
+ end
111
+
112
+ # Custom attribute writer method checking allowed values (enum).
113
+ # @param [Object] image Object to be assigned
114
+ def image=(image)
115
+ validator = EnumAttributeValidator.new('String', ["UNDEFINED", "STAR_FULL", "STAR_HALF", "STAR_EMPTY", "TICK_ROUND", "CLEAN", "SCRATCHES", "SPLAT", "BROKEN", "TICK", "CROSS", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "DIGIT_0", "DIGIT_1", "DIGIT_2", "DIGIT_3", "DIGIT_4", "DIGIT_5", "DIGIT_6", "DIGIT_7", "DIGIT_8", "DIGIT_9", "EXCLAMATION", "QUESTION", "EXCLAMATION_QUESTION", "DOUBLE_EXCLAMATION", "DOLLAR", "POUND", "CENTS", "THUMBS_UP", "THUMBS_DOWN", "AWARD", "FEMALE", "MALE", "CALENDAR", "BUILDINGS", "BUILDING", "HOUSE", "NO_ENTRY", "DOG", "CAT", "RAT", "CIGARETTE", "NO_SMOKING", "POOP", "WEED", "GUN", "BROKEN_GLASS", "CRACKED", "DEAD_FACE", "HANDICAP", "BROKEN_HEART", "HEART", "SYRINGE", "CLOCK", "MUSIC_NOTE", "PLANT", "NOSE", "DROPLET", "ELECTRIC", "BUG", "ARROW_RIGHT", "ARROW_LEFT", "ARROW_UP", "ARROW_DOWN", "RECYCLE", "TRASH", "KEY", "LOCK", "UNLOCK", "CLOUD", "SUNSHINE", "PLUS", "MINUS", "TEXTFIELD", "METER", "CAR", "CHART", "WRENCH", "CALCULATOR", "CREDIT_CARD", "PAINTBRUSH", "ROLLER", "MOBILE", "FLAG", "DOOR_OPEN", "DOOR_SHUT", "BED", "SHOWER", "SMOKE_ALARM", "LIGHT_BULB", "SMILEY_HAPPY", "SMILEY_SAD"])
116
+ unless validator.valid?(image)
117
+ fail ArgumentError, "invalid value for 'image', must be one of #{validator.allowable_values}."
118
+ end
119
+ @image = image
120
+ end
121
+
122
+ # Checks equality by comparing each attribute.
123
+ # @param [Object] Object to be compared
124
+ def ==(o)
125
+ return true if self.equal?(o)
126
+ self.class == o.class &&
127
+ value == o.value &&
128
+ score == o.score &&
129
+ color == o.color &&
130
+ image == o.image
131
+ end
132
+
133
+ # @see the `==` method
134
+ # @param [Object] Object to be compared
135
+ def eql?(o)
136
+ self == o
137
+ end
138
+
139
+ # Calculates hash code according to all attributes.
140
+ # @return [Fixnum] Hash code
141
+ def hash
142
+ [value, score, color, image].hash
143
+ end
144
+
145
+ # Builds the object from hash
146
+ # @param [Hash] attributes Model attributes in the form of hash
147
+ # @return [Object] Returns the model itself
148
+ def build_from_hash(attributes)
149
+ return nil unless attributes.is_a?(Hash)
150
+ self.class.swagger_types.each_pair do |key, type|
151
+ if type =~ /\AArray<(.*)>/i
152
+ # check to ensure the input is an array given that the the attribute
153
+ # is documented as an array but the input is not
154
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
155
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
156
+ end
157
+ elsif !attributes[self.class.attribute_map[key]].nil?
158
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
159
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
160
+ end
161
+
162
+ self
163
+ end
164
+
165
+ # Deserializes the data based on type
166
+ # @param string type Data type
167
+ # @param string value Value to be deserialized
168
+ # @return [Object] Deserialized data
169
+ def _deserialize(type, value)
170
+ case type.to_sym
171
+ when :DateTime
172
+ DateTime.parse(value)
173
+ when :Date
174
+ Date.parse(value)
175
+ when :String
176
+ value.to_s
177
+ when :Integer
178
+ value.to_i
179
+ when :Float
180
+ value.to_f
181
+ when :BOOLEAN
182
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
183
+ true
184
+ else
185
+ false
186
+ end
187
+ when :Object
188
+ # generic object (usually a Hash), return directly
189
+ value
190
+ when /\AArray<(?<inner_type>.+)>\z/
191
+ inner_type = Regexp.last_match[:inner_type]
192
+ value.map { |v| _deserialize(inner_type, v) }
193
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
194
+ k_type = Regexp.last_match[:k_type]
195
+ v_type = Regexp.last_match[:v_type]
196
+ {}.tap do |hash|
197
+ value.each do |k, v|
198
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
199
+ end
200
+ end
201
+ else # model
202
+ temp_model = HappyCo.const_get(type).new
203
+ temp_model.build_from_hash(value)
204
+ end
205
+ end
206
+
207
+ # Returns the string representation of the object
208
+ # @return [String] String presentation of the object
209
+ def to_s
210
+ to_hash.to_s
211
+ end
212
+
213
+ # to_body is an alias to to_hash (backward compatibility)
214
+ # @return [Hash] Returns the object in the form of hash
215
+ def to_body
216
+ to_hash
217
+ end
218
+
219
+ # Returns the object in the form of hash
220
+ # @return [Hash] Returns the object in the form of hash
221
+ def to_hash
222
+ hash = {}
223
+ self.class.attribute_map.each_pair do |attr, param|
224
+ value = self.send(attr)
225
+ next if value.nil?
226
+ hash[param] = _to_hash(value)
227
+ end
228
+ hash
229
+ end
230
+
231
+ # Outputs non-array value in the form of hash
232
+ # For object, use to_hash. Otherwise, just return the value
233
+ # @param [Object] value Any valid value
234
+ # @return [Hash] Returns the value in the form of hash
235
+ def _to_hash(value)
236
+ if value.is_a?(Array)
237
+ value.compact.map{ |v| _to_hash(v) }
238
+ elsif value.is_a?(Hash)
239
+ {}.tap do |hash|
240
+ value.each { |k, v| hash[k] = _to_hash(v) }
241
+ end
242
+ elsif value.respond_to? :to_hash
243
+ value.to_hash
244
+ else
245
+ value
246
+ end
247
+ end
248
+
249
+ end
250
+
251
+ end
@@ -0,0 +1,196 @@
1
+ =begin
2
+ #Merged swaggers
3
+
4
+ #All happy services merged together
5
+
6
+ OpenAPI spec version: 0.0.1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+
10
+ =end
11
+
12
+ require 'date'
13
+
14
+ module HappyCo
15
+
16
+ class V1RatingValues
17
+ attr_accessor :scalar
18
+
19
+ attr_accessor :array
20
+
21
+
22
+ # Attribute mapping from ruby-style variable name to JSON key.
23
+ def self.attribute_map
24
+ {
25
+ :'scalar' => :'scalar',
26
+ :'array' => :'array'
27
+ }
28
+ end
29
+
30
+ # Attribute type mapping.
31
+ def self.swagger_types
32
+ {
33
+ :'scalar' => :'String',
34
+ :'array' => :'V1StringArray'
35
+ }
36
+ end
37
+
38
+ # Initializes the object
39
+ # @param [Hash] attributes Model attributes in the form of hash
40
+ def initialize(attributes = {})
41
+ return unless attributes.is_a?(Hash)
42
+
43
+ # convert string to symbol for hash key
44
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
45
+
46
+ if attributes.has_key?(:'scalar')
47
+ self.scalar = attributes[:'scalar']
48
+ end
49
+
50
+ if attributes.has_key?(:'array')
51
+ self.array = attributes[:'array']
52
+ end
53
+
54
+ end
55
+
56
+ # Show invalid properties with the reasons. Usually used together with valid?
57
+ # @return Array for valid properies with the reasons
58
+ def list_invalid_properties
59
+ invalid_properties = Array.new
60
+ return invalid_properties
61
+ end
62
+
63
+ # Check to see if the all the properties in the model are valid
64
+ # @return true if the model is valid
65
+ def valid?
66
+ return true
67
+ end
68
+
69
+ # Checks equality by comparing each attribute.
70
+ # @param [Object] Object to be compared
71
+ def ==(o)
72
+ return true if self.equal?(o)
73
+ self.class == o.class &&
74
+ scalar == o.scalar &&
75
+ array == o.array
76
+ end
77
+
78
+ # @see the `==` method
79
+ # @param [Object] Object to be compared
80
+ def eql?(o)
81
+ self == o
82
+ end
83
+
84
+ # Calculates hash code according to all attributes.
85
+ # @return [Fixnum] Hash code
86
+ def hash
87
+ [scalar, array].hash
88
+ end
89
+
90
+ # Builds the object from hash
91
+ # @param [Hash] attributes Model attributes in the form of hash
92
+ # @return [Object] Returns the model itself
93
+ def build_from_hash(attributes)
94
+ return nil unless attributes.is_a?(Hash)
95
+ self.class.swagger_types.each_pair do |key, type|
96
+ if type =~ /\AArray<(.*)>/i
97
+ # check to ensure the input is an array given that the the attribute
98
+ # is documented as an array but the input is not
99
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
100
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
101
+ end
102
+ elsif !attributes[self.class.attribute_map[key]].nil?
103
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
104
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
105
+ end
106
+
107
+ self
108
+ end
109
+
110
+ # Deserializes the data based on type
111
+ # @param string type Data type
112
+ # @param string value Value to be deserialized
113
+ # @return [Object] Deserialized data
114
+ def _deserialize(type, value)
115
+ case type.to_sym
116
+ when :DateTime
117
+ DateTime.parse(value)
118
+ when :Date
119
+ Date.parse(value)
120
+ when :String
121
+ value.to_s
122
+ when :Integer
123
+ value.to_i
124
+ when :Float
125
+ value.to_f
126
+ when :BOOLEAN
127
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
128
+ true
129
+ else
130
+ false
131
+ end
132
+ when :Object
133
+ # generic object (usually a Hash), return directly
134
+ value
135
+ when /\AArray<(?<inner_type>.+)>\z/
136
+ inner_type = Regexp.last_match[:inner_type]
137
+ value.map { |v| _deserialize(inner_type, v) }
138
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
139
+ k_type = Regexp.last_match[:k_type]
140
+ v_type = Regexp.last_match[:v_type]
141
+ {}.tap do |hash|
142
+ value.each do |k, v|
143
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
144
+ end
145
+ end
146
+ else # model
147
+ temp_model = HappyCo.const_get(type).new
148
+ temp_model.build_from_hash(value)
149
+ end
150
+ end
151
+
152
+ # Returns the string representation of the object
153
+ # @return [String] String presentation of the object
154
+ def to_s
155
+ to_hash.to_s
156
+ end
157
+
158
+ # to_body is an alias to to_hash (backward compatibility)
159
+ # @return [Hash] Returns the object in the form of hash
160
+ def to_body
161
+ to_hash
162
+ end
163
+
164
+ # Returns the object in the form of hash
165
+ # @return [Hash] Returns the object in the form of hash
166
+ def to_hash
167
+ hash = {}
168
+ self.class.attribute_map.each_pair do |attr, param|
169
+ value = self.send(attr)
170
+ next if value.nil?
171
+ hash[param] = _to_hash(value)
172
+ end
173
+ hash
174
+ end
175
+
176
+ # Outputs non-array value in the form of hash
177
+ # For object, use to_hash. Otherwise, just return the value
178
+ # @param [Object] value Any valid value
179
+ # @return [Hash] Returns the value in the form of hash
180
+ def _to_hash(value)
181
+ if value.is_a?(Array)
182
+ value.compact.map{ |v| _to_hash(v) }
183
+ elsif value.is_a?(Hash)
184
+ {}.tap do |hash|
185
+ value.each { |k, v| hash[k] = _to_hash(v) }
186
+ end
187
+ elsif value.respond_to? :to_hash
188
+ value.to_hash
189
+ else
190
+ value
191
+ end
192
+ end
193
+
194
+ end
195
+
196
+ end
@@ -0,0 +1,223 @@
1
+ =begin
2
+ #Merged swaggers
3
+
4
+ #All happy services merged together
5
+
6
+ OpenAPI spec version: 0.0.1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+
10
+ =end
11
+
12
+ require 'date'
13
+
14
+ module HappyCo
15
+ # * Scheduled inspection is the message type for inspection status scheduled. It can include a specific scheduled date for the inspection and overrides for header and footer fields when the inspection status transitions to in_progress.
16
+ class V1ScheduledInspection
17
+ # * Schedule date is an optional field that contians the expected start time or due date of the inspection.
18
+ attr_accessor :schedule_date
19
+
20
+ # * Header notes is an optional override that will be used instead of the header fields defined by the template.
21
+ attr_accessor :header_fields
22
+
23
+ # * Footer notes is an optional override that will be used instead of the footer fields defined by the template.
24
+ attr_accessor :footer_fields
25
+
26
+ attr_accessor :sections
27
+
28
+
29
+ # Attribute mapping from ruby-style variable name to JSON key.
30
+ def self.attribute_map
31
+ {
32
+ :'schedule_date' => :'schedule_date',
33
+ :'header_fields' => :'header_fields',
34
+ :'footer_fields' => :'footer_fields',
35
+ :'sections' => :'sections'
36
+ }
37
+ end
38
+
39
+ # Attribute type mapping.
40
+ def self.swagger_types
41
+ {
42
+ :'schedule_date' => :'V1DateTime',
43
+ :'header_fields' => :'Array<V1HeaderField>',
44
+ :'footer_fields' => :'Array<V1FooterField>',
45
+ :'sections' => :'Array<V1Section>'
46
+ }
47
+ end
48
+
49
+ # Initializes the object
50
+ # @param [Hash] attributes Model attributes in the form of hash
51
+ def initialize(attributes = {})
52
+ return unless attributes.is_a?(Hash)
53
+
54
+ # convert string to symbol for hash key
55
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
56
+
57
+ if attributes.has_key?(:'schedule_date')
58
+ self.schedule_date = attributes[:'schedule_date']
59
+ end
60
+
61
+ if attributes.has_key?(:'header_fields')
62
+ if (value = attributes[:'header_fields']).is_a?(Array)
63
+ self.header_fields = value
64
+ end
65
+ end
66
+
67
+ if attributes.has_key?(:'footer_fields')
68
+ if (value = attributes[:'footer_fields']).is_a?(Array)
69
+ self.footer_fields = value
70
+ end
71
+ end
72
+
73
+ if attributes.has_key?(:'sections')
74
+ if (value = attributes[:'sections']).is_a?(Array)
75
+ self.sections = value
76
+ end
77
+ end
78
+
79
+ end
80
+
81
+ # Show invalid properties with the reasons. Usually used together with valid?
82
+ # @return Array for valid properies with the reasons
83
+ def list_invalid_properties
84
+ invalid_properties = Array.new
85
+ return invalid_properties
86
+ end
87
+
88
+ # Check to see if the all the properties in the model are valid
89
+ # @return true if the model is valid
90
+ def valid?
91
+ return true
92
+ end
93
+
94
+ # Checks equality by comparing each attribute.
95
+ # @param [Object] Object to be compared
96
+ def ==(o)
97
+ return true if self.equal?(o)
98
+ self.class == o.class &&
99
+ schedule_date == o.schedule_date &&
100
+ header_fields == o.header_fields &&
101
+ footer_fields == o.footer_fields &&
102
+ sections == o.sections
103
+ end
104
+
105
+ # @see the `==` method
106
+ # @param [Object] Object to be compared
107
+ def eql?(o)
108
+ self == o
109
+ end
110
+
111
+ # Calculates hash code according to all attributes.
112
+ # @return [Fixnum] Hash code
113
+ def hash
114
+ [schedule_date, header_fields, footer_fields, sections].hash
115
+ end
116
+
117
+ # Builds the object from hash
118
+ # @param [Hash] attributes Model attributes in the form of hash
119
+ # @return [Object] Returns the model itself
120
+ def build_from_hash(attributes)
121
+ return nil unless attributes.is_a?(Hash)
122
+ self.class.swagger_types.each_pair do |key, type|
123
+ if type =~ /\AArray<(.*)>/i
124
+ # check to ensure the input is an array given that the the attribute
125
+ # is documented as an array but the input is not
126
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
127
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
128
+ end
129
+ elsif !attributes[self.class.attribute_map[key]].nil?
130
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
131
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
132
+ end
133
+
134
+ self
135
+ end
136
+
137
+ # Deserializes the data based on type
138
+ # @param string type Data type
139
+ # @param string value Value to be deserialized
140
+ # @return [Object] Deserialized data
141
+ def _deserialize(type, value)
142
+ case type.to_sym
143
+ when :DateTime
144
+ DateTime.parse(value)
145
+ when :Date
146
+ Date.parse(value)
147
+ when :String
148
+ value.to_s
149
+ when :Integer
150
+ value.to_i
151
+ when :Float
152
+ value.to_f
153
+ when :BOOLEAN
154
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
155
+ true
156
+ else
157
+ false
158
+ end
159
+ when :Object
160
+ # generic object (usually a Hash), return directly
161
+ value
162
+ when /\AArray<(?<inner_type>.+)>\z/
163
+ inner_type = Regexp.last_match[:inner_type]
164
+ value.map { |v| _deserialize(inner_type, v) }
165
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
166
+ k_type = Regexp.last_match[:k_type]
167
+ v_type = Regexp.last_match[:v_type]
168
+ {}.tap do |hash|
169
+ value.each do |k, v|
170
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
171
+ end
172
+ end
173
+ else # model
174
+ temp_model = HappyCo.const_get(type).new
175
+ temp_model.build_from_hash(value)
176
+ end
177
+ end
178
+
179
+ # Returns the string representation of the object
180
+ # @return [String] String presentation of the object
181
+ def to_s
182
+ to_hash.to_s
183
+ end
184
+
185
+ # to_body is an alias to to_hash (backward compatibility)
186
+ # @return [Hash] Returns the object in the form of hash
187
+ def to_body
188
+ to_hash
189
+ end
190
+
191
+ # Returns the object in the form of hash
192
+ # @return [Hash] Returns the object in the form of hash
193
+ def to_hash
194
+ hash = {}
195
+ self.class.attribute_map.each_pair do |attr, param|
196
+ value = self.send(attr)
197
+ next if value.nil?
198
+ hash[param] = _to_hash(value)
199
+ end
200
+ hash
201
+ end
202
+
203
+ # Outputs non-array value in the form of hash
204
+ # For object, use to_hash. Otherwise, just return the value
205
+ # @param [Object] value Any valid value
206
+ # @return [Hash] Returns the value in the form of hash
207
+ def _to_hash(value)
208
+ if value.is_a?(Array)
209
+ value.compact.map{ |v| _to_hash(v) }
210
+ elsif value.is_a?(Hash)
211
+ {}.tap do |hash|
212
+ value.each { |k, v| hash[k] = _to_hash(v) }
213
+ end
214
+ elsif value.respond_to? :to_hash
215
+ value.to_hash
216
+ else
217
+ value
218
+ end
219
+ end
220
+
221
+ end
222
+
223
+ end