flat_api 0.1.2 → 0.3.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (409) hide show
  1. checksums.yaml +5 -5
  2. data/lib/flat_api/api/account_api.rb +31 -21
  3. data/lib/flat_api/api/class_api.rb +1405 -405
  4. data/lib/flat_api/api/collection_api.rb +684 -0
  5. data/lib/flat_api/api/edu_resources_api.rb +851 -0
  6. data/lib/flat_api/api/group_api.rb +81 -55
  7. data/lib/flat_api/api/organization_api.rb +524 -180
  8. data/lib/flat_api/api/score_api.rb +1034 -570
  9. data/lib/flat_api/api/task_api.rb +85 -0
  10. data/lib/flat_api/api/user_api.rb +114 -76
  11. data/lib/flat_api/api_client.rb +112 -107
  12. data/lib/flat_api/api_error.rb +24 -4
  13. data/lib/flat_api/configuration.rb +105 -16
  14. data/lib/flat_api/models/api_access_token.rb +268 -0
  15. data/lib/flat_api/models/app_scopes.rb +59 -0
  16. data/lib/flat_api/models/assignment.rb +192 -101
  17. data/lib/flat_api/models/assignment_capabilities.rb +283 -0
  18. data/lib/flat_api/models/assignment_capabilities_can_publish_in_class_error.rb +240 -0
  19. data/lib/flat_api/models/assignment_copy.rb +80 -169
  20. data/lib/flat_api/models/assignment_copy_response.rb +430 -0
  21. data/lib/flat_api/models/assignment_copy_to_class.rb +243 -0
  22. data/lib/flat_api/models/assignment_copy_to_resource_library.rb +233 -0
  23. data/lib/flat_api/models/assignment_submission.rb +249 -66
  24. data/lib/flat_api/models/assignment_submission_comment.rb +276 -0
  25. data/lib/flat_api/models/assignment_submission_comment_creation.rb +223 -0
  26. data/lib/flat_api/models/assignment_submission_comments.rb +225 -0
  27. data/lib/flat_api/models/assignment_submission_history.rb +384 -0
  28. data/lib/flat_api/models/assignment_submission_history_attachment.rb +235 -0
  29. data/lib/flat_api/models/assignment_submission_history_state.rb +43 -0
  30. data/lib/flat_api/models/assignment_submission_lti.rb +222 -0
  31. data/lib/flat_api/models/assignment_submission_playback_inner.rb +240 -0
  32. data/lib/flat_api/models/assignment_submission_state.rb +42 -0
  33. data/lib/flat_api/models/assignment_submission_update.rb +150 -50
  34. data/lib/flat_api/models/assignment_type.rb +44 -0
  35. data/lib/flat_api/models/assignment_update.rb +407 -0
  36. data/lib/flat_api/models/class_assignment.rb +613 -0
  37. data/lib/flat_api/models/class_assignment_all_of_canvas.rb +226 -0
  38. data/lib/flat_api/models/class_assignment_all_of_lti.rb +216 -0
  39. data/lib/flat_api/models/class_assignment_all_of_mfc.rb +226 -0
  40. data/lib/flat_api/models/class_assignment_update.rb +509 -0
  41. data/lib/flat_api/models/class_assignment_update_all_of_google_classroom.rb +217 -0
  42. data/lib/flat_api/models/class_assignment_update_all_of_microsoft_graph.rb +219 -0
  43. data/lib/flat_api/models/class_attachment_creation.rb +110 -41
  44. data/lib/flat_api/models/class_creation.rb +144 -43
  45. data/lib/flat_api/models/class_details.rb +175 -60
  46. data/lib/flat_api/models/class_details_canvas.rb +61 -34
  47. data/lib/flat_api/models/class_details_clever.rb +76 -48
  48. data/lib/flat_api/models/class_details_google_classroom.rb +66 -59
  49. data/lib/flat_api/models/class_details_google_drive.rb +63 -36
  50. data/lib/flat_api/models/class_details_issues.rb +218 -0
  51. data/lib/flat_api/models/class_details_issues_sync_inner.rb +270 -0
  52. data/lib/flat_api/models/class_details_lti.rb +65 -38
  53. data/lib/flat_api/models/class_details_mfc.rb +226 -0
  54. data/lib/flat_api/models/class_details_microsoft_graph.rb +215 -0
  55. data/lib/flat_api/models/class_grade_level.rb +43 -0
  56. data/lib/flat_api/models/class_roles.rb +18 -9
  57. data/lib/flat_api/models/class_state.rb +18 -9
  58. data/lib/flat_api/models/class_update.rb +144 -42
  59. data/lib/flat_api/models/collection.rb +373 -0
  60. data/lib/flat_api/models/collection_app.rb +236 -0
  61. data/lib/flat_api/models/collection_capabilities.rb +291 -0
  62. data/lib/flat_api/models/collection_creation.rb +288 -0
  63. data/lib/flat_api/models/collection_modification.rb +275 -0
  64. data/lib/flat_api/models/collection_privacy.rb +39 -0
  65. data/lib/flat_api/models/collection_type.rb +44 -0
  66. data/lib/flat_api/models/edu_library.rb +292 -0
  67. data/lib/flat_api/models/edu_resource.rb +366 -0
  68. data/lib/flat_api/models/edu_resource_capabilities.rb +236 -0
  69. data/lib/flat_api/models/edu_resource_copy.rb +223 -0
  70. data/lib/flat_api/models/edu_resource_creation.rb +301 -0
  71. data/lib/flat_api/models/edu_resource_folder.rb +216 -0
  72. data/lib/flat_api/models/edu_resource_lti_link.rb +223 -0
  73. data/lib/flat_api/models/edu_resource_move.rb +223 -0
  74. data/lib/flat_api/models/edu_resource_privacy.rb +41 -0
  75. data/lib/flat_api/models/edu_resource_resource.rb +105 -0
  76. data/lib/flat_api/models/edu_resource_type.rb +40 -0
  77. data/lib/flat_api/models/edu_resource_update.rb +277 -0
  78. data/lib/flat_api/models/edu_resource_use_in_class.rb +233 -0
  79. data/lib/flat_api/models/flat_error_response.rb +79 -38
  80. data/lib/flat_api/models/flat_locales.rb +30 -10
  81. data/lib/flat_api/models/google_classroom_coursework.rb +76 -38
  82. data/lib/flat_api/models/google_classroom_submission.rb +84 -36
  83. data/lib/flat_api/models/group.rb +72 -44
  84. data/lib/flat_api/models/group_details.rb +92 -43
  85. data/lib/flat_api/models/group_type.rb +18 -9
  86. data/lib/flat_api/models/license_mode.rb +18 -9
  87. data/lib/flat_api/models/license_sources.rb +21 -9
  88. data/lib/flat_api/models/lms_name.rb +19 -9
  89. data/lib/flat_api/models/lti_credentials.rb +95 -46
  90. data/lib/flat_api/models/lti_credentials_creation.rb +91 -38
  91. data/lib/flat_api/models/media_attachment.rb +167 -70
  92. data/lib/flat_api/models/media_score_sharing_mode.rb +19 -9
  93. data/lib/flat_api/models/microsoft_graph_assignment.rb +248 -0
  94. data/lib/flat_api/models/microsoft_graph_submission.rb +240 -0
  95. data/lib/flat_api/models/organization_invitation.rb +139 -44
  96. data/lib/flat_api/models/organization_invitation_creation.rb +99 -35
  97. data/lib/flat_api/models/organization_roles.rb +18 -9
  98. data/lib/flat_api/models/organization_user_access_token_creation.rb +225 -0
  99. data/lib/flat_api/models/resource_collaborator.rb +403 -0
  100. data/lib/flat_api/models/{score_collaborator_creation.rb → resource_collaborator_creation.rb} +85 -48
  101. data/lib/flat_api/models/resource_rights.rb +318 -0
  102. data/lib/flat_api/models/score_comment.rb +93 -56
  103. data/lib/flat_api/models/score_comment_context.rb +103 -59
  104. data/lib/flat_api/models/score_comment_creation.rb +70 -41
  105. data/lib/flat_api/models/score_comment_moderation.rb +260 -0
  106. data/lib/flat_api/models/score_comment_update.rb +82 -49
  107. data/lib/flat_api/models/score_comments_counts.rb +67 -40
  108. data/lib/flat_api/models/score_creation.rb +81 -215
  109. data/lib/flat_api/models/score_creation_builder_data.rb +298 -0
  110. data/lib/flat_api/models/score_creation_builder_data_all_of_builder_data.rb +230 -0
  111. data/lib/flat_api/models/score_creation_builder_data_all_of_builder_data_layout_data.rb +322 -0
  112. data/lib/flat_api/models/score_creation_builder_data_all_of_builder_data_score_data.rb +274 -0
  113. data/lib/flat_api/models/score_creation_builder_data_all_of_builder_data_score_data_instruments.rb +269 -0
  114. data/lib/flat_api/models/score_creation_common.rb +268 -0
  115. data/lib/flat_api/models/score_creation_file_import.rb +324 -0
  116. data/lib/flat_api/models/score_creation_google_drive_import.rb +291 -0
  117. data/lib/flat_api/models/score_creation_type.rb +19 -9
  118. data/lib/flat_api/models/score_details.rb +274 -83
  119. data/lib/flat_api/models/score_fork.rb +94 -32
  120. data/lib/flat_api/models/score_license.rb +19 -9
  121. data/lib/flat_api/models/score_likes_counts.rb +83 -35
  122. data/lib/flat_api/models/score_modification.rb +175 -52
  123. data/lib/flat_api/models/score_plays_counts.rb +236 -0
  124. data/lib/flat_api/models/score_privacy.rb +18 -9
  125. data/lib/flat_api/models/score_revision.rb +80 -43
  126. data/lib/flat_api/models/score_revision_creation.rb +105 -40
  127. data/lib/flat_api/models/score_revision_statistics.rb +83 -36
  128. data/lib/flat_api/models/score_source.rb +61 -35
  129. data/lib/flat_api/models/score_summary.rb +124 -40
  130. data/lib/flat_api/models/score_track.rb +172 -51
  131. data/lib/flat_api/models/score_track_creation.rb +101 -39
  132. data/lib/flat_api/models/score_track_point.rb +70 -38
  133. data/lib/flat_api/models/score_track_purpose.rb +40 -0
  134. data/lib/flat_api/models/score_track_state.rb +18 -9
  135. data/lib/flat_api/models/score_track_type.rb +18 -9
  136. data/lib/flat_api/models/score_track_update.rb +88 -37
  137. data/lib/flat_api/models/score_views_counts.rb +62 -35
  138. data/lib/flat_api/models/task.rb +364 -0
  139. data/lib/flat_api/models/task_export_options.rb +218 -0
  140. data/lib/flat_api/models/task_progress.rb +226 -0
  141. data/lib/flat_api/models/task_result.rb +226 -0
  142. data/lib/flat_api/models/tutteo_product.rb +42 -0
  143. data/lib/flat_api/models/user_admin_update.rb +219 -41
  144. data/lib/flat_api/models/user_azure_details.rb +235 -0
  145. data/lib/flat_api/models/user_basics.rb +187 -55
  146. data/lib/flat_api/models/user_community_profile_links.rb +272 -0
  147. data/lib/flat_api/models/user_creation.rb +215 -49
  148. data/lib/flat_api/models/user_details.rb +258 -93
  149. data/lib/flat_api/models/user_details_admin.rb +220 -68
  150. data/lib/flat_api/models/user_details_admin_all_of_license.rb +278 -0
  151. data/lib/flat_api/models/user_public.rb +242 -79
  152. data/lib/flat_api/models/user_public_summary.rb +201 -61
  153. data/lib/flat_api/models/user_signin_link.rb +225 -0
  154. data/lib/flat_api/models/user_signin_link_creation.rb +217 -0
  155. data/lib/flat_api/version.rb +5 -5
  156. data/lib/flat_api.rb +87 -15
  157. data/spec/api/account_api_spec.rb +11 -10
  158. data/spec/api/class_api_spec.rb +212 -68
  159. data/spec/api/collection_api_spec.rb +158 -0
  160. data/spec/api/edu_resources_api_spec.rb +181 -0
  161. data/spec/api/group_api_spec.rb +14 -15
  162. data/spec/api/organization_api_spec.rb +78 -39
  163. data/spec/api/score_api_spec.rb +139 -110
  164. data/spec/api/task_api_spec.rb +47 -0
  165. data/spec/api/user_api_spec.rb +28 -26
  166. data/spec/models/api_access_token_spec.rb +66 -0
  167. data/spec/models/app_scopes_spec.rb +30 -0
  168. data/spec/models/assignment_capabilities_can_publish_in_class_error_spec.rb +42 -0
  169. data/spec/models/assignment_capabilities_spec.rb +60 -0
  170. data/spec/models/assignment_copy_response_spec.rb +124 -0
  171. data/spec/models/assignment_copy_spec.rb +13 -23
  172. data/spec/models/assignment_copy_to_class_spec.rb +48 -0
  173. data/spec/models/assignment_copy_to_resource_library_spec.rb +42 -0
  174. data/spec/models/assignment_spec.rb +51 -39
  175. data/spec/models/assignment_submission_comment_creation_spec.rb +36 -0
  176. data/spec/models/assignment_submission_comment_spec.rb +72 -0
  177. data/spec/models/assignment_submission_comments_spec.rb +42 -0
  178. data/spec/models/assignment_submission_history_attachment_spec.rb +48 -0
  179. data/spec/models/assignment_submission_history_spec.rb +112 -0
  180. data/spec/models/assignment_submission_history_state_spec.rb +30 -0
  181. data/spec/models/assignment_submission_lti_spec.rb +36 -0
  182. data/spec/models/assignment_submission_playback_inner_spec.rb +42 -0
  183. data/spec/models/assignment_submission_spec.rb +68 -32
  184. data/spec/models/assignment_submission_state_spec.rb +30 -0
  185. data/spec/models/assignment_submission_update_spec.rb +29 -23
  186. data/spec/models/assignment_type_spec.rb +30 -0
  187. data/spec/models/assignment_update_spec.rb +100 -0
  188. data/spec/models/class_assignment_all_of_canvas_spec.rb +42 -0
  189. data/spec/models/class_assignment_all_of_lti_spec.rb +36 -0
  190. data/spec/models/class_assignment_all_of_mfc_spec.rb +42 -0
  191. data/spec/models/class_assignment_spec.rb +216 -0
  192. data/spec/models/class_assignment_update_all_of_google_classroom_spec.rb +36 -0
  193. data/spec/models/class_assignment_update_all_of_microsoft_graph_spec.rb +36 -0
  194. data/spec/models/class_assignment_update_spec.rb +150 -0
  195. data/spec/models/class_attachment_creation_spec.rb +41 -23
  196. data/spec/models/class_creation_spec.rb +34 -18
  197. data/spec/models/class_details_canvas_spec.rb +12 -18
  198. data/spec/models/class_details_clever_spec.rb +21 -27
  199. data/spec/models/class_details_google_classroom_spec.rb +12 -30
  200. data/spec/models/class_details_google_drive_spec.rb +12 -18
  201. data/spec/models/class_details_issues_spec.rb +36 -0
  202. data/spec/models/class_details_issues_sync_inner_spec.rb +52 -0
  203. data/spec/models/class_details_lti_spec.rb +13 -19
  204. data/spec/models/class_details_mfc_spec.rb +42 -0
  205. data/spec/models/class_details_microsoft_graph_spec.rb +36 -0
  206. data/spec/models/class_details_spec.rb +68 -34
  207. data/spec/models/class_grade_level_spec.rb +30 -0
  208. data/spec/models/class_roles_spec.rb +10 -16
  209. data/spec/models/class_state_spec.rb +10 -16
  210. data/spec/models/class_update_spec.rb +34 -18
  211. data/spec/models/collection_app_spec.rb +48 -0
  212. data/spec/models/collection_capabilities_spec.rb +60 -0
  213. data/spec/models/collection_creation_spec.rb +42 -0
  214. data/spec/models/collection_modification_spec.rb +42 -0
  215. data/spec/models/collection_privacy_spec.rb +30 -0
  216. data/spec/models/collection_spec.rb +114 -0
  217. data/spec/models/collection_type_spec.rb +30 -0
  218. data/spec/models/edu_library_spec.rb +62 -0
  219. data/spec/models/edu_resource_capabilities_spec.rb +48 -0
  220. data/spec/models/edu_resource_copy_spec.rb +36 -0
  221. data/spec/models/edu_resource_creation_spec.rb +48 -0
  222. data/spec/models/edu_resource_folder_spec.rb +36 -0
  223. data/spec/models/edu_resource_lti_link_spec.rb +36 -0
  224. data/spec/models/edu_resource_move_spec.rb +36 -0
  225. data/spec/models/edu_resource_privacy_spec.rb +30 -0
  226. data/spec/models/edu_resource_resource_spec.rb +32 -0
  227. data/spec/models/edu_resource_spec.rb +96 -0
  228. data/spec/models/edu_resource_type_spec.rb +30 -0
  229. data/spec/models/edu_resource_update_spec.rb +42 -0
  230. data/spec/models/edu_resource_use_in_class_spec.rb +42 -0
  231. data/spec/models/flat_error_response_spec.rb +14 -20
  232. data/spec/models/flat_locales_spec.rb +10 -16
  233. data/spec/models/google_classroom_coursework_spec.rb +19 -19
  234. data/spec/models/google_classroom_submission_spec.rb +13 -19
  235. data/spec/models/group_details_spec.rb +17 -23
  236. data/spec/models/group_spec.rb +21 -27
  237. data/spec/models/group_type_spec.rb +10 -16
  238. data/spec/models/license_mode_spec.rb +10 -16
  239. data/spec/models/license_sources_spec.rb +10 -16
  240. data/spec/models/lms_name_spec.rb +10 -16
  241. data/spec/models/lti_credentials_creation_spec.rb +12 -18
  242. data/spec/models/lti_credentials_spec.rb +19 -25
  243. data/spec/models/media_attachment_spec.rb +67 -37
  244. data/spec/models/media_score_sharing_mode_spec.rb +10 -16
  245. data/spec/models/microsoft_graph_assignment_spec.rb +54 -0
  246. data/spec/models/microsoft_graph_submission_spec.rb +42 -0
  247. data/spec/models/organization_invitation_creation_spec.rb +16 -18
  248. data/spec/models/organization_invitation_spec.rb +29 -23
  249. data/spec/models/organization_roles_spec.rb +10 -16
  250. data/spec/models/organization_user_access_token_creation_spec.rb +36 -0
  251. data/spec/models/resource_collaborator_creation_spec.rb +72 -0
  252. data/spec/models/resource_collaborator_spec.rb +112 -0
  253. data/spec/models/resource_rights_spec.rb +64 -0
  254. data/spec/models/score_comment_context_spec.rb +23 -23
  255. data/spec/models/score_comment_creation_spec.rb +16 -22
  256. data/spec/models/score_comment_moderation_spec.rb +46 -0
  257. data/spec/models/score_comment_spec.rb +35 -35
  258. data/spec/models/score_comment_update_spec.rb +14 -20
  259. data/spec/models/score_comments_counts_spec.rb +14 -20
  260. data/spec/models/score_creation_builder_data_all_of_builder_data_layout_data_spec.rb +82 -0
  261. data/spec/models/score_creation_builder_data_all_of_builder_data_score_data_instruments_spec.rb +60 -0
  262. data/spec/models/score_creation_builder_data_all_of_builder_data_score_data_spec.rb +66 -0
  263. data/spec/models/score_creation_builder_data_all_of_builder_data_spec.rb +42 -0
  264. data/spec/models/score_creation_builder_data_spec.rb +60 -0
  265. data/spec/models/score_creation_common_spec.rb +54 -0
  266. data/spec/models/score_creation_file_import_spec.rb +76 -0
  267. data/spec/models/score_creation_google_drive_import_spec.rb +60 -0
  268. data/spec/models/score_creation_spec.rb +12 -52
  269. data/spec/models/score_creation_type_spec.rb +10 -16
  270. data/spec/models/score_details_spec.rb +75 -45
  271. data/spec/models/score_fork_spec.rb +27 -15
  272. data/spec/models/score_license_spec.rb +10 -16
  273. data/spec/models/score_likes_counts_spec.rb +13 -19
  274. data/spec/models/score_modification_spec.rb +51 -21
  275. data/spec/models/score_plays_counts_spec.rb +48 -0
  276. data/spec/models/score_privacy_spec.rb +10 -16
  277. data/spec/models/score_revision_creation_spec.rb +18 -20
  278. data/spec/models/score_revision_spec.rb +23 -23
  279. data/spec/models/score_revision_statistics_spec.rb +24 -18
  280. data/spec/models/score_source_spec.rb +11 -17
  281. data/spec/models/score_summary_spec.rb +16 -22
  282. data/spec/models/score_track_creation_spec.rb +21 -21
  283. data/spec/models/score_track_point_spec.rb +17 -23
  284. data/spec/models/score_track_purpose_spec.rb +30 -0
  285. data/spec/models/score_track_spec.rb +28 -28
  286. data/spec/models/score_track_state_spec.rb +10 -16
  287. data/spec/models/score_track_type_spec.rb +10 -16
  288. data/spec/models/score_track_update_spec.rb +14 -20
  289. data/spec/models/score_views_counts_spec.rb +13 -19
  290. data/spec/models/task_export_options_spec.rb +36 -0
  291. data/spec/models/task_progress_spec.rb +42 -0
  292. data/spec/models/task_result_spec.rb +42 -0
  293. data/spec/models/task_spec.rb +100 -0
  294. data/spec/models/tutteo_product_spec.rb +30 -0
  295. data/spec/models/user_admin_update_spec.rb +36 -18
  296. data/spec/models/user_azure_details_spec.rb +48 -0
  297. data/spec/models/user_basics_spec.rb +47 -25
  298. data/spec/models/user_community_profile_links_spec.rb +66 -0
  299. data/spec/models/user_creation_spec.rb +36 -20
  300. data/spec/models/user_details_admin_all_of_license_spec.rb +60 -0
  301. data/spec/models/user_details_admin_spec.rb +60 -32
  302. data/spec/models/user_details_spec.rb +93 -45
  303. data/spec/models/user_public_spec.rb +71 -37
  304. data/spec/models/user_public_summary_spec.rb +51 -29
  305. data/spec/models/user_signin_link_creation_spec.rb +36 -0
  306. data/spec/models/user_signin_link_spec.rb +42 -0
  307. data/spec/spec_helper.rb +4 -4
  308. metadata +299 -312
  309. data/CHANGELOG.md +0 -13
  310. data/Gemfile +0 -7
  311. data/README.md +0 -249
  312. data/Rakefile +0 -8
  313. data/docs/AccountApi.md +0 -55
  314. data/docs/Assignment.md +0 -18
  315. data/docs/AssignmentCopy.md +0 -8
  316. data/docs/AssignmentCreation.md +0 -12
  317. data/docs/AssignmentSubmission.md +0 -19
  318. data/docs/AssignmentSubmissionUpdate.md +0 -11
  319. data/docs/ClassApi.md +0 -1051
  320. data/docs/ClassAttachmentCreation.md +0 -10
  321. data/docs/ClassCreation.md +0 -9
  322. data/docs/ClassDetails.md +0 -25
  323. data/docs/ClassDetailsCanvas.md +0 -9
  324. data/docs/ClassDetailsClever.md +0 -14
  325. data/docs/ClassDetailsGoogleClassroom.md +0 -11
  326. data/docs/ClassDetailsGoogleDrive.md +0 -9
  327. data/docs/ClassDetailsLti.md +0 -10
  328. data/docs/ClassRoles.md +0 -7
  329. data/docs/ClassState.md +0 -7
  330. data/docs/ClassUpdate.md +0 -9
  331. data/docs/FlatErrorResponse.md +0 -11
  332. data/docs/FlatLocales.md +0 -7
  333. data/docs/GoogleClassroomCoursework.md +0 -10
  334. data/docs/GoogleClassroomSubmission.md +0 -10
  335. data/docs/Group.md +0 -14
  336. data/docs/GroupApi.md +0 -167
  337. data/docs/GroupDetails.md +0 -14
  338. data/docs/GroupType.md +0 -7
  339. data/docs/LicenseMode.md +0 -7
  340. data/docs/LicenseSources.md +0 -7
  341. data/docs/LmsName.md +0 -7
  342. data/docs/LtiCredentials.md +0 -16
  343. data/docs/LtiCredentialsCreation.md +0 -9
  344. data/docs/MediaAttachment.md +0 -23
  345. data/docs/MediaScoreSharingMode.md +0 -7
  346. data/docs/OrganizationApi.md +0 -538
  347. data/docs/OrganizationInvitation.md +0 -14
  348. data/docs/OrganizationInvitationCreation.md +0 -9
  349. data/docs/OrganizationRoles.md +0 -7
  350. data/docs/ScoreApi.md +0 -1605
  351. data/docs/ScoreCollaborator.md +0 -15
  352. data/docs/ScoreCollaboratorCreation.md +0 -13
  353. data/docs/ScoreComment.md +0 -22
  354. data/docs/ScoreCommentContext.md +0 -14
  355. data/docs/ScoreCommentCreation.md +0 -13
  356. data/docs/ScoreCommentUpdate.md +0 -11
  357. data/docs/ScoreCommentsCounts.md +0 -11
  358. data/docs/ScoreCreation.md +0 -13
  359. data/docs/ScoreCreationType.md +0 -7
  360. data/docs/ScoreData.md +0 -7
  361. data/docs/ScoreDataEncoding.md +0 -7
  362. data/docs/ScoreDetails.md +0 -36
  363. data/docs/ScoreFork.md +0 -7
  364. data/docs/ScoreLicense.md +0 -7
  365. data/docs/ScoreLikesCounts.md +0 -10
  366. data/docs/ScoreModification.md +0 -13
  367. data/docs/ScorePrivacy.md +0 -7
  368. data/docs/ScoreRevision.md +0 -14
  369. data/docs/ScoreRevisionCreation.md +0 -11
  370. data/docs/ScoreRevisionStatistics.md +0 -9
  371. data/docs/ScoreRights.md +0 -10
  372. data/docs/ScoreSource.md +0 -8
  373. data/docs/ScoreSummary.md +0 -13
  374. data/docs/ScoreTrack.md +0 -19
  375. data/docs/ScoreTrackCreation.md +0 -12
  376. data/docs/ScoreTrackPoint.md +0 -10
  377. data/docs/ScoreTrackState.md +0 -7
  378. data/docs/ScoreTrackType.md +0 -7
  379. data/docs/ScoreTrackUpdate.md +0 -11
  380. data/docs/ScoreViewsCounts.md +0 -10
  381. data/docs/UserAdminUpdate.md +0 -9
  382. data/docs/UserApi.md +0 -173
  383. data/docs/UserBasics.md +0 -13
  384. data/docs/UserCreation.md +0 -11
  385. data/docs/UserDetails.md +0 -28
  386. data/docs/UserDetailsAdmin.md +0 -20
  387. data/docs/UserDetailsAdminLicense.md +0 -12
  388. data/docs/UserInstruments.md +0 -7
  389. data/docs/UserPublic.md +0 -25
  390. data/docs/UserPublicSummary.md +0 -17
  391. data/flat_api.gemspec +0 -48
  392. data/git_push.sh +0 -55
  393. data/lib/flat_api/models/assignment_creation.rb +0 -230
  394. data/lib/flat_api/models/score_collaborator.rb +0 -263
  395. data/lib/flat_api/models/score_data.rb +0 -179
  396. data/lib/flat_api/models/score_data_encoding.rb +0 -30
  397. data/lib/flat_api/models/score_rights.rb +0 -215
  398. data/lib/flat_api/models/user_details_admin_license.rb +0 -227
  399. data/lib/flat_api/models/user_instruments.rb +0 -179
  400. data/spec/api_client_spec.rb +0 -226
  401. data/spec/configuration_spec.rb +0 -42
  402. data/spec/models/assignment_creation_spec.rb +0 -66
  403. data/spec/models/score_collaborator_creation_spec.rb +0 -72
  404. data/spec/models/score_collaborator_spec.rb +0 -84
  405. data/spec/models/score_data_encoding_spec.rb +0 -36
  406. data/spec/models/score_data_spec.rb +0 -36
  407. data/spec/models/score_rights_spec.rb +0 -48
  408. data/spec/models/user_details_admin_license_spec.rb +0 -66
  409. data/spec/models/user_instruments_spec.rb +0 -36
@@ -1,16 +1,17 @@
1
1
  =begin
2
2
  #Flat API
3
3
 
4
- #The Flat API allows you to easily extend the abilities of the [Flat Platform](https://flat.io), with a wide range of use cases including the following: * Creating and importing new music scores using MusicXML or MIDI files * Browsing, updating, copying, exporting the user's scores (for example in MP3, WAV or MIDI) * Managing educational resources with Flat for Education: creating & updating the organization accounts, the classes, rosters and assignments. The Flat API is built on HTTP. Our API is RESTful It has predictable resource URLs. It returns HTTP response codes to indicate errors. It also accepts and returns JSON in the HTTP body. The [schema](/swagger.yaml) of this API follows the [OpenAPI Initiative (OAI) specification](https://www.openapis.org/), you can use and work with [compatible Swagger tools](http://swagger.io/open-source-integrations/). This API features Cross-Origin Resource Sharing (CORS) implemented in compliance with [W3C spec](https://www.w3.org/TR/cors/). You can use your favorite HTTP/REST library for your programming language to use Flat's API. This specification and reference is [available on Github](https://github.com/FlatIO/api-reference). Getting Started and learn more: * [API Overview and interoduction](https://flat.io/developers/docs/api/) * [Authentication (Personal Access Tokens or OAuth2)](https://flat.io/developers/docs/api/authentication.html) * [SDKs](https://flat.io/developers/docs/api/sdks.html) * [Rate Limits](https://flat.io/developers/docs/api/rate-limits.html) * [Changelog](https://flat.io/developers/docs/api/changelog.html)
4
+ #The Flat API allows you to easily extend the abilities of the [Flat Platform](https://flat.io), with a wide range of use cases including the following: * Creating and importing new music scores using MusicXML, MIDI, Guitar Pro (GP3, GP4, GP5, GPX, GP), PowerTab, TuxGuitar and MuseScore files * Browsing, updating, copying, exporting the user's scores (for example in MP3, WAV or MIDI) * Managing educational resources with Flat for Education: creating & updating the organization accounts, the classes, rosters and assignments. The Flat API is built on HTTP. Our API is RESTful It has predictable resource URLs. It returns HTTP response codes to indicate errors. It also accepts and returns JSON in the HTTP body. The [schema](/swagger.yaml) of this API follows the [OpenAPI Initiative (OAI) specification](https://www.openapis.org/), you can use and work with [compatible Swagger tools](http://swagger.io/open-source-integrations/). This API features Cross-Origin Resource Sharing (CORS) implemented in compliance with [W3C spec](https://www.w3.org/TR/cors/). You can use your favorite HTTP/REST library for your programming language to use Flat's API. This specification and reference is [available on Github](https://github.com/FlatIO/api-reference). Getting Started and learn more: * [API Overview and introduction](https://flat.io/developers/docs/api/) * [Authentication (Personal Access Tokens or OAuth2)](https://flat.io/developers/docs/api/authentication.html) * [SDKs](https://flat.io/developers/docs/api/sdks.html) * [Rate Limits](https://flat.io/developers/docs/api/rate-limits.html) * [Changelog](https://flat.io/developers/docs/api/changelog.html)
5
5
 
6
- OpenAPI spec version: 2.5.2
6
+ The version of the OpenAPI document: 2.20.0
7
7
  Contact: developers@flat.io
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.0-SNAPSHOT
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 7.3.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module FlatApi
16
17
  # Comment added on a sheet music
@@ -56,6 +57,8 @@ module FlatApi
56
57
  # If the user is marked as resolved, this will contain the unique identifier of the User who marked this comment as resolved
57
58
  attr_accessor :resolved_by
58
59
 
60
+ attr_accessor :moderation
61
+
59
62
  # `true if the message has been detected as spam and hidden from other users
60
63
  attr_accessor :spam
61
64
 
@@ -98,12 +101,18 @@ module FlatApi
98
101
  :'mentions' => :'mentions',
99
102
  :'resolved' => :'resolved',
100
103
  :'resolved_by' => :'resolvedBy',
104
+ :'moderation' => :'moderation',
101
105
  :'spam' => :'spam'
102
106
  }
103
107
  end
104
108
 
109
+ # Returns all the JSON keys this model knows about
110
+ def self.acceptable_attributes
111
+ attribute_map.values
112
+ end
113
+
105
114
  # Attribute type mapping.
106
- def self.swagger_types
115
+ def self.openapi_types
107
116
  {
108
117
  :'id' => :'String',
109
118
  :'type' => :'String',
@@ -111,103 +120,122 @@ module FlatApi
111
120
  :'score' => :'String',
112
121
  :'revision' => :'String',
113
122
  :'reply_to' => :'String',
114
- :'date' => :'DateTime',
115
- :'modification_date' => :'DateTime',
123
+ :'date' => :'Time',
124
+ :'modification_date' => :'Time',
116
125
  :'comment' => :'String',
117
126
  :'raw_comment' => :'String',
118
127
  :'context' => :'ScoreCommentContext',
119
128
  :'mentions' => :'Array<String>',
120
- :'resolved' => :'BOOLEAN',
129
+ :'resolved' => :'Boolean',
121
130
  :'resolved_by' => :'String',
122
- :'spam' => :'BOOLEAN'
131
+ :'moderation' => :'ScoreCommentModeration',
132
+ :'spam' => :'Boolean'
123
133
  }
124
134
  end
125
135
 
136
+ # List of attributes with nullable: true
137
+ def self.openapi_nullable
138
+ Set.new([
139
+ ])
140
+ end
141
+
126
142
  # Initializes the object
127
143
  # @param [Hash] attributes Model attributes in the form of hash
128
144
  def initialize(attributes = {})
129
- return unless attributes.is_a?(Hash)
145
+ if (!attributes.is_a?(Hash))
146
+ fail ArgumentError, "The input argument (attributes) must be a hash in `FlatApi::ScoreComment` initialize method"
147
+ end
130
148
 
131
- # convert string to symbol for hash key
132
- attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
149
+ # check to see if the attribute exists and convert string to symbol for hash key
150
+ attributes = attributes.each_with_object({}) { |(k, v), h|
151
+ if (!self.class.attribute_map.key?(k.to_sym))
152
+ fail ArgumentError, "`#{k}` is not a valid attribute in `FlatApi::ScoreComment`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
153
+ end
154
+ h[k.to_sym] = v
155
+ }
133
156
 
134
- if attributes.has_key?(:'id')
157
+ if attributes.key?(:'id')
135
158
  self.id = attributes[:'id']
136
159
  end
137
160
 
138
- if attributes.has_key?(:'type')
161
+ if attributes.key?(:'type')
139
162
  self.type = attributes[:'type']
140
163
  end
141
164
 
142
- if attributes.has_key?(:'user')
165
+ if attributes.key?(:'user')
143
166
  self.user = attributes[:'user']
144
167
  end
145
168
 
146
- if attributes.has_key?(:'score')
169
+ if attributes.key?(:'score')
147
170
  self.score = attributes[:'score']
148
171
  end
149
172
 
150
- if attributes.has_key?(:'revision')
173
+ if attributes.key?(:'revision')
151
174
  self.revision = attributes[:'revision']
152
175
  end
153
176
 
154
- if attributes.has_key?(:'replyTo')
155
- self.reply_to = attributes[:'replyTo']
177
+ if attributes.key?(:'reply_to')
178
+ self.reply_to = attributes[:'reply_to']
156
179
  end
157
180
 
158
- if attributes.has_key?(:'date')
181
+ if attributes.key?(:'date')
159
182
  self.date = attributes[:'date']
160
183
  end
161
184
 
162
- if attributes.has_key?(:'modificationDate')
163
- self.modification_date = attributes[:'modificationDate']
185
+ if attributes.key?(:'modification_date')
186
+ self.modification_date = attributes[:'modification_date']
164
187
  end
165
188
 
166
- if attributes.has_key?(:'comment')
189
+ if attributes.key?(:'comment')
167
190
  self.comment = attributes[:'comment']
168
191
  end
169
192
 
170
- if attributes.has_key?(:'rawComment')
171
- self.raw_comment = attributes[:'rawComment']
193
+ if attributes.key?(:'raw_comment')
194
+ self.raw_comment = attributes[:'raw_comment']
172
195
  end
173
196
 
174
- if attributes.has_key?(:'context')
197
+ if attributes.key?(:'context')
175
198
  self.context = attributes[:'context']
176
199
  end
177
200
 
178
- if attributes.has_key?(:'mentions')
201
+ if attributes.key?(:'mentions')
179
202
  if (value = attributes[:'mentions']).is_a?(Array)
180
203
  self.mentions = value
181
204
  end
182
205
  end
183
206
 
184
- if attributes.has_key?(:'resolved')
207
+ if attributes.key?(:'resolved')
185
208
  self.resolved = attributes[:'resolved']
186
209
  end
187
210
 
188
- if attributes.has_key?(:'resolvedBy')
189
- self.resolved_by = attributes[:'resolvedBy']
211
+ if attributes.key?(:'resolved_by')
212
+ self.resolved_by = attributes[:'resolved_by']
190
213
  end
191
214
 
192
- if attributes.has_key?(:'spam')
193
- self.spam = attributes[:'spam']
215
+ if attributes.key?(:'moderation')
216
+ self.moderation = attributes[:'moderation']
194
217
  end
195
218
 
219
+ if attributes.key?(:'spam')
220
+ self.spam = attributes[:'spam']
221
+ end
196
222
  end
197
223
 
198
224
  # Show invalid properties with the reasons. Usually used together with valid?
199
225
  # @return Array for valid properties with the reasons
200
226
  def list_invalid_properties
227
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
201
228
  invalid_properties = Array.new
202
- return invalid_properties
229
+ invalid_properties
203
230
  end
204
231
 
205
232
  # Check to see if the all the properties in the model are valid
206
233
  # @return true if the model is valid
207
234
  def valid?
235
+ warn '[DEPRECATED] the `valid?` method is obsolete'
208
236
  type_validator = EnumAttributeValidator.new('String', ["document", "inline"])
209
237
  return false unless type_validator.valid?(@type)
210
- return true
238
+ true
211
239
  end
212
240
 
213
241
  # Custom attribute writer method checking allowed values (enum).
@@ -215,7 +243,7 @@ module FlatApi
215
243
  def type=(type)
216
244
  validator = EnumAttributeValidator.new('String', ["document", "inline"])
217
245
  unless validator.valid?(type)
218
- fail ArgumentError, "invalid value for 'type', must be one of #{validator.allowable_values}."
246
+ fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
219
247
  end
220
248
  @type = type
221
249
  end
@@ -239,6 +267,7 @@ module FlatApi
239
267
  mentions == o.mentions &&
240
268
  resolved == o.resolved &&
241
269
  resolved_by == o.resolved_by &&
270
+ moderation == o.moderation &&
242
271
  spam == o.spam
243
272
  end
244
273
 
@@ -249,39 +278,42 @@ module FlatApi
249
278
  end
250
279
 
251
280
  # Calculates hash code according to all attributes.
252
- # @return [Fixnum] Hash code
281
+ # @return [Integer] Hash code
253
282
  def hash
254
- [id, type, user, score, revision, reply_to, date, modification_date, comment, raw_comment, context, mentions, resolved, resolved_by, spam].hash
283
+ [id, type, user, score, revision, reply_to, date, modification_date, comment, raw_comment, context, mentions, resolved, resolved_by, moderation, spam].hash
255
284
  end
256
285
 
257
286
  # Builds the object from hash
258
287
  # @param [Hash] attributes Model attributes in the form of hash
259
288
  # @return [Object] Returns the model itself
260
- def build_from_hash(attributes)
289
+ def self.build_from_hash(attributes)
261
290
  return nil unless attributes.is_a?(Hash)
262
- self.class.swagger_types.each_pair do |key, type|
263
- if type =~ /\AArray<(.*)>/i
264
- # check to ensure the input is an array given that the the attribute
291
+ attributes = attributes.transform_keys(&:to_sym)
292
+ transformed_hash = {}
293
+ openapi_types.each_pair do |key, type|
294
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
295
+ transformed_hash["#{key}"] = nil
296
+ elsif type =~ /\AArray<(.*)>/i
297
+ # check to ensure the input is an array given that the attribute
265
298
  # is documented as an array but the input is not
266
- if attributes[self.class.attribute_map[key]].is_a?(Array)
267
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
299
+ if attributes[attribute_map[key]].is_a?(Array)
300
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
268
301
  end
269
- elsif !attributes[self.class.attribute_map[key]].nil?
270
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
271
- end # or else data not found in attributes(hash), not an issue as the data can be optional
302
+ elsif !attributes[attribute_map[key]].nil?
303
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
304
+ end
272
305
  end
273
-
274
- self
306
+ new(transformed_hash)
275
307
  end
276
308
 
277
309
  # Deserializes the data based on type
278
310
  # @param string type Data type
279
311
  # @param string value Value to be deserialized
280
312
  # @return [Object] Deserialized data
281
- def _deserialize(type, value)
313
+ def self._deserialize(type, value)
282
314
  case type.to_sym
283
- when :DateTime
284
- DateTime.parse(value)
315
+ when :Time
316
+ Time.parse(value)
285
317
  when :Date
286
318
  Date.parse(value)
287
319
  when :String
@@ -290,7 +322,7 @@ module FlatApi
290
322
  value.to_i
291
323
  when :Float
292
324
  value.to_f
293
- when :BOOLEAN
325
+ when :Boolean
294
326
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
295
327
  true
296
328
  else
@@ -311,8 +343,9 @@ module FlatApi
311
343
  end
312
344
  end
313
345
  else # model
314
- temp_model = FlatApi.const_get(type).new
315
- temp_model.build_from_hash(value)
346
+ # models (e.g. Pet) or oneOf
347
+ klass = FlatApi.const_get(type)
348
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
316
349
  end
317
350
  end
318
351
 
@@ -334,7 +367,11 @@ module FlatApi
334
367
  hash = {}
335
368
  self.class.attribute_map.each_pair do |attr, param|
336
369
  value = self.send(attr)
337
- next if value.nil?
370
+ if value.nil?
371
+ is_nullable = self.class.openapi_nullable.include?(attr)
372
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
373
+ end
374
+
338
375
  hash[param] = _to_hash(value)
339
376
  end
340
377
  hash
@@ -346,7 +383,7 @@ module FlatApi
346
383
  # @return [Hash] Returns the value in the form of hash
347
384
  def _to_hash(value)
348
385
  if value.is_a?(Array)
349
- value.compact.map{ |v| _to_hash(v) }
386
+ value.compact.map { |v| _to_hash(v) }
350
387
  elsif value.is_a?(Hash)
351
388
  {}.tap do |hash|
352
389
  value.each { |k, v| hash[k] = _to_hash(v) }
@@ -1,16 +1,17 @@
1
1
  =begin
2
2
  #Flat API
3
3
 
4
- #The Flat API allows you to easily extend the abilities of the [Flat Platform](https://flat.io), with a wide range of use cases including the following: * Creating and importing new music scores using MusicXML or MIDI files * Browsing, updating, copying, exporting the user's scores (for example in MP3, WAV or MIDI) * Managing educational resources with Flat for Education: creating & updating the organization accounts, the classes, rosters and assignments. The Flat API is built on HTTP. Our API is RESTful It has predictable resource URLs. It returns HTTP response codes to indicate errors. It also accepts and returns JSON in the HTTP body. The [schema](/swagger.yaml) of this API follows the [OpenAPI Initiative (OAI) specification](https://www.openapis.org/), you can use and work with [compatible Swagger tools](http://swagger.io/open-source-integrations/). This API features Cross-Origin Resource Sharing (CORS) implemented in compliance with [W3C spec](https://www.w3.org/TR/cors/). You can use your favorite HTTP/REST library for your programming language to use Flat's API. This specification and reference is [available on Github](https://github.com/FlatIO/api-reference). Getting Started and learn more: * [API Overview and interoduction](https://flat.io/developers/docs/api/) * [Authentication (Personal Access Tokens or OAuth2)](https://flat.io/developers/docs/api/authentication.html) * [SDKs](https://flat.io/developers/docs/api/sdks.html) * [Rate Limits](https://flat.io/developers/docs/api/rate-limits.html) * [Changelog](https://flat.io/developers/docs/api/changelog.html)
4
+ #The Flat API allows you to easily extend the abilities of the [Flat Platform](https://flat.io), with a wide range of use cases including the following: * Creating and importing new music scores using MusicXML, MIDI, Guitar Pro (GP3, GP4, GP5, GPX, GP), PowerTab, TuxGuitar and MuseScore files * Browsing, updating, copying, exporting the user's scores (for example in MP3, WAV or MIDI) * Managing educational resources with Flat for Education: creating & updating the organization accounts, the classes, rosters and assignments. The Flat API is built on HTTP. Our API is RESTful It has predictable resource URLs. It returns HTTP response codes to indicate errors. It also accepts and returns JSON in the HTTP body. The [schema](/swagger.yaml) of this API follows the [OpenAPI Initiative (OAI) specification](https://www.openapis.org/), you can use and work with [compatible Swagger tools](http://swagger.io/open-source-integrations/). This API features Cross-Origin Resource Sharing (CORS) implemented in compliance with [W3C spec](https://www.w3.org/TR/cors/). You can use your favorite HTTP/REST library for your programming language to use Flat's API. This specification and reference is [available on Github](https://github.com/FlatIO/api-reference). Getting Started and learn more: * [API Overview and introduction](https://flat.io/developers/docs/api/) * [Authentication (Personal Access Tokens or OAuth2)](https://flat.io/developers/docs/api/authentication.html) * [SDKs](https://flat.io/developers/docs/api/sdks.html) * [Rate Limits](https://flat.io/developers/docs/api/rate-limits.html) * [Changelog](https://flat.io/developers/docs/api/changelog.html)
5
5
 
6
- OpenAPI spec version: 2.5.2
6
+ The version of the OpenAPI document: 2.20.0
7
7
  Contact: developers@flat.io
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.0-SNAPSHOT
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 7.3.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module FlatApi
16
17
  # The context of the comment (for inline/contextualized comments). A context will include all the information related to the location of the comment (i.e. score parts, range of measure, time position).
@@ -18,9 +19,12 @@ module FlatApi
18
19
  # The unique identifier (UUID) of the score part
19
20
  attr_accessor :part_uuid
20
21
 
21
- # The identififer of the staff
22
+ # (Deprecated, use `staffUuid`) The identififer of the staff
22
23
  attr_accessor :staff_idx
23
24
 
25
+ # The unique identififer (UUID) of the staff
26
+ attr_accessor :staff_uuid
27
+
24
28
  # The list of measure UUIds
25
29
  attr_accessor :measure_uuids
26
30
 
@@ -32,12 +36,12 @@ module FlatApi
32
36
 
33
37
  attr_accessor :stop_dpq
34
38
 
35
-
36
39
  # Attribute mapping from ruby-style variable name to JSON key.
37
40
  def self.attribute_map
38
41
  {
39
42
  :'part_uuid' => :'partUuid',
40
43
  :'staff_idx' => :'staffIdx',
44
+ :'staff_uuid' => :'staffUuid',
41
45
  :'measure_uuids' => :'measureUuids',
42
46
  :'start_time_pos' => :'startTimePos',
43
47
  :'stop_time_pos' => :'stopTimePos',
@@ -46,11 +50,17 @@ module FlatApi
46
50
  }
47
51
  end
48
52
 
53
+ # Returns all the JSON keys this model knows about
54
+ def self.acceptable_attributes
55
+ attribute_map.values
56
+ end
57
+
49
58
  # Attribute type mapping.
50
- def self.swagger_types
59
+ def self.openapi_types
51
60
  {
52
61
  :'part_uuid' => :'String',
53
62
  :'staff_idx' => :'Float',
63
+ :'staff_uuid' => :'String',
54
64
  :'measure_uuids' => :'Array<String>',
55
65
  :'start_time_pos' => :'Float',
56
66
  :'stop_time_pos' => :'Float',
@@ -59,92 +69,117 @@ module FlatApi
59
69
  }
60
70
  end
61
71
 
72
+ # List of attributes with nullable: true
73
+ def self.openapi_nullable
74
+ Set.new([
75
+ ])
76
+ end
77
+
62
78
  # Initializes the object
63
79
  # @param [Hash] attributes Model attributes in the form of hash
64
80
  def initialize(attributes = {})
65
- return unless attributes.is_a?(Hash)
81
+ if (!attributes.is_a?(Hash))
82
+ fail ArgumentError, "The input argument (attributes) must be a hash in `FlatApi::ScoreCommentContext` initialize method"
83
+ end
84
+
85
+ # check to see if the attribute exists and convert string to symbol for hash key
86
+ attributes = attributes.each_with_object({}) { |(k, v), h|
87
+ if (!self.class.attribute_map.key?(k.to_sym))
88
+ fail ArgumentError, "`#{k}` is not a valid attribute in `FlatApi::ScoreCommentContext`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
89
+ end
90
+ h[k.to_sym] = v
91
+ }
66
92
 
67
- # convert string to symbol for hash key
68
- attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
93
+ if attributes.key?(:'part_uuid')
94
+ self.part_uuid = attributes[:'part_uuid']
95
+ else
96
+ self.part_uuid = nil
97
+ end
69
98
 
70
- if attributes.has_key?(:'partUuid')
71
- self.part_uuid = attributes[:'partUuid']
99
+ if attributes.key?(:'staff_idx')
100
+ self.staff_idx = attributes[:'staff_idx']
72
101
  end
73
102
 
74
- if attributes.has_key?(:'staffIdx')
75
- self.staff_idx = attributes[:'staffIdx']
103
+ if attributes.key?(:'staff_uuid')
104
+ self.staff_uuid = attributes[:'staff_uuid']
76
105
  end
77
106
 
78
- if attributes.has_key?(:'measureUuids')
79
- if (value = attributes[:'measureUuids']).is_a?(Array)
107
+ if attributes.key?(:'measure_uuids')
108
+ if (value = attributes[:'measure_uuids']).is_a?(Array)
80
109
  self.measure_uuids = value
81
110
  end
111
+ else
112
+ self.measure_uuids = nil
82
113
  end
83
114
 
84
- if attributes.has_key?(:'startTimePos')
85
- self.start_time_pos = attributes[:'startTimePos']
115
+ if attributes.key?(:'start_time_pos')
116
+ self.start_time_pos = attributes[:'start_time_pos']
117
+ else
118
+ self.start_time_pos = nil
86
119
  end
87
120
 
88
- if attributes.has_key?(:'stopTimePos')
89
- self.stop_time_pos = attributes[:'stopTimePos']
121
+ if attributes.key?(:'stop_time_pos')
122
+ self.stop_time_pos = attributes[:'stop_time_pos']
123
+ else
124
+ self.stop_time_pos = nil
90
125
  end
91
126
 
92
- if attributes.has_key?(:'startDpq')
93
- self.start_dpq = attributes[:'startDpq']
127
+ if attributes.key?(:'start_dpq')
128
+ self.start_dpq = attributes[:'start_dpq']
129
+ else
130
+ self.start_dpq = nil
94
131
  end
95
132
 
96
- if attributes.has_key?(:'stopDpq')
97
- self.stop_dpq = attributes[:'stopDpq']
133
+ if attributes.key?(:'stop_dpq')
134
+ self.stop_dpq = attributes[:'stop_dpq']
135
+ else
136
+ self.stop_dpq = nil
98
137
  end
99
-
100
138
  end
101
139
 
102
140
  # Show invalid properties with the reasons. Usually used together with valid?
103
141
  # @return Array for valid properties with the reasons
104
142
  def list_invalid_properties
143
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
105
144
  invalid_properties = Array.new
106
145
  if @part_uuid.nil?
107
- invalid_properties.push("invalid value for 'part_uuid', part_uuid cannot be nil.")
108
- end
109
-
110
- if @staff_idx.nil?
111
- invalid_properties.push("invalid value for 'staff_idx', staff_idx cannot be nil.")
146
+ invalid_properties.push('invalid value for "part_uuid", part_uuid cannot be nil.')
112
147
  end
113
148
 
114
149
  if @measure_uuids.nil?
115
- invalid_properties.push("invalid value for 'measure_uuids', measure_uuids cannot be nil.")
150
+ invalid_properties.push('invalid value for "measure_uuids", measure_uuids cannot be nil.')
116
151
  end
117
152
 
118
153
  if @start_time_pos.nil?
119
- invalid_properties.push("invalid value for 'start_time_pos', start_time_pos cannot be nil.")
154
+ invalid_properties.push('invalid value for "start_time_pos", start_time_pos cannot be nil.')
120
155
  end
121
156
 
122
157
  if @stop_time_pos.nil?
123
- invalid_properties.push("invalid value for 'stop_time_pos', stop_time_pos cannot be nil.")
158
+ invalid_properties.push('invalid value for "stop_time_pos", stop_time_pos cannot be nil.')
124
159
  end
125
160
 
126
161
  if @start_dpq.nil?
127
- invalid_properties.push("invalid value for 'start_dpq', start_dpq cannot be nil.")
162
+ invalid_properties.push('invalid value for "start_dpq", start_dpq cannot be nil.')
128
163
  end
129
164
 
130
165
  if @stop_dpq.nil?
131
- invalid_properties.push("invalid value for 'stop_dpq', stop_dpq cannot be nil.")
166
+ invalid_properties.push('invalid value for "stop_dpq", stop_dpq cannot be nil.')
132
167
  end
133
168
 
134
- return invalid_properties
169
+ invalid_properties
135
170
  end
136
171
 
137
172
  # Check to see if the all the properties in the model are valid
138
173
  # @return true if the model is valid
139
174
  def valid?
175
+ warn '[DEPRECATED] the `valid?` method is obsolete'
140
176
  return false if @part_uuid.nil?
141
- return false if @staff_idx.nil?
142
177
  return false if @measure_uuids.nil?
143
178
  return false if @start_time_pos.nil?
144
179
  return false if @stop_time_pos.nil?
145
180
  return false if @start_dpq.nil?
146
181
  return false if @stop_dpq.nil?
147
- return true
182
+ true
148
183
  end
149
184
 
150
185
  # Checks equality by comparing each attribute.
@@ -154,6 +189,7 @@ module FlatApi
154
189
  self.class == o.class &&
155
190
  part_uuid == o.part_uuid &&
156
191
  staff_idx == o.staff_idx &&
192
+ staff_uuid == o.staff_uuid &&
157
193
  measure_uuids == o.measure_uuids &&
158
194
  start_time_pos == o.start_time_pos &&
159
195
  stop_time_pos == o.stop_time_pos &&
@@ -168,39 +204,42 @@ module FlatApi
168
204
  end
169
205
 
170
206
  # Calculates hash code according to all attributes.
171
- # @return [Fixnum] Hash code
207
+ # @return [Integer] Hash code
172
208
  def hash
173
- [part_uuid, staff_idx, measure_uuids, start_time_pos, stop_time_pos, start_dpq, stop_dpq].hash
209
+ [part_uuid, staff_idx, staff_uuid, measure_uuids, start_time_pos, stop_time_pos, start_dpq, stop_dpq].hash
174
210
  end
175
211
 
176
212
  # Builds the object from hash
177
213
  # @param [Hash] attributes Model attributes in the form of hash
178
214
  # @return [Object] Returns the model itself
179
- def build_from_hash(attributes)
215
+ def self.build_from_hash(attributes)
180
216
  return nil unless attributes.is_a?(Hash)
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 the attribute
217
+ attributes = attributes.transform_keys(&:to_sym)
218
+ transformed_hash = {}
219
+ openapi_types.each_pair do |key, type|
220
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
221
+ transformed_hash["#{key}"] = nil
222
+ elsif type =~ /\AArray<(.*)>/i
223
+ # check to ensure the input is an array given that the attribute
184
224
  # 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) } )
225
+ if attributes[attribute_map[key]].is_a?(Array)
226
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
187
227
  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
228
+ elsif !attributes[attribute_map[key]].nil?
229
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
230
+ end
191
231
  end
192
-
193
- self
232
+ new(transformed_hash)
194
233
  end
195
234
 
196
235
  # Deserializes the data based on type
197
236
  # @param string type Data type
198
237
  # @param string value Value to be deserialized
199
238
  # @return [Object] Deserialized data
200
- def _deserialize(type, value)
239
+ def self._deserialize(type, value)
201
240
  case type.to_sym
202
- when :DateTime
203
- DateTime.parse(value)
241
+ when :Time
242
+ Time.parse(value)
204
243
  when :Date
205
244
  Date.parse(value)
206
245
  when :String
@@ -209,7 +248,7 @@ module FlatApi
209
248
  value.to_i
210
249
  when :Float
211
250
  value.to_f
212
- when :BOOLEAN
251
+ when :Boolean
213
252
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
214
253
  true
215
254
  else
@@ -230,8 +269,9 @@ module FlatApi
230
269
  end
231
270
  end
232
271
  else # model
233
- temp_model = FlatApi.const_get(type).new
234
- temp_model.build_from_hash(value)
272
+ # models (e.g. Pet) or oneOf
273
+ klass = FlatApi.const_get(type)
274
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
235
275
  end
236
276
  end
237
277
 
@@ -253,7 +293,11 @@ module FlatApi
253
293
  hash = {}
254
294
  self.class.attribute_map.each_pair do |attr, param|
255
295
  value = self.send(attr)
256
- next if value.nil?
296
+ if value.nil?
297
+ is_nullable = self.class.openapi_nullable.include?(attr)
298
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
299
+ end
300
+
257
301
  hash[param] = _to_hash(value)
258
302
  end
259
303
  hash
@@ -265,7 +309,7 @@ module FlatApi
265
309
  # @return [Hash] Returns the value in the form of hash
266
310
  def _to_hash(value)
267
311
  if value.is_a?(Array)
268
- value.compact.map{ |v| _to_hash(v) }
312
+ value.compact.map { |v| _to_hash(v) }
269
313
  elsif value.is_a?(Hash)
270
314
  {}.tap do |hash|
271
315
  value.each { |k, v| hash[k] = _to_hash(v) }