flat_api 0.3.5 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (374) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +69 -0
  3. data/LICENSE +201 -0
  4. data/README.md +92 -0
  5. data/lib/flat_api/api/account_api.rb +4 -4
  6. data/lib/flat_api/api/class_api.rb +281 -63
  7. data/lib/flat_api/api/collection_api.rb +63 -50
  8. data/lib/flat_api/api/edu_resources_api.rb +38 -26
  9. data/lib/flat_api/api/group_api.rb +432 -9
  10. data/lib/flat_api/api/omr_api.rb +894 -0
  11. data/lib/flat_api/api/organization_api.rb +307 -35
  12. data/lib/flat_api/api/score_api.rb +129 -80
  13. data/lib/flat_api/api/task_api.rb +5 -5
  14. data/lib/flat_api/api/user_api.rb +45 -14
  15. data/lib/flat_api/api_client.rb +169 -96
  16. data/lib/flat_api/api_error.rb +3 -3
  17. data/lib/flat_api/api_model_base.rb +88 -0
  18. data/lib/flat_api/client.rb +69 -0
  19. data/lib/flat_api/configuration.rb +124 -25
  20. data/lib/flat_api/errors.rb +86 -0
  21. data/lib/flat_api/models/add_group_user200_response.rb +148 -0
  22. data/lib/flat_api/models/add_group_user_request.rb +165 -0
  23. data/lib/flat_api/models/api_access_token.rb +13 -80
  24. data/lib/flat_api/models/app_scopes.rb +6 -4
  25. data/lib/flat_api/models/assignment.rb +190 -85
  26. data/lib/flat_api/models/assignment_capabilities.rb +53 -80
  27. data/lib/flat_api/models/assignment_capabilities_can_publish_in_class_error.rb +33 -80
  28. data/lib/flat_api/models/assignment_copy.rb +5 -6
  29. data/lib/flat_api/models/assignment_copy_response.rb +187 -82
  30. data/lib/flat_api/models/assignment_copy_to_class.rb +23 -80
  31. data/lib/flat_api/models/assignment_copy_to_resource_library.rb +23 -80
  32. data/lib/flat_api/models/assignment_group.rb +232 -0
  33. data/lib/flat_api/models/assignment_submission.rb +104 -81
  34. data/lib/flat_api/models/assignment_submission_comment.rb +13 -80
  35. data/lib/flat_api/models/assignment_submission_comment_creation.rb +23 -80
  36. data/lib/flat_api/models/assignment_submission_comments.rb +13 -80
  37. data/lib/flat_api/models/assignment_submission_history.rb +33 -80
  38. data/lib/flat_api/models/assignment_submission_history_attachment.rb +13 -80
  39. data/lib/flat_api/models/assignment_submission_history_state.rb +3 -3
  40. data/lib/flat_api/models/assignment_submission_lti.rb +64 -86
  41. data/lib/flat_api/models/{assignment_submission_playback_inner.rb → assignment_submission_playback.rb} +36 -83
  42. data/lib/flat_api/models/assignment_submission_state.rb +3 -3
  43. data/lib/flat_api/models/assignment_submission_students_mode.rb +40 -0
  44. data/lib/flat_api/models/assignment_submission_update.rb +25 -81
  45. data/lib/flat_api/models/assignment_type.rb +5 -4
  46. data/lib/flat_api/models/assignment_update.rb +218 -87
  47. data/lib/flat_api/models/class_assignment.rb +219 -82
  48. data/lib/flat_api/models/class_assignment_all_of_canvas.rb +13 -80
  49. data/lib/flat_api/models/class_assignment_all_of_lti.rb +13 -80
  50. data/lib/flat_api/models/class_assignment_all_of_mfc.rb +13 -80
  51. data/lib/flat_api/models/class_assignment_update.rb +237 -94
  52. data/lib/flat_api/models/class_assignment_update_all_of_google_classroom.rb +13 -80
  53. data/lib/flat_api/models/class_assignment_update_all_of_microsoft_graph.rb +13 -80
  54. data/lib/flat_api/models/class_attachment_creation.rb +51 -86
  55. data/lib/flat_api/models/class_creation.rb +13 -80
  56. data/lib/flat_api/models/class_details.rb +85 -81
  57. data/lib/flat_api/models/class_details_canvas.rb +13 -80
  58. data/lib/flat_api/models/class_details_clever.rb +13 -80
  59. data/lib/flat_api/models/class_details_google_classroom.rb +13 -80
  60. data/lib/flat_api/models/class_details_google_drive.rb +13 -80
  61. data/lib/flat_api/models/class_details_issues.rb +13 -80
  62. data/lib/flat_api/models/class_details_issues_sync_inner.rb +15 -82
  63. data/lib/flat_api/models/class_details_lti.rb +28 -85
  64. data/lib/flat_api/models/class_details_mfc.rb +13 -80
  65. data/lib/flat_api/models/class_details_microsoft_graph.rb +13 -80
  66. data/lib/flat_api/models/class_grade_level.rb +3 -3
  67. data/lib/flat_api/models/class_roles.rb +3 -3
  68. data/lib/flat_api/models/class_state.rb +5 -4
  69. data/lib/flat_api/models/class_update.rb +13 -80
  70. data/lib/flat_api/models/collection.rb +182 -81
  71. data/lib/flat_api/models/collection_app.rb +13 -80
  72. data/lib/flat_api/models/collection_capabilities.rb +63 -80
  73. data/lib/flat_api/models/collection_contents.rb +166 -0
  74. data/lib/flat_api/models/collection_creation.rb +20 -99
  75. data/lib/flat_api/models/collection_modification.rb +17 -82
  76. data/lib/flat_api/models/collection_privacy.rb +3 -3
  77. data/lib/flat_api/models/collection_type.rb +7 -6
  78. data/lib/flat_api/models/credit_transaction.rb +388 -0
  79. data/lib/flat_api/models/edu_library.rb +63 -82
  80. data/lib/flat_api/models/edu_resource.rb +101 -84
  81. data/lib/flat_api/models/edu_resource_assignment_creation.rb +170 -0
  82. data/lib/flat_api/models/edu_resource_capabilities.rb +27 -84
  83. data/lib/flat_api/models/edu_resource_copy.rb +23 -80
  84. data/lib/flat_api/models/edu_resource_creation.rb +96 -86
  85. data/lib/flat_api/models/edu_resource_folder.rb +39 -84
  86. data/lib/flat_api/models/edu_resource_lti_link.rb +23 -80
  87. data/lib/flat_api/models/edu_resource_move.rb +23 -80
  88. data/lib/flat_api/models/edu_resource_privacy.rb +3 -3
  89. data/lib/flat_api/models/edu_resource_resource.rb +5 -6
  90. data/lib/flat_api/models/edu_resource_type.rb +3 -3
  91. data/lib/flat_api/models/edu_resource_update.rb +101 -86
  92. data/lib/flat_api/models/edu_resource_use_in_class.rb +23 -80
  93. data/lib/flat_api/models/flat_error_response.rb +47 -84
  94. data/lib/flat_api/models/google_classroom_coursework.rb +13 -80
  95. data/lib/flat_api/models/google_classroom_submission.rb +43 -80
  96. data/lib/flat_api/models/grade.rb +51 -0
  97. data/lib/flat_api/models/group.rb +14 -94
  98. data/lib/flat_api/models/group_creation.rb +238 -0
  99. data/lib/flat_api/models/group_details.rb +178 -84
  100. data/lib/flat_api/models/group_type.rb +6 -4
  101. data/lib/flat_api/models/license_mode.rb +3 -3
  102. data/lib/flat_api/models/license_sources.rb +3 -3
  103. data/lib/flat_api/models/lms_name.rb +3 -3
  104. data/lib/flat_api/models/lti_configuration.rb +56 -0
  105. data/lib/flat_api/models/lti_configuration1p1.rb +361 -0
  106. data/lib/flat_api/models/lti_configuration1p1_all_of_tool.rb +199 -0
  107. data/lib/flat_api/models/lti_configuration1p3.rb +106 -0
  108. data/lib/flat_api/models/lti_configuration1p3_base.rb +336 -0
  109. data/lib/flat_api/models/lti_configuration1p3_base_supported_services.rb +166 -0
  110. data/lib/flat_api/models/lti_configuration1p3_base_supported_services_ags.rb +179 -0
  111. data/lib/flat_api/models/lti_configuration1p3_base_supported_services_deep_linking.rb +159 -0
  112. data/lib/flat_api/models/lti_configuration1p3_base_supported_services_nrps.rb +169 -0
  113. data/lib/flat_api/models/lti_configuration1p3_base_tool.rb +199 -0
  114. data/lib/flat_api/models/lti_configuration1p3_deployment.rb +529 -0
  115. data/lib/flat_api/models/lti_configuration1p3_dynamic.rb +530 -0
  116. data/lib/flat_api/models/lti_configuration1p3_manual.rb +489 -0
  117. data/lib/flat_api/models/lti_configuration_base.rb +306 -0
  118. data/lib/flat_api/models/lti_configuration_create.rb +60 -0
  119. data/lib/flat_api/models/lti_configuration_create1p1.rb +210 -0
  120. data/lib/flat_api/models/lti_configuration_create1p3_deployment.rb +264 -0
  121. data/lib/flat_api/models/lti_configuration_create1p3_dynamic.rb +209 -0
  122. data/lib/flat_api/models/lti_configuration_create1p3_dynamic_platform_info.rb +159 -0
  123. data/lib/flat_api/models/lti_configuration_create1p3_manual.rb +270 -0
  124. data/lib/flat_api/models/lti_configuration_update.rb +104 -0
  125. data/lib/flat_api/models/lti_configuration_update_deployment.rb +169 -0
  126. data/lib/flat_api/models/lti_configuration_update_standalone.rb +219 -0
  127. data/lib/flat_api/models/lti_credentials.rb +29 -84
  128. data/lib/flat_api/models/lti_credentials_creation.rb +23 -80
  129. data/lib/flat_api/models/media_attachment.rb +43 -88
  130. data/lib/flat_api/models/media_score_sharing_mode.rb +3 -3
  131. data/lib/flat_api/models/microsoft_graph_assignment.rb +99 -88
  132. data/lib/flat_api/models/microsoft_graph_submission.rb +33 -80
  133. data/lib/flat_api/models/omr_capabilities.rb +480 -0
  134. data/lib/flat_api/models/omr_details_step_data.rb +228 -0
  135. data/lib/flat_api/models/omr_details_submission.rb +288 -0
  136. data/lib/flat_api/models/omr_detected_instrument.rb +260 -0
  137. data/lib/flat_api/models/omr_imported_metadata.rb +181 -0
  138. data/lib/flat_api/models/omr_instrument_override.rb +311 -0
  139. data/lib/flat_api/models/omr_job.rb +394 -0
  140. data/lib/flat_api/models/omr_job_creation.rb +238 -0
  141. data/lib/flat_api/models/omr_job_file_metadata.rb +199 -0
  142. data/lib/flat_api/models/omr_job_file_upload.rb +176 -0
  143. data/lib/flat_api/models/omr_job_file_upload_result.rb +159 -0
  144. data/lib/flat_api/models/omr_job_input_file.rb +176 -0
  145. data/lib/flat_api/models/omr_job_output.rb +40 -0
  146. data/lib/flat_api/models/omr_job_progress.rb +169 -0
  147. data/lib/flat_api/models/omr_job_result.rb +161 -0
  148. data/lib/flat_api/models/omr_job_retention.rb +176 -0
  149. data/lib/flat_api/models/omr_job_status.rb +44 -0
  150. data/lib/flat_api/models/omr_locale_details.rb +193 -0
  151. data/lib/flat_api/models/omr_pending_step.rb +213 -0
  152. data/lib/flat_api/models/omr_step_name.rb +39 -0
  153. data/lib/flat_api/models/organization_invitation.rb +54 -81
  154. data/lib/flat_api/models/organization_invitation_creation.rb +15 -82
  155. data/lib/flat_api/models/organization_roles.rb +5 -5
  156. data/lib/flat_api/models/organization_user_access_token_creation.rb +23 -80
  157. data/lib/flat_api/models/rename_group_request.rb +165 -0
  158. data/lib/flat_api/models/resource_collaborator.rb +43 -85
  159. data/lib/flat_api/models/resource_collaborator_creation.rb +13 -80
  160. data/lib/flat_api/models/resource_rights.rb +43 -85
  161. data/lib/flat_api/models/score_comment.rb +122 -80
  162. data/lib/flat_api/models/score_comment_context.rb +73 -80
  163. data/lib/flat_api/models/score_comment_creation.rb +24 -81
  164. data/lib/flat_api/models/score_comment_moderation.rb +13 -80
  165. data/lib/flat_api/models/score_comment_update.rb +18 -85
  166. data/lib/flat_api/models/score_comments_counts.rb +28 -85
  167. data/lib/flat_api/models/score_creation.rb +5 -6
  168. data/lib/flat_api/models/score_creation_builder_data.rb +24 -88
  169. data/lib/flat_api/models/score_creation_builder_data_all_of_builder_data.rb +23 -80
  170. data/lib/flat_api/models/score_creation_builder_data_all_of_builder_data_layout_data.rb +13 -80
  171. data/lib/flat_api/models/score_creation_builder_data_all_of_builder_data_score_data.rb +24 -81
  172. data/lib/flat_api/models/score_creation_builder_data_all_of_builder_data_score_data_instruments.rb +33 -80
  173. data/lib/flat_api/models/score_creation_common.rb +14 -81
  174. data/lib/flat_api/models/score_creation_file_import.rb +39 -86
  175. data/lib/flat_api/models/score_creation_google_drive_import.rb +24 -81
  176. data/lib/flat_api/models/score_creation_type.rb +4 -5
  177. data/lib/flat_api/models/score_details.rb +180 -89
  178. data/lib/flat_api/models/score_details_all_of_me.rb +193 -0
  179. data/lib/flat_api/models/score_fork.rb +14 -83
  180. data/lib/flat_api/models/score_license.rb +4 -5
  181. data/lib/flat_api/models/score_likes_counts.rb +28 -106
  182. data/lib/flat_api/models/score_modification.rb +13 -80
  183. data/lib/flat_api/models/score_plays_counts.rb +28 -85
  184. data/lib/flat_api/models/score_privacy.rb +3 -3
  185. data/lib/flat_api/models/score_revision.rb +81 -87
  186. data/lib/flat_api/models/score_revision_creation.rb +23 -80
  187. data/lib/flat_api/models/score_revision_statistics.rb +13 -80
  188. data/lib/flat_api/models/score_source.rb +13 -80
  189. data/lib/flat_api/models/score_summary.rb +63 -80
  190. data/lib/flat_api/models/score_track.rb +94 -88
  191. data/lib/flat_api/models/score_track_creation.rb +13 -80
  192. data/lib/flat_api/models/score_track_creation_response.rb +165 -0
  193. data/lib/flat_api/models/score_track_point.rb +23 -80
  194. data/lib/flat_api/models/score_track_purpose.rb +3 -3
  195. data/lib/flat_api/models/score_track_state.rb +3 -3
  196. data/lib/flat_api/models/score_track_type.rb +3 -3
  197. data/lib/flat_api/models/score_track_update.rb +25 -81
  198. data/lib/flat_api/models/score_views_counts.rb +28 -85
  199. data/lib/flat_api/models/task.rb +62 -87
  200. data/lib/flat_api/models/task_export_options.rb +13 -80
  201. data/lib/flat_api/models/task_progress.rb +13 -80
  202. data/lib/flat_api/models/task_result.rb +13 -80
  203. data/lib/flat_api/models/teaching_theme.rb +47 -0
  204. data/lib/flat_api/models/tutteo_product.rb +3 -3
  205. data/lib/flat_api/models/user_admin_update.rb +17 -95
  206. data/lib/flat_api/models/user_azure_details.rb +13 -80
  207. data/lib/flat_api/models/user_basics.rb +43 -80
  208. data/lib/flat_api/models/user_community_profile_links.rb +13 -80
  209. data/lib/flat_api/models/user_creation.rb +21 -98
  210. data/lib/flat_api/models/user_details.rb +101 -96
  211. data/lib/flat_api/models/user_details_admin.rb +72 -85
  212. data/lib/flat_api/models/user_details_admin_all_of_license.rb +13 -80
  213. data/lib/flat_api/models/user_public.rb +89 -94
  214. data/lib/flat_api/models/user_public_summary.rb +58 -81
  215. data/lib/flat_api/models/user_signin_link.rb +24 -81
  216. data/lib/flat_api/models/user_signin_link_creation.rb +13 -80
  217. data/lib/flat_api/oauth.rb +128 -0
  218. data/lib/flat_api/pagination.rb +88 -0
  219. data/lib/flat_api/retry.rb +56 -0
  220. data/lib/flat_api/version.rb +4 -4
  221. data/lib/flat_api.rb +70 -5
  222. metadata +98 -330
  223. data/lib/flat_api/models/flat_locales.rb +0 -56
  224. data/spec/api/account_api_spec.rb +0 -47
  225. data/spec/api/class_api_spec.rb +0 -422
  226. data/spec/api/collection_api_spec.rb +0 -158
  227. data/spec/api/edu_resources_api_spec.rb +0 -181
  228. data/spec/api/group_api_spec.rb +0 -71
  229. data/spec/api/organization_api_spec.rb +0 -201
  230. data/spec/api/score_api_spec.rb +0 -440
  231. data/spec/api/task_api_spec.rb +0 -47
  232. data/spec/api/user_api_spec.rb +0 -75
  233. data/spec/models/api_access_token_spec.rb +0 -66
  234. data/spec/models/app_scopes_spec.rb +0 -30
  235. data/spec/models/assignment_capabilities_can_publish_in_class_error_spec.rb +0 -42
  236. data/spec/models/assignment_capabilities_spec.rb +0 -60
  237. data/spec/models/assignment_copy_response_spec.rb +0 -124
  238. data/spec/models/assignment_copy_spec.rb +0 -32
  239. data/spec/models/assignment_copy_to_class_spec.rb +0 -48
  240. data/spec/models/assignment_copy_to_resource_library_spec.rb +0 -42
  241. data/spec/models/assignment_spec.rb +0 -118
  242. data/spec/models/assignment_submission_comment_creation_spec.rb +0 -36
  243. data/spec/models/assignment_submission_comment_spec.rb +0 -72
  244. data/spec/models/assignment_submission_comments_spec.rb +0 -42
  245. data/spec/models/assignment_submission_history_attachment_spec.rb +0 -48
  246. data/spec/models/assignment_submission_history_spec.rb +0 -112
  247. data/spec/models/assignment_submission_history_state_spec.rb +0 -30
  248. data/spec/models/assignment_submission_lti_spec.rb +0 -36
  249. data/spec/models/assignment_submission_playback_inner_spec.rb +0 -42
  250. data/spec/models/assignment_submission_spec.rb +0 -144
  251. data/spec/models/assignment_submission_state_spec.rb +0 -30
  252. data/spec/models/assignment_submission_update_spec.rb +0 -66
  253. data/spec/models/assignment_type_spec.rb +0 -30
  254. data/spec/models/assignment_update_spec.rb +0 -100
  255. data/spec/models/class_assignment_all_of_canvas_spec.rb +0 -42
  256. data/spec/models/class_assignment_all_of_lti_spec.rb +0 -36
  257. data/spec/models/class_assignment_all_of_mfc_spec.rb +0 -42
  258. data/spec/models/class_assignment_spec.rb +0 -216
  259. data/spec/models/class_assignment_update_all_of_google_classroom_spec.rb +0 -36
  260. data/spec/models/class_assignment_update_all_of_microsoft_graph_spec.rb +0 -36
  261. data/spec/models/class_assignment_update_spec.rb +0 -150
  262. data/spec/models/class_attachment_creation_spec.rb +0 -76
  263. data/spec/models/class_creation_spec.rb +0 -64
  264. data/spec/models/class_details_canvas_spec.rb +0 -42
  265. data/spec/models/class_details_clever_spec.rb +0 -76
  266. data/spec/models/class_details_google_classroom_spec.rb +0 -42
  267. data/spec/models/class_details_google_drive_spec.rb +0 -42
  268. data/spec/models/class_details_issues_spec.rb +0 -36
  269. data/spec/models/class_details_issues_sync_inner_spec.rb +0 -52
  270. data/spec/models/class_details_lti_spec.rb +0 -48
  271. data/spec/models/class_details_mfc_spec.rb +0 -42
  272. data/spec/models/class_details_microsoft_graph_spec.rb +0 -36
  273. data/spec/models/class_details_spec.rb +0 -178
  274. data/spec/models/class_grade_level_spec.rb +0 -30
  275. data/spec/models/class_roles_spec.rb +0 -30
  276. data/spec/models/class_state_spec.rb +0 -30
  277. data/spec/models/class_update_spec.rb +0 -64
  278. data/spec/models/collection_app_spec.rb +0 -48
  279. data/spec/models/collection_capabilities_spec.rb +0 -60
  280. data/spec/models/collection_creation_spec.rb +0 -42
  281. data/spec/models/collection_modification_spec.rb +0 -42
  282. data/spec/models/collection_privacy_spec.rb +0 -30
  283. data/spec/models/collection_spec.rb +0 -114
  284. data/spec/models/collection_type_spec.rb +0 -30
  285. data/spec/models/edu_library_spec.rb +0 -62
  286. data/spec/models/edu_resource_capabilities_spec.rb +0 -48
  287. data/spec/models/edu_resource_copy_spec.rb +0 -36
  288. data/spec/models/edu_resource_creation_spec.rb +0 -48
  289. data/spec/models/edu_resource_folder_spec.rb +0 -36
  290. data/spec/models/edu_resource_lti_link_spec.rb +0 -36
  291. data/spec/models/edu_resource_move_spec.rb +0 -36
  292. data/spec/models/edu_resource_privacy_spec.rb +0 -30
  293. data/spec/models/edu_resource_resource_spec.rb +0 -32
  294. data/spec/models/edu_resource_spec.rb +0 -96
  295. data/spec/models/edu_resource_type_spec.rb +0 -30
  296. data/spec/models/edu_resource_update_spec.rb +0 -42
  297. data/spec/models/edu_resource_use_in_class_spec.rb +0 -42
  298. data/spec/models/flat_error_response_spec.rb +0 -54
  299. data/spec/models/flat_locales_spec.rb +0 -30
  300. data/spec/models/google_classroom_coursework_spec.rb +0 -54
  301. data/spec/models/google_classroom_submission_spec.rb +0 -48
  302. data/spec/models/group_details_spec.rb +0 -72
  303. data/spec/models/group_spec.rb +0 -76
  304. data/spec/models/group_type_spec.rb +0 -30
  305. data/spec/models/license_mode_spec.rb +0 -30
  306. data/spec/models/license_sources_spec.rb +0 -30
  307. data/spec/models/lms_name_spec.rb +0 -30
  308. data/spec/models/lti_credentials_creation_spec.rb +0 -42
  309. data/spec/models/lti_credentials_spec.rb +0 -84
  310. data/spec/models/media_attachment_spec.rb +0 -166
  311. data/spec/models/media_score_sharing_mode_spec.rb +0 -30
  312. data/spec/models/microsoft_graph_assignment_spec.rb +0 -54
  313. data/spec/models/microsoft_graph_submission_spec.rb +0 -42
  314. data/spec/models/organization_invitation_creation_spec.rb +0 -46
  315. data/spec/models/organization_invitation_spec.rb +0 -84
  316. data/spec/models/organization_roles_spec.rb +0 -30
  317. data/spec/models/organization_user_access_token_creation_spec.rb +0 -36
  318. data/spec/models/resource_collaborator_creation_spec.rb +0 -72
  319. data/spec/models/resource_collaborator_spec.rb +0 -112
  320. data/spec/models/resource_rights_spec.rb +0 -64
  321. data/spec/models/score_comment_context_spec.rb +0 -78
  322. data/spec/models/score_comment_creation_spec.rb +0 -66
  323. data/spec/models/score_comment_moderation_spec.rb +0 -46
  324. data/spec/models/score_comment_spec.rb +0 -130
  325. data/spec/models/score_comment_update_spec.rb +0 -54
  326. data/spec/models/score_comments_counts_spec.rb +0 -54
  327. data/spec/models/score_creation_builder_data_all_of_builder_data_layout_data_spec.rb +0 -82
  328. data/spec/models/score_creation_builder_data_all_of_builder_data_score_data_instruments_spec.rb +0 -60
  329. data/spec/models/score_creation_builder_data_all_of_builder_data_score_data_spec.rb +0 -66
  330. data/spec/models/score_creation_builder_data_all_of_builder_data_spec.rb +0 -42
  331. data/spec/models/score_creation_builder_data_spec.rb +0 -60
  332. data/spec/models/score_creation_common_spec.rb +0 -54
  333. data/spec/models/score_creation_file_import_spec.rb +0 -76
  334. data/spec/models/score_creation_google_drive_import_spec.rb +0 -60
  335. data/spec/models/score_creation_spec.rb +0 -32
  336. data/spec/models/score_creation_type_spec.rb +0 -30
  337. data/spec/models/score_details_spec.rb +0 -240
  338. data/spec/models/score_fork_spec.rb +0 -48
  339. data/spec/models/score_license_spec.rb +0 -30
  340. data/spec/models/score_likes_counts_spec.rb +0 -48
  341. data/spec/models/score_modification_spec.rb +0 -102
  342. data/spec/models/score_plays_counts_spec.rb +0 -48
  343. data/spec/models/score_privacy_spec.rb +0 -30
  344. data/spec/models/score_revision_creation_spec.rb +0 -58
  345. data/spec/models/score_revision_spec.rb +0 -78
  346. data/spec/models/score_revision_statistics_spec.rb +0 -54
  347. data/spec/models/score_source_spec.rb +0 -36
  348. data/spec/models/score_summary_spec.rb +0 -66
  349. data/spec/models/score_track_creation_spec.rb +0 -66
  350. data/spec/models/score_track_point_spec.rb +0 -52
  351. data/spec/models/score_track_purpose_spec.rb +0 -30
  352. data/spec/models/score_track_spec.rb +0 -108
  353. data/spec/models/score_track_state_spec.rb +0 -30
  354. data/spec/models/score_track_type_spec.rb +0 -30
  355. data/spec/models/score_track_update_spec.rb +0 -54
  356. data/spec/models/score_views_counts_spec.rb +0 -48
  357. data/spec/models/task_export_options_spec.rb +0 -36
  358. data/spec/models/task_progress_spec.rb +0 -42
  359. data/spec/models/task_result_spec.rb +0 -42
  360. data/spec/models/task_spec.rb +0 -100
  361. data/spec/models/tutteo_product_spec.rb +0 -30
  362. data/spec/models/user_admin_update_spec.rb +0 -66
  363. data/spec/models/user_azure_details_spec.rb +0 -48
  364. data/spec/models/user_basics_spec.rb +0 -94
  365. data/spec/models/user_community_profile_links_spec.rb +0 -66
  366. data/spec/models/user_creation_spec.rb +0 -76
  367. data/spec/models/user_details_admin_all_of_license_spec.rb +0 -60
  368. data/spec/models/user_details_admin_spec.rb +0 -142
  369. data/spec/models/user_details_spec.rb +0 -214
  370. data/spec/models/user_public_spec.rb +0 -178
  371. data/spec/models/user_public_summary_spec.rb +0 -118
  372. data/spec/models/user_signin_link_creation_spec.rb +0 -36
  373. data/spec/models/user_signin_link_spec.rb +0 -42
  374. data/spec/spec_helper.rb +0 -111
@@ -0,0 +1,264 @@
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, MuseScore, ABC notation, and many other formats * 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.26.1
7
+ Contact: developers@flat.io
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.24.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module FlatApi
17
+ # LTI 1.3 deployment-based configuration creation
18
+ class LtiConfigurationCreate1p3Deployment < ApiModelBase
19
+ # LTI 1.3 deployment-based creation mode
20
+ attr_accessor :mode
21
+
22
+ # Parent platform key (e.g., canvas, blackboard, schoology, classlink)
23
+ attr_accessor :deployment_type
24
+
25
+ # Deployment identifier provided by the platform
26
+ attr_accessor :deployment_id
27
+
28
+ # OAuth2 client_id for the tenant; required for ClassLink deployments
29
+ attr_accessor :client_id
30
+
31
+ # Value of the custom claim that identifies this specific tenant (for multi-tenant platforms like Schoology)
32
+ attr_accessor :deployment_breakdown_id
33
+
34
+ class EnumAttributeValidator
35
+ attr_reader :datatype
36
+ attr_reader :allowable_values
37
+
38
+ def initialize(datatype, allowable_values)
39
+ @allowable_values = allowable_values.map do |value|
40
+ case datatype.to_s
41
+ when /Integer/i
42
+ value.to_i
43
+ when /Float/i
44
+ value.to_f
45
+ else
46
+ value
47
+ end
48
+ end
49
+ end
50
+
51
+ def valid?(value)
52
+ !value || allowable_values.include?(value)
53
+ end
54
+ end
55
+
56
+ # Attribute mapping from ruby-style variable name to JSON key.
57
+ def self.attribute_map
58
+ {
59
+ :'mode' => :'mode',
60
+ :'deployment_type' => :'deploymentType',
61
+ :'deployment_id' => :'deploymentId',
62
+ :'client_id' => :'clientId',
63
+ :'deployment_breakdown_id' => :'deploymentBreakdownId'
64
+ }
65
+ end
66
+
67
+ # Returns attribute mapping this model knows about
68
+ def self.acceptable_attribute_map
69
+ attribute_map
70
+ end
71
+
72
+ # Returns all the JSON keys this model knows about
73
+ def self.acceptable_attributes
74
+ acceptable_attribute_map.values
75
+ end
76
+
77
+ # Attribute type mapping.
78
+ def self.openapi_types
79
+ {
80
+ :'mode' => :'String',
81
+ :'deployment_type' => :'String',
82
+ :'deployment_id' => :'String',
83
+ :'client_id' => :'String',
84
+ :'deployment_breakdown_id' => :'String'
85
+ }
86
+ end
87
+
88
+ # List of attributes with nullable: true
89
+ def self.openapi_nullable
90
+ Set.new([
91
+ ])
92
+ end
93
+
94
+ # Initializes the object
95
+ # @param [Hash] attributes Model attributes in the form of hash
96
+ def initialize(attributes = {})
97
+ if (!attributes.is_a?(Hash))
98
+ fail ArgumentError, "The input argument (attributes) must be a hash in `FlatApi::LtiConfigurationCreate1p3Deployment` initialize method"
99
+ end
100
+
101
+ # check to see if the attribute exists and convert string to symbol for hash key
102
+ acceptable_attribute_map = self.class.acceptable_attribute_map
103
+ attributes = attributes.each_with_object({}) { |(k, v), h|
104
+ if (!acceptable_attribute_map.key?(k.to_sym))
105
+ fail ArgumentError, "`#{k}` is not a valid attribute in `FlatApi::LtiConfigurationCreate1p3Deployment`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
106
+ end
107
+ h[k.to_sym] = v
108
+ }
109
+
110
+ if attributes.key?(:'mode')
111
+ self.mode = attributes[:'mode']
112
+ else
113
+ self.mode = nil
114
+ end
115
+
116
+ if attributes.key?(:'deployment_type')
117
+ self.deployment_type = attributes[:'deployment_type']
118
+ else
119
+ self.deployment_type = nil
120
+ end
121
+
122
+ if attributes.key?(:'deployment_id')
123
+ self.deployment_id = attributes[:'deployment_id']
124
+ else
125
+ self.deployment_id = nil
126
+ end
127
+
128
+ if attributes.key?(:'client_id')
129
+ self.client_id = attributes[:'client_id']
130
+ end
131
+
132
+ if attributes.key?(:'deployment_breakdown_id')
133
+ self.deployment_breakdown_id = attributes[:'deployment_breakdown_id']
134
+ end
135
+ end
136
+
137
+ # Show invalid properties with the reasons. Usually used together with valid?
138
+ # @return Array for valid properties with the reasons
139
+ def list_invalid_properties
140
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
141
+ invalid_properties = Array.new
142
+ if @mode.nil?
143
+ invalid_properties.push('invalid value for "mode", mode cannot be nil.')
144
+ end
145
+
146
+ if @deployment_type.nil?
147
+ invalid_properties.push('invalid value for "deployment_type", deployment_type cannot be nil.')
148
+ end
149
+
150
+ if @deployment_id.nil?
151
+ invalid_properties.push('invalid value for "deployment_id", deployment_id cannot be nil.')
152
+ end
153
+
154
+ invalid_properties
155
+ end
156
+
157
+ # Check to see if the all the properties in the model are valid
158
+ # @return true if the model is valid
159
+ def valid?
160
+ warn '[DEPRECATED] the `valid?` method is obsolete'
161
+ return false if @mode.nil?
162
+ mode_validator = EnumAttributeValidator.new('String', ["1p3-deployment"])
163
+ return false unless mode_validator.valid?(@mode)
164
+ return false if @deployment_type.nil?
165
+ return false if @deployment_id.nil?
166
+ true
167
+ end
168
+
169
+ # Custom attribute writer method checking allowed values (enum).
170
+ # @param [Object] mode Object to be assigned
171
+ def mode=(mode)
172
+ validator = EnumAttributeValidator.new('String', ["1p3-deployment"])
173
+ unless validator.valid?(mode)
174
+ fail ArgumentError, "invalid value for \"mode\", must be one of #{validator.allowable_values}."
175
+ end
176
+ @mode = mode
177
+ end
178
+
179
+ # Custom attribute writer method with validation
180
+ # @param [Object] deployment_type Value to be assigned
181
+ def deployment_type=(deployment_type)
182
+ if deployment_type.nil?
183
+ fail ArgumentError, 'deployment_type cannot be nil'
184
+ end
185
+
186
+ @deployment_type = deployment_type
187
+ end
188
+
189
+ # Custom attribute writer method with validation
190
+ # @param [Object] deployment_id Value to be assigned
191
+ def deployment_id=(deployment_id)
192
+ if deployment_id.nil?
193
+ fail ArgumentError, 'deployment_id cannot be nil'
194
+ end
195
+
196
+ @deployment_id = deployment_id
197
+ end
198
+
199
+ # Checks equality by comparing each attribute.
200
+ # @param [Object] Object to be compared
201
+ def ==(o)
202
+ return true if self.equal?(o)
203
+ self.class == o.class &&
204
+ mode == o.mode &&
205
+ deployment_type == o.deployment_type &&
206
+ deployment_id == o.deployment_id &&
207
+ client_id == o.client_id &&
208
+ deployment_breakdown_id == o.deployment_breakdown_id
209
+ end
210
+
211
+ # @see the `==` method
212
+ # @param [Object] Object to be compared
213
+ def eql?(o)
214
+ self == o
215
+ end
216
+
217
+ # Calculates hash code according to all attributes.
218
+ # @return [Integer] Hash code
219
+ def hash
220
+ [mode, deployment_type, deployment_id, client_id, deployment_breakdown_id].hash
221
+ end
222
+
223
+ # Builds the object from hash
224
+ # @param [Hash] attributes Model attributes in the form of hash
225
+ # @return [Object] Returns the model itself
226
+ def self.build_from_hash(attributes)
227
+ return nil unless attributes.is_a?(Hash)
228
+ attributes = attributes.transform_keys(&:to_sym)
229
+ transformed_hash = {}
230
+ openapi_types.each_pair do |key, type|
231
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
232
+ transformed_hash["#{key}"] = nil
233
+ elsif type =~ /\AArray<(.*)>/i
234
+ # check to ensure the input is an array given that the attribute
235
+ # is documented as an array but the input is not
236
+ if attributes[attribute_map[key]].is_a?(Array)
237
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
238
+ end
239
+ elsif !attributes[attribute_map[key]].nil?
240
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
241
+ end
242
+ end
243
+ new(transformed_hash)
244
+ end
245
+
246
+ # Returns the object in the form of hash
247
+ # @return [Hash] Returns the object in the form of hash
248
+ def to_hash
249
+ hash = {}
250
+ self.class.attribute_map.each_pair do |attr, param|
251
+ value = self.send(attr)
252
+ if value.nil?
253
+ is_nullable = self.class.openapi_nullable.include?(attr)
254
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
255
+ end
256
+
257
+ hash[param] = _to_hash(value)
258
+ end
259
+ hash
260
+ end
261
+
262
+ end
263
+
264
+ end
@@ -0,0 +1,209 @@
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, MuseScore, ABC notation, and many other formats * 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.26.1
7
+ Contact: developers@flat.io
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.24.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module FlatApi
17
+ # LTI 1.3 dynamic registration configuration creation
18
+ class LtiConfigurationCreate1p3Dynamic < ApiModelBase
19
+ # LTI 1.3 dynamic registration mode
20
+ attr_accessor :mode
21
+
22
+ attr_accessor :platform_info
23
+
24
+ # Optional locale code for registration URL. Input values will be automatically normalized to a supported locale code.
25
+ attr_accessor :locale
26
+
27
+ class EnumAttributeValidator
28
+ attr_reader :datatype
29
+ attr_reader :allowable_values
30
+
31
+ def initialize(datatype, allowable_values)
32
+ @allowable_values = allowable_values.map do |value|
33
+ case datatype.to_s
34
+ when /Integer/i
35
+ value.to_i
36
+ when /Float/i
37
+ value.to_f
38
+ else
39
+ value
40
+ end
41
+ end
42
+ end
43
+
44
+ def valid?(value)
45
+ !value || allowable_values.include?(value)
46
+ end
47
+ end
48
+
49
+ # Attribute mapping from ruby-style variable name to JSON key.
50
+ def self.attribute_map
51
+ {
52
+ :'mode' => :'mode',
53
+ :'platform_info' => :'platformInfo',
54
+ :'locale' => :'locale'
55
+ }
56
+ end
57
+
58
+ # Returns attribute mapping this model knows about
59
+ def self.acceptable_attribute_map
60
+ attribute_map
61
+ end
62
+
63
+ # Returns all the JSON keys this model knows about
64
+ def self.acceptable_attributes
65
+ acceptable_attribute_map.values
66
+ end
67
+
68
+ # Attribute type mapping.
69
+ def self.openapi_types
70
+ {
71
+ :'mode' => :'String',
72
+ :'platform_info' => :'LtiConfigurationCreate1p3DynamicPlatformInfo',
73
+ :'locale' => :'String'
74
+ }
75
+ end
76
+
77
+ # List of attributes with nullable: true
78
+ def self.openapi_nullable
79
+ Set.new([
80
+ ])
81
+ end
82
+
83
+ # Initializes the object
84
+ # @param [Hash] attributes Model attributes in the form of hash
85
+ def initialize(attributes = {})
86
+ if (!attributes.is_a?(Hash))
87
+ fail ArgumentError, "The input argument (attributes) must be a hash in `FlatApi::LtiConfigurationCreate1p3Dynamic` initialize method"
88
+ end
89
+
90
+ # check to see if the attribute exists and convert string to symbol for hash key
91
+ acceptable_attribute_map = self.class.acceptable_attribute_map
92
+ attributes = attributes.each_with_object({}) { |(k, v), h|
93
+ if (!acceptable_attribute_map.key?(k.to_sym))
94
+ fail ArgumentError, "`#{k}` is not a valid attribute in `FlatApi::LtiConfigurationCreate1p3Dynamic`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
95
+ end
96
+ h[k.to_sym] = v
97
+ }
98
+
99
+ if attributes.key?(:'mode')
100
+ self.mode = attributes[:'mode']
101
+ else
102
+ self.mode = nil
103
+ end
104
+
105
+ if attributes.key?(:'platform_info')
106
+ self.platform_info = attributes[:'platform_info']
107
+ end
108
+
109
+ if attributes.key?(:'locale')
110
+ self.locale = attributes[:'locale']
111
+ end
112
+ end
113
+
114
+ # Show invalid properties with the reasons. Usually used together with valid?
115
+ # @return Array for valid properties with the reasons
116
+ def list_invalid_properties
117
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
118
+ invalid_properties = Array.new
119
+ if @mode.nil?
120
+ invalid_properties.push('invalid value for "mode", mode cannot be nil.')
121
+ end
122
+
123
+ invalid_properties
124
+ end
125
+
126
+ # Check to see if the all the properties in the model are valid
127
+ # @return true if the model is valid
128
+ def valid?
129
+ warn '[DEPRECATED] the `valid?` method is obsolete'
130
+ return false if @mode.nil?
131
+ mode_validator = EnumAttributeValidator.new('String', ["1p3-dynamic"])
132
+ return false unless mode_validator.valid?(@mode)
133
+ true
134
+ end
135
+
136
+ # Custom attribute writer method checking allowed values (enum).
137
+ # @param [Object] mode Object to be assigned
138
+ def mode=(mode)
139
+ validator = EnumAttributeValidator.new('String', ["1p3-dynamic"])
140
+ unless validator.valid?(mode)
141
+ fail ArgumentError, "invalid value for \"mode\", must be one of #{validator.allowable_values}."
142
+ end
143
+ @mode = mode
144
+ end
145
+
146
+ # Checks equality by comparing each attribute.
147
+ # @param [Object] Object to be compared
148
+ def ==(o)
149
+ return true if self.equal?(o)
150
+ self.class == o.class &&
151
+ mode == o.mode &&
152
+ platform_info == o.platform_info &&
153
+ locale == o.locale
154
+ end
155
+
156
+ # @see the `==` method
157
+ # @param [Object] Object to be compared
158
+ def eql?(o)
159
+ self == o
160
+ end
161
+
162
+ # Calculates hash code according to all attributes.
163
+ # @return [Integer] Hash code
164
+ def hash
165
+ [mode, platform_info, locale].hash
166
+ end
167
+
168
+ # Builds the object from hash
169
+ # @param [Hash] attributes Model attributes in the form of hash
170
+ # @return [Object] Returns the model itself
171
+ def self.build_from_hash(attributes)
172
+ return nil unless attributes.is_a?(Hash)
173
+ attributes = attributes.transform_keys(&:to_sym)
174
+ transformed_hash = {}
175
+ openapi_types.each_pair do |key, type|
176
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
177
+ transformed_hash["#{key}"] = nil
178
+ elsif type =~ /\AArray<(.*)>/i
179
+ # check to ensure the input is an array given that the attribute
180
+ # is documented as an array but the input is not
181
+ if attributes[attribute_map[key]].is_a?(Array)
182
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
183
+ end
184
+ elsif !attributes[attribute_map[key]].nil?
185
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
186
+ end
187
+ end
188
+ new(transformed_hash)
189
+ end
190
+
191
+ # Returns the object in the form of hash
192
+ # @return [Hash] Returns the object in the form of hash
193
+ def to_hash
194
+ hash = {}
195
+ self.class.attribute_map.each_pair do |attr, param|
196
+ value = self.send(attr)
197
+ if value.nil?
198
+ is_nullable = self.class.openapi_nullable.include?(attr)
199
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
200
+ end
201
+
202
+ hash[param] = _to_hash(value)
203
+ end
204
+ hash
205
+ end
206
+
207
+ end
208
+
209
+ end
@@ -0,0 +1,159 @@
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, MuseScore, ABC notation, and many other formats * 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.26.1
7
+ Contact: developers@flat.io
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.24.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module FlatApi
17
+ # Optional platform information for dynamic registration
18
+ class LtiConfigurationCreate1p3DynamicPlatformInfo < ApiModelBase
19
+ # Platform display name
20
+ attr_accessor :name
21
+
22
+ # Optional platform homepage or admin URL for reference
23
+ attr_accessor :url
24
+
25
+ # Attribute mapping from ruby-style variable name to JSON key.
26
+ def self.attribute_map
27
+ {
28
+ :'name' => :'name',
29
+ :'url' => :'url'
30
+ }
31
+ end
32
+
33
+ # Returns attribute mapping this model knows about
34
+ def self.acceptable_attribute_map
35
+ attribute_map
36
+ end
37
+
38
+ # Returns all the JSON keys this model knows about
39
+ def self.acceptable_attributes
40
+ acceptable_attribute_map.values
41
+ end
42
+
43
+ # Attribute type mapping.
44
+ def self.openapi_types
45
+ {
46
+ :'name' => :'String',
47
+ :'url' => :'String'
48
+ }
49
+ end
50
+
51
+ # List of attributes with nullable: true
52
+ def self.openapi_nullable
53
+ Set.new([
54
+ ])
55
+ end
56
+
57
+ # Initializes the object
58
+ # @param [Hash] attributes Model attributes in the form of hash
59
+ def initialize(attributes = {})
60
+ if (!attributes.is_a?(Hash))
61
+ fail ArgumentError, "The input argument (attributes) must be a hash in `FlatApi::LtiConfigurationCreate1p3DynamicPlatformInfo` initialize method"
62
+ end
63
+
64
+ # check to see if the attribute exists and convert string to symbol for hash key
65
+ acceptable_attribute_map = self.class.acceptable_attribute_map
66
+ attributes = attributes.each_with_object({}) { |(k, v), h|
67
+ if (!acceptable_attribute_map.key?(k.to_sym))
68
+ fail ArgumentError, "`#{k}` is not a valid attribute in `FlatApi::LtiConfigurationCreate1p3DynamicPlatformInfo`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
69
+ end
70
+ h[k.to_sym] = v
71
+ }
72
+
73
+ if attributes.key?(:'name')
74
+ self.name = attributes[:'name']
75
+ end
76
+
77
+ if attributes.key?(:'url')
78
+ self.url = attributes[:'url']
79
+ end
80
+ end
81
+
82
+ # Show invalid properties with the reasons. Usually used together with valid?
83
+ # @return Array for valid properties with the reasons
84
+ def list_invalid_properties
85
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
86
+ invalid_properties = Array.new
87
+ invalid_properties
88
+ end
89
+
90
+ # Check to see if the all the properties in the model are valid
91
+ # @return true if the model is valid
92
+ def valid?
93
+ warn '[DEPRECATED] the `valid?` method is obsolete'
94
+ true
95
+ end
96
+
97
+ # Checks equality by comparing each attribute.
98
+ # @param [Object] Object to be compared
99
+ def ==(o)
100
+ return true if self.equal?(o)
101
+ self.class == o.class &&
102
+ name == o.name &&
103
+ url == o.url
104
+ end
105
+
106
+ # @see the `==` method
107
+ # @param [Object] Object to be compared
108
+ def eql?(o)
109
+ self == o
110
+ end
111
+
112
+ # Calculates hash code according to all attributes.
113
+ # @return [Integer] Hash code
114
+ def hash
115
+ [name, url].hash
116
+ end
117
+
118
+ # Builds the object from hash
119
+ # @param [Hash] attributes Model attributes in the form of hash
120
+ # @return [Object] Returns the model itself
121
+ def self.build_from_hash(attributes)
122
+ return nil unless attributes.is_a?(Hash)
123
+ attributes = attributes.transform_keys(&:to_sym)
124
+ transformed_hash = {}
125
+ openapi_types.each_pair do |key, type|
126
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
127
+ transformed_hash["#{key}"] = nil
128
+ elsif type =~ /\AArray<(.*)>/i
129
+ # check to ensure the input is an array given that the attribute
130
+ # is documented as an array but the input is not
131
+ if attributes[attribute_map[key]].is_a?(Array)
132
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
133
+ end
134
+ elsif !attributes[attribute_map[key]].nil?
135
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
136
+ end
137
+ end
138
+ new(transformed_hash)
139
+ end
140
+
141
+ # Returns the object in the form of hash
142
+ # @return [Hash] Returns the object in the form of hash
143
+ def to_hash
144
+ hash = {}
145
+ self.class.attribute_map.each_pair do |attr, param|
146
+ value = self.send(attr)
147
+ if value.nil?
148
+ is_nullable = self.class.openapi_nullable.include?(attr)
149
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
150
+ end
151
+
152
+ hash[param] = _to_hash(value)
153
+ end
154
+ hash
155
+ end
156
+
157
+ end
158
+
159
+ end