flat_api 0.2.0 → 0.3.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (416) 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 +257 -169
  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 +944 -552
  9. data/lib/flat_api/api/task_api.rb +85 -0
  10. data/lib/flat_api/api/user_api.rb +112 -74
  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 +138 -50
  60. data/lib/flat_api/models/collection_app.rb +236 -0
  61. data/lib/flat_api/models/collection_capabilities.rb +109 -47
  62. data/lib/flat_api/models/collection_creation.rb +132 -37
  63. data/lib/flat_api/models/collection_modification.rb +122 -35
  64. data/lib/flat_api/models/collection_privacy.rb +18 -9
  65. data/lib/flat_api/models/collection_type.rb +19 -9
  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 +181 -51
  100. data/lib/flat_api/models/resource_collaborator_creation.rb +74 -47
  101. data/lib/flat_api/models/resource_rights.rb +145 -42
  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 -225
  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 +272 -81
  119. data/lib/flat_api/models/score_fork.rb +88 -36
  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 +180 -50
  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 +78 -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 +36 -37
  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 +105 -91
  164. data/spec/api/task_api_spec.rb +47 -0
  165. data/spec/api/user_api_spec.rb +27 -25
  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 +15 -21
  213. data/spec/models/collection_creation_spec.rb +17 -17
  214. data/spec/models/collection_modification_spec.rb +17 -17
  215. data/spec/models/collection_privacy_spec.rb +10 -16
  216. data/spec/models/collection_spec.rb +39 -27
  217. data/spec/models/collection_type_spec.rb +10 -16
  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 +17 -23
  252. data/spec/models/resource_collaborator_spec.rb +47 -25
  253. data/spec/models/resource_rights_spec.rb +29 -19
  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 -58
  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 +23 -17
  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 +47 -23
  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 +279 -327
  309. data/CHANGELOG.md +0 -17
  310. data/Gemfile +0 -7
  311. data/README.md +0 -271
  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/Collection.md +0 -18
  332. data/docs/CollectionApi.md +0 -521
  333. data/docs/CollectionCapabilities.md +0 -12
  334. data/docs/CollectionCreation.md +0 -8
  335. data/docs/CollectionModification.md +0 -8
  336. data/docs/CollectionPrivacy.md +0 -7
  337. data/docs/CollectionTitle.md +0 -7
  338. data/docs/CollectionType.md +0 -7
  339. data/docs/FlatErrorResponse.md +0 -11
  340. data/docs/FlatLocales.md +0 -7
  341. data/docs/GoogleClassroomCoursework.md +0 -10
  342. data/docs/GoogleClassroomSubmission.md +0 -10
  343. data/docs/Group.md +0 -14
  344. data/docs/GroupApi.md +0 -167
  345. data/docs/GroupDetails.md +0 -14
  346. data/docs/GroupType.md +0 -7
  347. data/docs/LicenseMode.md +0 -7
  348. data/docs/LicenseSources.md +0 -7
  349. data/docs/LmsName.md +0 -7
  350. data/docs/LtiCredentials.md +0 -16
  351. data/docs/LtiCredentialsCreation.md +0 -9
  352. data/docs/MediaAttachment.md +0 -23
  353. data/docs/MediaScoreSharingMode.md +0 -7
  354. data/docs/OrganizationApi.md +0 -538
  355. data/docs/OrganizationInvitation.md +0 -14
  356. data/docs/OrganizationInvitationCreation.md +0 -9
  357. data/docs/OrganizationRoles.md +0 -7
  358. data/docs/ResourceCollaborator.md +0 -16
  359. data/docs/ResourceCollaboratorCreation.md +0 -14
  360. data/docs/ResourceRights.md +0 -10
  361. data/docs/ResourceSharingKey.md +0 -7
  362. data/docs/ScoreApi.md +0 -1658
  363. data/docs/ScoreComment.md +0 -22
  364. data/docs/ScoreCommentContext.md +0 -14
  365. data/docs/ScoreCommentCreation.md +0 -13
  366. data/docs/ScoreCommentUpdate.md +0 -11
  367. data/docs/ScoreCommentsCounts.md +0 -11
  368. data/docs/ScoreCreation.md +0 -14
  369. data/docs/ScoreCreationType.md +0 -7
  370. data/docs/ScoreData.md +0 -7
  371. data/docs/ScoreDataEncoding.md +0 -7
  372. data/docs/ScoreDetails.md +0 -36
  373. data/docs/ScoreFork.md +0 -8
  374. data/docs/ScoreLicense.md +0 -7
  375. data/docs/ScoreLikesCounts.md +0 -10
  376. data/docs/ScoreModification.md +0 -14
  377. data/docs/ScorePrivacy.md +0 -7
  378. data/docs/ScoreRevision.md +0 -14
  379. data/docs/ScoreRevisionCreation.md +0 -11
  380. data/docs/ScoreRevisionStatistics.md +0 -9
  381. data/docs/ScoreSource.md +0 -8
  382. data/docs/ScoreSummary.md +0 -13
  383. data/docs/ScoreTrack.md +0 -19
  384. data/docs/ScoreTrackCreation.md +0 -12
  385. data/docs/ScoreTrackPoint.md +0 -10
  386. data/docs/ScoreTrackState.md +0 -7
  387. data/docs/ScoreTrackType.md +0 -7
  388. data/docs/ScoreTrackUpdate.md +0 -11
  389. data/docs/ScoreViewsCounts.md +0 -10
  390. data/docs/UserAdminUpdate.md +0 -9
  391. data/docs/UserApi.md +0 -173
  392. data/docs/UserBasics.md +0 -13
  393. data/docs/UserCreation.md +0 -11
  394. data/docs/UserDetails.md +0 -28
  395. data/docs/UserDetailsAdmin.md +0 -20
  396. data/docs/UserDetailsAdminLicense.md +0 -12
  397. data/docs/UserInstruments.md +0 -7
  398. data/docs/UserPublic.md +0 -25
  399. data/docs/UserPublicSummary.md +0 -17
  400. data/flat_api.gemspec +0 -48
  401. data/lib/flat_api/models/assignment_creation.rb +0 -230
  402. data/lib/flat_api/models/collection_title.rb +0 -179
  403. data/lib/flat_api/models/resource_sharing_key.rb +0 -179
  404. data/lib/flat_api/models/score_data.rb +0 -179
  405. data/lib/flat_api/models/score_data_encoding.rb +0 -30
  406. data/lib/flat_api/models/user_details_admin_license.rb +0 -227
  407. data/lib/flat_api/models/user_instruments.rb +0 -179
  408. data/spec/api_client_spec.rb +0 -226
  409. data/spec/configuration_spec.rb +0 -42
  410. data/spec/models/assignment_creation_spec.rb +0 -66
  411. data/spec/models/collection_title_spec.rb +0 -36
  412. data/spec/models/resource_sharing_key_spec.rb +0 -36
  413. data/spec/models/score_data_encoding_spec.rb +0 -36
  414. data/spec/models/score_data_spec.rb +0 -36
  415. data/spec/models/user_details_admin_license_spec.rb +0 -66
  416. data/spec/models/user_instruments_spec.rb +0 -36
@@ -0,0 +1,240 @@
1
+ =begin
2
+ #Flat API
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, 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
+
6
+ The version of the OpenAPI document: 2.20.0
7
+ Contact: developers@flat.io
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 7.3.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module FlatApi
17
+ # Playback used by student in this submission (used to limit the playback for the assignment)
18
+ class AssignmentSubmissionPlaybackInner
19
+ # The score unique identifier
20
+ attr_accessor :score
21
+
22
+ # The number of playback used by the student
23
+ attr_accessor :nb_play_attempt
24
+
25
+ # Attribute mapping from ruby-style variable name to JSON key.
26
+ def self.attribute_map
27
+ {
28
+ :'score' => :'score',
29
+ :'nb_play_attempt' => :'nbPlayAttempt'
30
+ }
31
+ end
32
+
33
+ # Returns all the JSON keys this model knows about
34
+ def self.acceptable_attributes
35
+ attribute_map.values
36
+ end
37
+
38
+ # Attribute type mapping.
39
+ def self.openapi_types
40
+ {
41
+ :'score' => :'String',
42
+ :'nb_play_attempt' => :'Float'
43
+ }
44
+ end
45
+
46
+ # List of attributes with nullable: true
47
+ def self.openapi_nullable
48
+ Set.new([
49
+ ])
50
+ end
51
+
52
+ # Initializes the object
53
+ # @param [Hash] attributes Model attributes in the form of hash
54
+ def initialize(attributes = {})
55
+ if (!attributes.is_a?(Hash))
56
+ fail ArgumentError, "The input argument (attributes) must be a hash in `FlatApi::AssignmentSubmissionPlaybackInner` initialize method"
57
+ end
58
+
59
+ # check to see if the attribute exists and convert string to symbol for hash key
60
+ attributes = attributes.each_with_object({}) { |(k, v), h|
61
+ if (!self.class.attribute_map.key?(k.to_sym))
62
+ fail ArgumentError, "`#{k}` is not a valid attribute in `FlatApi::AssignmentSubmissionPlaybackInner`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
63
+ end
64
+ h[k.to_sym] = v
65
+ }
66
+
67
+ if attributes.key?(:'score')
68
+ self.score = attributes[:'score']
69
+ else
70
+ self.score = nil
71
+ end
72
+
73
+ if attributes.key?(:'nb_play_attempt')
74
+ self.nb_play_attempt = attributes[:'nb_play_attempt']
75
+ else
76
+ self.nb_play_attempt = nil
77
+ end
78
+ end
79
+
80
+ # Show invalid properties with the reasons. Usually used together with valid?
81
+ # @return Array for valid properties with the reasons
82
+ def list_invalid_properties
83
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
84
+ invalid_properties = Array.new
85
+ if @score.nil?
86
+ invalid_properties.push('invalid value for "score", score cannot be nil.')
87
+ end
88
+
89
+ if @nb_play_attempt.nil?
90
+ invalid_properties.push('invalid value for "nb_play_attempt", nb_play_attempt cannot be nil.')
91
+ end
92
+
93
+ invalid_properties
94
+ end
95
+
96
+ # Check to see if the all the properties in the model are valid
97
+ # @return true if the model is valid
98
+ def valid?
99
+ warn '[DEPRECATED] the `valid?` method is obsolete'
100
+ return false if @score.nil?
101
+ return false if @nb_play_attempt.nil?
102
+ true
103
+ end
104
+
105
+ # Checks equality by comparing each attribute.
106
+ # @param [Object] Object to be compared
107
+ def ==(o)
108
+ return true if self.equal?(o)
109
+ self.class == o.class &&
110
+ score == o.score &&
111
+ nb_play_attempt == o.nb_play_attempt
112
+ end
113
+
114
+ # @see the `==` method
115
+ # @param [Object] Object to be compared
116
+ def eql?(o)
117
+ self == o
118
+ end
119
+
120
+ # Calculates hash code according to all attributes.
121
+ # @return [Integer] Hash code
122
+ def hash
123
+ [score, nb_play_attempt].hash
124
+ end
125
+
126
+ # Builds the object from hash
127
+ # @param [Hash] attributes Model attributes in the form of hash
128
+ # @return [Object] Returns the model itself
129
+ def self.build_from_hash(attributes)
130
+ return nil unless attributes.is_a?(Hash)
131
+ attributes = attributes.transform_keys(&:to_sym)
132
+ transformed_hash = {}
133
+ openapi_types.each_pair do |key, type|
134
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
135
+ transformed_hash["#{key}"] = nil
136
+ elsif type =~ /\AArray<(.*)>/i
137
+ # check to ensure the input is an array given that the attribute
138
+ # is documented as an array but the input is not
139
+ if attributes[attribute_map[key]].is_a?(Array)
140
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
141
+ end
142
+ elsif !attributes[attribute_map[key]].nil?
143
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
144
+ end
145
+ end
146
+ new(transformed_hash)
147
+ end
148
+
149
+ # Deserializes the data based on type
150
+ # @param string type Data type
151
+ # @param string value Value to be deserialized
152
+ # @return [Object] Deserialized data
153
+ def self._deserialize(type, value)
154
+ case type.to_sym
155
+ when :Time
156
+ Time.parse(value)
157
+ when :Date
158
+ Date.parse(value)
159
+ when :String
160
+ value.to_s
161
+ when :Integer
162
+ value.to_i
163
+ when :Float
164
+ value.to_f
165
+ when :Boolean
166
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
167
+ true
168
+ else
169
+ false
170
+ end
171
+ when :Object
172
+ # generic object (usually a Hash), return directly
173
+ value
174
+ when /\AArray<(?<inner_type>.+)>\z/
175
+ inner_type = Regexp.last_match[:inner_type]
176
+ value.map { |v| _deserialize(inner_type, v) }
177
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
178
+ k_type = Regexp.last_match[:k_type]
179
+ v_type = Regexp.last_match[:v_type]
180
+ {}.tap do |hash|
181
+ value.each do |k, v|
182
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
183
+ end
184
+ end
185
+ else # model
186
+ # models (e.g. Pet) or oneOf
187
+ klass = FlatApi.const_get(type)
188
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
189
+ end
190
+ end
191
+
192
+ # Returns the string representation of the object
193
+ # @return [String] String presentation of the object
194
+ def to_s
195
+ to_hash.to_s
196
+ end
197
+
198
+ # to_body is an alias to to_hash (backward compatibility)
199
+ # @return [Hash] Returns the object in the form of hash
200
+ def to_body
201
+ to_hash
202
+ end
203
+
204
+ # Returns the object in the form of hash
205
+ # @return [Hash] Returns the object in the form of hash
206
+ def to_hash
207
+ hash = {}
208
+ self.class.attribute_map.each_pair do |attr, param|
209
+ value = self.send(attr)
210
+ if value.nil?
211
+ is_nullable = self.class.openapi_nullable.include?(attr)
212
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
213
+ end
214
+
215
+ hash[param] = _to_hash(value)
216
+ end
217
+ hash
218
+ end
219
+
220
+ # Outputs non-array value in the form of hash
221
+ # For object, use to_hash. Otherwise, just return the value
222
+ # @param [Object] value Any valid value
223
+ # @return [Hash] Returns the value in the form of hash
224
+ def _to_hash(value)
225
+ if value.is_a?(Array)
226
+ value.compact.map { |v| _to_hash(v) }
227
+ elsif value.is_a?(Hash)
228
+ {}.tap do |hash|
229
+ value.each { |k, v| hash[k] = _to_hash(v) }
230
+ end
231
+ elsif value.respond_to? :to_hash
232
+ value.to_hash
233
+ else
234
+ value
235
+ end
236
+ end
237
+
238
+ end
239
+
240
+ end
@@ -0,0 +1,42 @@
1
+ =begin
2
+ #Flat API
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, 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
+
6
+ The version of the OpenAPI document: 2.20.0
7
+ Contact: developers@flat.io
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 7.3.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module FlatApi
17
+ class AssignmentSubmissionState
18
+ CREATED = "created".freeze
19
+ TURNED_IN = "turnedIn".freeze
20
+ RETURNED = "returned".freeze
21
+ GRADED = "graded".freeze
22
+
23
+ def self.all_vars
24
+ @all_vars ||= [CREATED, TURNED_IN, RETURNED, GRADED].freeze
25
+ end
26
+
27
+ # Builds the enum from string
28
+ # @param [String] The enum value in the form of the string
29
+ # @return [String] The enum value
30
+ def self.build_from_hash(value)
31
+ new.build_from_hash(value)
32
+ end
33
+
34
+ # Builds the enum from string
35
+ # @param [String] The enum value in the form of the string
36
+ # @return [String] The enum value
37
+ def build_from_hash(value)
38
+ return value if AssignmentSubmissionState.all_vars.include?(value)
39
+ raise "Invalid ENUM value #{value} for class #AssignmentSubmissionState"
40
+ end
41
+ end
42
+ end
@@ -1,91 +1,181 @@
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.6.0
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
  # Assignment Submission creation
17
18
  class AssignmentSubmissionUpdate
18
19
  attr_accessor :attachments
19
20
 
20
- # An optionnal comment sent by the student when submitting his work
21
- attr_accessor :student_comment
22
-
23
21
  # If `true`, the submission will be marked as done
24
22
  attr_accessor :submit
25
23
 
26
- # The feedback associated with the return
27
- attr_accessor :return_feedback
24
+ # Optional grade. If unset, no grade was set. This value is only visible by the teacher, and we will be set to `grade` once the teacher returns the submission
25
+ attr_accessor :draft_grade
26
+
27
+ # Optional grade. If unset, no grade was set.
28
+ attr_accessor :grade
29
+
30
+ # The ids of exercises when they need to be in a specific order
31
+ attr_accessor :exercises_ids
28
32
 
33
+ # If `true`, the submission will be marked as done
34
+ attr_accessor :_return
29
35
 
30
36
  # Attribute mapping from ruby-style variable name to JSON key.
31
37
  def self.attribute_map
32
38
  {
33
39
  :'attachments' => :'attachments',
34
- :'student_comment' => :'studentComment',
35
40
  :'submit' => :'submit',
36
- :'return_feedback' => :'returnFeedback'
41
+ :'draft_grade' => :'draftGrade',
42
+ :'grade' => :'grade',
43
+ :'exercises_ids' => :'exercisesIds',
44
+ :'_return' => :'return'
37
45
  }
38
46
  end
39
47
 
48
+ # Returns all the JSON keys this model knows about
49
+ def self.acceptable_attributes
50
+ attribute_map.values
51
+ end
52
+
40
53
  # Attribute type mapping.
41
- def self.swagger_types
54
+ def self.openapi_types
42
55
  {
43
56
  :'attachments' => :'Array<ClassAttachmentCreation>',
44
- :'student_comment' => :'String',
45
- :'submit' => :'BOOLEAN',
46
- :'return_feedback' => :'String'
57
+ :'submit' => :'Boolean',
58
+ :'draft_grade' => :'Float',
59
+ :'grade' => :'Float',
60
+ :'exercises_ids' => :'Array<String>',
61
+ :'_return' => :'Boolean'
47
62
  }
48
63
  end
49
64
 
65
+ # List of attributes with nullable: true
66
+ def self.openapi_nullable
67
+ Set.new([
68
+ :'draft_grade',
69
+ :'grade',
70
+ :'exercises_ids',
71
+ ])
72
+ end
73
+
50
74
  # Initializes the object
51
75
  # @param [Hash] attributes Model attributes in the form of hash
52
76
  def initialize(attributes = {})
53
- return unless attributes.is_a?(Hash)
77
+ if (!attributes.is_a?(Hash))
78
+ fail ArgumentError, "The input argument (attributes) must be a hash in `FlatApi::AssignmentSubmissionUpdate` initialize method"
79
+ end
54
80
 
55
- # convert string to symbol for hash key
56
- attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
81
+ # check to see if the attribute exists and convert string to symbol for hash key
82
+ attributes = attributes.each_with_object({}) { |(k, v), h|
83
+ if (!self.class.attribute_map.key?(k.to_sym))
84
+ fail ArgumentError, "`#{k}` is not a valid attribute in `FlatApi::AssignmentSubmissionUpdate`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
85
+ end
86
+ h[k.to_sym] = v
87
+ }
57
88
 
58
- if attributes.has_key?(:'attachments')
89
+ if attributes.key?(:'attachments')
59
90
  if (value = attributes[:'attachments']).is_a?(Array)
60
91
  self.attachments = value
61
92
  end
62
93
  end
63
94
 
64
- if attributes.has_key?(:'studentComment')
65
- self.student_comment = attributes[:'studentComment']
95
+ if attributes.key?(:'submit')
96
+ self.submit = attributes[:'submit']
66
97
  end
67
98
 
68
- if attributes.has_key?(:'submit')
69
- self.submit = attributes[:'submit']
99
+ if attributes.key?(:'draft_grade')
100
+ self.draft_grade = attributes[:'draft_grade']
70
101
  end
71
102
 
72
- if attributes.has_key?(:'returnFeedback')
73
- self.return_feedback = attributes[:'returnFeedback']
103
+ if attributes.key?(:'grade')
104
+ self.grade = attributes[:'grade']
105
+ end
106
+
107
+ if attributes.key?(:'exercises_ids')
108
+ if (value = attributes[:'exercises_ids']).is_a?(Array)
109
+ self.exercises_ids = value
110
+ end
74
111
  end
75
112
 
113
+ if attributes.key?(:'_return')
114
+ self._return = attributes[:'_return']
115
+ end
76
116
  end
77
117
 
78
118
  # Show invalid properties with the reasons. Usually used together with valid?
79
119
  # @return Array for valid properties with the reasons
80
120
  def list_invalid_properties
121
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
81
122
  invalid_properties = Array.new
82
- return invalid_properties
123
+ if !@draft_grade.nil? && @draft_grade > 10000
124
+ invalid_properties.push('invalid value for "draft_grade", must be smaller than or equal to 10000.')
125
+ end
126
+
127
+ if !@draft_grade.nil? && @draft_grade < 0
128
+ invalid_properties.push('invalid value for "draft_grade", must be greater than or equal to 0.')
129
+ end
130
+
131
+ if !@grade.nil? && @grade > 10000
132
+ invalid_properties.push('invalid value for "grade", must be smaller than or equal to 10000.')
133
+ end
134
+
135
+ if !@grade.nil? && @grade < 0
136
+ invalid_properties.push('invalid value for "grade", must be greater than or equal to 0.')
137
+ end
138
+
139
+ invalid_properties
83
140
  end
84
141
 
85
142
  # Check to see if the all the properties in the model are valid
86
143
  # @return true if the model is valid
87
144
  def valid?
88
- return true
145
+ warn '[DEPRECATED] the `valid?` method is obsolete'
146
+ return false if !@draft_grade.nil? && @draft_grade > 10000
147
+ return false if !@draft_grade.nil? && @draft_grade < 0
148
+ return false if !@grade.nil? && @grade > 10000
149
+ return false if !@grade.nil? && @grade < 0
150
+ true
151
+ end
152
+
153
+ # Custom attribute writer method with validation
154
+ # @param [Object] draft_grade Value to be assigned
155
+ def draft_grade=(draft_grade)
156
+ if !draft_grade.nil? && draft_grade > 10000
157
+ fail ArgumentError, 'invalid value for "draft_grade", must be smaller than or equal to 10000.'
158
+ end
159
+
160
+ if !draft_grade.nil? && draft_grade < 0
161
+ fail ArgumentError, 'invalid value for "draft_grade", must be greater than or equal to 0.'
162
+ end
163
+
164
+ @draft_grade = draft_grade
165
+ end
166
+
167
+ # Custom attribute writer method with validation
168
+ # @param [Object] grade Value to be assigned
169
+ def grade=(grade)
170
+ if !grade.nil? && grade > 10000
171
+ fail ArgumentError, 'invalid value for "grade", must be smaller than or equal to 10000.'
172
+ end
173
+
174
+ if !grade.nil? && grade < 0
175
+ fail ArgumentError, 'invalid value for "grade", must be greater than or equal to 0.'
176
+ end
177
+
178
+ @grade = grade
89
179
  end
90
180
 
91
181
  # Checks equality by comparing each attribute.
@@ -94,9 +184,11 @@ module FlatApi
94
184
  return true if self.equal?(o)
95
185
  self.class == o.class &&
96
186
  attachments == o.attachments &&
97
- student_comment == o.student_comment &&
98
187
  submit == o.submit &&
99
- return_feedback == o.return_feedback
188
+ draft_grade == o.draft_grade &&
189
+ grade == o.grade &&
190
+ exercises_ids == o.exercises_ids &&
191
+ _return == o._return
100
192
  end
101
193
 
102
194
  # @see the `==` method
@@ -106,39 +198,42 @@ module FlatApi
106
198
  end
107
199
 
108
200
  # Calculates hash code according to all attributes.
109
- # @return [Fixnum] Hash code
201
+ # @return [Integer] Hash code
110
202
  def hash
111
- [attachments, student_comment, submit, return_feedback].hash
203
+ [attachments, submit, draft_grade, grade, exercises_ids, _return].hash
112
204
  end
113
205
 
114
206
  # Builds the object from hash
115
207
  # @param [Hash] attributes Model attributes in the form of hash
116
208
  # @return [Object] Returns the model itself
117
- def build_from_hash(attributes)
209
+ def self.build_from_hash(attributes)
118
210
  return nil unless attributes.is_a?(Hash)
119
- self.class.swagger_types.each_pair do |key, type|
120
- if type =~ /\AArray<(.*)>/i
121
- # check to ensure the input is an array given that the the attribute
211
+ attributes = attributes.transform_keys(&:to_sym)
212
+ transformed_hash = {}
213
+ openapi_types.each_pair do |key, type|
214
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
215
+ transformed_hash["#{key}"] = nil
216
+ elsif type =~ /\AArray<(.*)>/i
217
+ # check to ensure the input is an array given that the attribute
122
218
  # is documented as an array but the input is not
123
- if attributes[self.class.attribute_map[key]].is_a?(Array)
124
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
219
+ if attributes[attribute_map[key]].is_a?(Array)
220
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
125
221
  end
126
- elsif !attributes[self.class.attribute_map[key]].nil?
127
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
128
- end # or else data not found in attributes(hash), not an issue as the data can be optional
222
+ elsif !attributes[attribute_map[key]].nil?
223
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
224
+ end
129
225
  end
130
-
131
- self
226
+ new(transformed_hash)
132
227
  end
133
228
 
134
229
  # Deserializes the data based on type
135
230
  # @param string type Data type
136
231
  # @param string value Value to be deserialized
137
232
  # @return [Object] Deserialized data
138
- def _deserialize(type, value)
233
+ def self._deserialize(type, value)
139
234
  case type.to_sym
140
- when :DateTime
141
- DateTime.parse(value)
235
+ when :Time
236
+ Time.parse(value)
142
237
  when :Date
143
238
  Date.parse(value)
144
239
  when :String
@@ -147,7 +242,7 @@ module FlatApi
147
242
  value.to_i
148
243
  when :Float
149
244
  value.to_f
150
- when :BOOLEAN
245
+ when :Boolean
151
246
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
152
247
  true
153
248
  else
@@ -168,8 +263,9 @@ module FlatApi
168
263
  end
169
264
  end
170
265
  else # model
171
- temp_model = FlatApi.const_get(type).new
172
- temp_model.build_from_hash(value)
266
+ # models (e.g. Pet) or oneOf
267
+ klass = FlatApi.const_get(type)
268
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
173
269
  end
174
270
  end
175
271
 
@@ -191,7 +287,11 @@ module FlatApi
191
287
  hash = {}
192
288
  self.class.attribute_map.each_pair do |attr, param|
193
289
  value = self.send(attr)
194
- next if value.nil?
290
+ if value.nil?
291
+ is_nullable = self.class.openapi_nullable.include?(attr)
292
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
293
+ end
294
+
195
295
  hash[param] = _to_hash(value)
196
296
  end
197
297
  hash
@@ -203,7 +303,7 @@ module FlatApi
203
303
  # @return [Hash] Returns the value in the form of hash
204
304
  def _to_hash(value)
205
305
  if value.is_a?(Array)
206
- value.compact.map{ |v| _to_hash(v) }
306
+ value.compact.map { |v| _to_hash(v) }
207
307
  elsif value.is_a?(Hash)
208
308
  {}.tap do |hash|
209
309
  value.each { |k, v| hash[k] = _to_hash(v) }
@@ -0,0 +1,44 @@
1
+ =begin
2
+ #Flat API
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, 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
+
6
+ The version of the OpenAPI document: 2.20.0
7
+ Contact: developers@flat.io
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 7.3.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module FlatApi
17
+ class AssignmentType
18
+ NONE = "none".freeze
19
+ NEW_SCORE = "newScore".freeze
20
+ SCORE_TEMPLATE = "scoreTemplate".freeze
21
+ SHARED_WRITING = "sharedWriting".freeze
22
+ WORKSHEET = "worksheet".freeze
23
+ PERFORMANCE = "performance".freeze
24
+
25
+ def self.all_vars
26
+ @all_vars ||= [NONE, NEW_SCORE, SCORE_TEMPLATE, SHARED_WRITING, WORKSHEET, PERFORMANCE].freeze
27
+ end
28
+
29
+ # Builds the enum from string
30
+ # @param [String] The enum value in the form of the string
31
+ # @return [String] The enum value
32
+ def self.build_from_hash(value)
33
+ new.build_from_hash(value)
34
+ end
35
+
36
+ # Builds the enum from string
37
+ # @param [String] The enum value in the form of the string
38
+ # @return [String] The enum value
39
+ def build_from_hash(value)
40
+ return value if AssignmentType.all_vars.include?(value)
41
+ raise "Invalid ENUM value #{value} for class #AssignmentType"
42
+ end
43
+ end
44
+ end