flat_api 0.1.2 → 0.3.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/lib/flat_api/api/account_api.rb +31 -21
- data/lib/flat_api/api/class_api.rb +1405 -405
- data/lib/flat_api/api/collection_api.rb +684 -0
- data/lib/flat_api/api/edu_resources_api.rb +851 -0
- data/lib/flat_api/api/group_api.rb +81 -55
- data/lib/flat_api/api/organization_api.rb +524 -180
- data/lib/flat_api/api/score_api.rb +1034 -570
- data/lib/flat_api/api/task_api.rb +85 -0
- data/lib/flat_api/api/user_api.rb +114 -76
- data/lib/flat_api/api_client.rb +112 -107
- data/lib/flat_api/api_error.rb +24 -4
- data/lib/flat_api/configuration.rb +105 -16
- data/lib/flat_api/models/api_access_token.rb +268 -0
- data/lib/flat_api/models/app_scopes.rb +59 -0
- data/lib/flat_api/models/assignment.rb +192 -101
- data/lib/flat_api/models/assignment_capabilities.rb +283 -0
- data/lib/flat_api/models/assignment_capabilities_can_publish_in_class_error.rb +240 -0
- data/lib/flat_api/models/assignment_copy.rb +80 -169
- data/lib/flat_api/models/assignment_copy_response.rb +430 -0
- data/lib/flat_api/models/assignment_copy_to_class.rb +243 -0
- data/lib/flat_api/models/assignment_copy_to_resource_library.rb +233 -0
- data/lib/flat_api/models/assignment_submission.rb +249 -66
- data/lib/flat_api/models/assignment_submission_comment.rb +276 -0
- data/lib/flat_api/models/assignment_submission_comment_creation.rb +223 -0
- data/lib/flat_api/models/assignment_submission_comments.rb +225 -0
- data/lib/flat_api/models/assignment_submission_history.rb +384 -0
- data/lib/flat_api/models/assignment_submission_history_attachment.rb +235 -0
- data/lib/flat_api/models/assignment_submission_history_state.rb +43 -0
- data/lib/flat_api/models/assignment_submission_lti.rb +222 -0
- data/lib/flat_api/models/assignment_submission_playback_inner.rb +240 -0
- data/lib/flat_api/models/assignment_submission_state.rb +42 -0
- data/lib/flat_api/models/assignment_submission_update.rb +150 -50
- data/lib/flat_api/models/assignment_type.rb +44 -0
- data/lib/flat_api/models/assignment_update.rb +407 -0
- data/lib/flat_api/models/class_assignment.rb +613 -0
- data/lib/flat_api/models/class_assignment_all_of_canvas.rb +226 -0
- data/lib/flat_api/models/class_assignment_all_of_lti.rb +216 -0
- data/lib/flat_api/models/class_assignment_all_of_mfc.rb +226 -0
- data/lib/flat_api/models/class_assignment_update.rb +509 -0
- data/lib/flat_api/models/class_assignment_update_all_of_google_classroom.rb +217 -0
- data/lib/flat_api/models/class_assignment_update_all_of_microsoft_graph.rb +219 -0
- data/lib/flat_api/models/class_attachment_creation.rb +110 -41
- data/lib/flat_api/models/class_creation.rb +144 -43
- data/lib/flat_api/models/class_details.rb +175 -60
- data/lib/flat_api/models/class_details_canvas.rb +61 -34
- data/lib/flat_api/models/class_details_clever.rb +76 -48
- data/lib/flat_api/models/class_details_google_classroom.rb +66 -59
- data/lib/flat_api/models/class_details_google_drive.rb +63 -36
- data/lib/flat_api/models/class_details_issues.rb +218 -0
- data/lib/flat_api/models/class_details_issues_sync_inner.rb +270 -0
- data/lib/flat_api/models/class_details_lti.rb +65 -38
- data/lib/flat_api/models/class_details_mfc.rb +226 -0
- data/lib/flat_api/models/class_details_microsoft_graph.rb +215 -0
- data/lib/flat_api/models/class_grade_level.rb +43 -0
- data/lib/flat_api/models/class_roles.rb +18 -9
- data/lib/flat_api/models/class_state.rb +18 -9
- data/lib/flat_api/models/class_update.rb +144 -42
- data/lib/flat_api/models/collection.rb +373 -0
- data/lib/flat_api/models/collection_app.rb +236 -0
- data/lib/flat_api/models/collection_capabilities.rb +291 -0
- data/lib/flat_api/models/collection_creation.rb +288 -0
- data/lib/flat_api/models/collection_modification.rb +275 -0
- data/lib/flat_api/models/collection_privacy.rb +39 -0
- data/lib/flat_api/models/collection_type.rb +44 -0
- data/lib/flat_api/models/edu_library.rb +292 -0
- data/lib/flat_api/models/edu_resource.rb +366 -0
- data/lib/flat_api/models/edu_resource_capabilities.rb +236 -0
- data/lib/flat_api/models/edu_resource_copy.rb +223 -0
- data/lib/flat_api/models/edu_resource_creation.rb +301 -0
- data/lib/flat_api/models/edu_resource_folder.rb +216 -0
- data/lib/flat_api/models/edu_resource_lti_link.rb +223 -0
- data/lib/flat_api/models/edu_resource_move.rb +223 -0
- data/lib/flat_api/models/edu_resource_privacy.rb +41 -0
- data/lib/flat_api/models/edu_resource_resource.rb +105 -0
- data/lib/flat_api/models/edu_resource_type.rb +40 -0
- data/lib/flat_api/models/edu_resource_update.rb +277 -0
- data/lib/flat_api/models/edu_resource_use_in_class.rb +233 -0
- data/lib/flat_api/models/flat_error_response.rb +79 -38
- data/lib/flat_api/models/flat_locales.rb +30 -10
- data/lib/flat_api/models/google_classroom_coursework.rb +76 -38
- data/lib/flat_api/models/google_classroom_submission.rb +84 -36
- data/lib/flat_api/models/group.rb +72 -44
- data/lib/flat_api/models/group_details.rb +92 -43
- data/lib/flat_api/models/group_type.rb +18 -9
- data/lib/flat_api/models/license_mode.rb +18 -9
- data/lib/flat_api/models/license_sources.rb +21 -9
- data/lib/flat_api/models/lms_name.rb +19 -9
- data/lib/flat_api/models/lti_credentials.rb +95 -46
- data/lib/flat_api/models/lti_credentials_creation.rb +91 -38
- data/lib/flat_api/models/media_attachment.rb +167 -70
- data/lib/flat_api/models/media_score_sharing_mode.rb +19 -9
- data/lib/flat_api/models/microsoft_graph_assignment.rb +248 -0
- data/lib/flat_api/models/microsoft_graph_submission.rb +240 -0
- data/lib/flat_api/models/organization_invitation.rb +139 -44
- data/lib/flat_api/models/organization_invitation_creation.rb +99 -35
- data/lib/flat_api/models/organization_roles.rb +18 -9
- data/lib/flat_api/models/organization_user_access_token_creation.rb +225 -0
- data/lib/flat_api/models/resource_collaborator.rb +403 -0
- data/lib/flat_api/models/{score_collaborator_creation.rb → resource_collaborator_creation.rb} +85 -48
- data/lib/flat_api/models/resource_rights.rb +318 -0
- data/lib/flat_api/models/score_comment.rb +93 -56
- data/lib/flat_api/models/score_comment_context.rb +103 -59
- data/lib/flat_api/models/score_comment_creation.rb +70 -41
- data/lib/flat_api/models/score_comment_moderation.rb +260 -0
- data/lib/flat_api/models/score_comment_update.rb +82 -49
- data/lib/flat_api/models/score_comments_counts.rb +67 -40
- data/lib/flat_api/models/score_creation.rb +81 -215
- data/lib/flat_api/models/score_creation_builder_data.rb +298 -0
- data/lib/flat_api/models/score_creation_builder_data_all_of_builder_data.rb +230 -0
- data/lib/flat_api/models/score_creation_builder_data_all_of_builder_data_layout_data.rb +322 -0
- data/lib/flat_api/models/score_creation_builder_data_all_of_builder_data_score_data.rb +274 -0
- data/lib/flat_api/models/score_creation_builder_data_all_of_builder_data_score_data_instruments.rb +269 -0
- data/lib/flat_api/models/score_creation_common.rb +268 -0
- data/lib/flat_api/models/score_creation_file_import.rb +324 -0
- data/lib/flat_api/models/score_creation_google_drive_import.rb +291 -0
- data/lib/flat_api/models/score_creation_type.rb +19 -9
- data/lib/flat_api/models/score_details.rb +274 -83
- data/lib/flat_api/models/score_fork.rb +94 -32
- data/lib/flat_api/models/score_license.rb +19 -9
- data/lib/flat_api/models/score_likes_counts.rb +83 -35
- data/lib/flat_api/models/score_modification.rb +175 -52
- data/lib/flat_api/models/score_plays_counts.rb +236 -0
- data/lib/flat_api/models/score_privacy.rb +18 -9
- data/lib/flat_api/models/score_revision.rb +80 -43
- data/lib/flat_api/models/score_revision_creation.rb +105 -40
- data/lib/flat_api/models/score_revision_statistics.rb +83 -36
- data/lib/flat_api/models/score_source.rb +61 -35
- data/lib/flat_api/models/score_summary.rb +124 -40
- data/lib/flat_api/models/score_track.rb +172 -51
- data/lib/flat_api/models/score_track_creation.rb +101 -39
- data/lib/flat_api/models/score_track_point.rb +70 -38
- data/lib/flat_api/models/score_track_purpose.rb +40 -0
- data/lib/flat_api/models/score_track_state.rb +18 -9
- data/lib/flat_api/models/score_track_type.rb +18 -9
- data/lib/flat_api/models/score_track_update.rb +88 -37
- data/lib/flat_api/models/score_views_counts.rb +62 -35
- data/lib/flat_api/models/task.rb +364 -0
- data/lib/flat_api/models/task_export_options.rb +218 -0
- data/lib/flat_api/models/task_progress.rb +226 -0
- data/lib/flat_api/models/task_result.rb +226 -0
- data/lib/flat_api/models/tutteo_product.rb +42 -0
- data/lib/flat_api/models/user_admin_update.rb +219 -41
- data/lib/flat_api/models/user_azure_details.rb +235 -0
- data/lib/flat_api/models/user_basics.rb +187 -55
- data/lib/flat_api/models/user_community_profile_links.rb +272 -0
- data/lib/flat_api/models/user_creation.rb +215 -49
- data/lib/flat_api/models/user_details.rb +258 -93
- data/lib/flat_api/models/user_details_admin.rb +220 -68
- data/lib/flat_api/models/user_details_admin_all_of_license.rb +278 -0
- data/lib/flat_api/models/user_public.rb +242 -79
- data/lib/flat_api/models/user_public_summary.rb +201 -61
- data/lib/flat_api/models/user_signin_link.rb +225 -0
- data/lib/flat_api/models/user_signin_link_creation.rb +217 -0
- data/lib/flat_api/version.rb +5 -5
- data/lib/flat_api.rb +87 -15
- data/spec/api/account_api_spec.rb +11 -10
- data/spec/api/class_api_spec.rb +212 -68
- data/spec/api/collection_api_spec.rb +158 -0
- data/spec/api/edu_resources_api_spec.rb +181 -0
- data/spec/api/group_api_spec.rb +14 -15
- data/spec/api/organization_api_spec.rb +78 -39
- data/spec/api/score_api_spec.rb +139 -110
- data/spec/api/task_api_spec.rb +47 -0
- data/spec/api/user_api_spec.rb +28 -26
- data/spec/models/api_access_token_spec.rb +66 -0
- data/spec/models/app_scopes_spec.rb +30 -0
- data/spec/models/assignment_capabilities_can_publish_in_class_error_spec.rb +42 -0
- data/spec/models/assignment_capabilities_spec.rb +60 -0
- data/spec/models/assignment_copy_response_spec.rb +124 -0
- data/spec/models/assignment_copy_spec.rb +13 -23
- data/spec/models/assignment_copy_to_class_spec.rb +48 -0
- data/spec/models/assignment_copy_to_resource_library_spec.rb +42 -0
- data/spec/models/assignment_spec.rb +51 -39
- data/spec/models/assignment_submission_comment_creation_spec.rb +36 -0
- data/spec/models/assignment_submission_comment_spec.rb +72 -0
- data/spec/models/assignment_submission_comments_spec.rb +42 -0
- data/spec/models/assignment_submission_history_attachment_spec.rb +48 -0
- data/spec/models/assignment_submission_history_spec.rb +112 -0
- data/spec/models/assignment_submission_history_state_spec.rb +30 -0
- data/spec/models/assignment_submission_lti_spec.rb +36 -0
- data/spec/models/assignment_submission_playback_inner_spec.rb +42 -0
- data/spec/models/assignment_submission_spec.rb +68 -32
- data/spec/models/assignment_submission_state_spec.rb +30 -0
- data/spec/models/assignment_submission_update_spec.rb +29 -23
- data/spec/models/assignment_type_spec.rb +30 -0
- data/spec/models/assignment_update_spec.rb +100 -0
- data/spec/models/class_assignment_all_of_canvas_spec.rb +42 -0
- data/spec/models/class_assignment_all_of_lti_spec.rb +36 -0
- data/spec/models/class_assignment_all_of_mfc_spec.rb +42 -0
- data/spec/models/class_assignment_spec.rb +216 -0
- data/spec/models/class_assignment_update_all_of_google_classroom_spec.rb +36 -0
- data/spec/models/class_assignment_update_all_of_microsoft_graph_spec.rb +36 -0
- data/spec/models/class_assignment_update_spec.rb +150 -0
- data/spec/models/class_attachment_creation_spec.rb +41 -23
- data/spec/models/class_creation_spec.rb +34 -18
- data/spec/models/class_details_canvas_spec.rb +12 -18
- data/spec/models/class_details_clever_spec.rb +21 -27
- data/spec/models/class_details_google_classroom_spec.rb +12 -30
- data/spec/models/class_details_google_drive_spec.rb +12 -18
- data/spec/models/class_details_issues_spec.rb +36 -0
- data/spec/models/class_details_issues_sync_inner_spec.rb +52 -0
- data/spec/models/class_details_lti_spec.rb +13 -19
- data/spec/models/class_details_mfc_spec.rb +42 -0
- data/spec/models/class_details_microsoft_graph_spec.rb +36 -0
- data/spec/models/class_details_spec.rb +68 -34
- data/spec/models/class_grade_level_spec.rb +30 -0
- data/spec/models/class_roles_spec.rb +10 -16
- data/spec/models/class_state_spec.rb +10 -16
- data/spec/models/class_update_spec.rb +34 -18
- data/spec/models/collection_app_spec.rb +48 -0
- data/spec/models/collection_capabilities_spec.rb +60 -0
- data/spec/models/collection_creation_spec.rb +42 -0
- data/spec/models/collection_modification_spec.rb +42 -0
- data/spec/models/collection_privacy_spec.rb +30 -0
- data/spec/models/collection_spec.rb +114 -0
- data/spec/models/collection_type_spec.rb +30 -0
- data/spec/models/edu_library_spec.rb +62 -0
- data/spec/models/edu_resource_capabilities_spec.rb +48 -0
- data/spec/models/edu_resource_copy_spec.rb +36 -0
- data/spec/models/edu_resource_creation_spec.rb +48 -0
- data/spec/models/edu_resource_folder_spec.rb +36 -0
- data/spec/models/edu_resource_lti_link_spec.rb +36 -0
- data/spec/models/edu_resource_move_spec.rb +36 -0
- data/spec/models/edu_resource_privacy_spec.rb +30 -0
- data/spec/models/edu_resource_resource_spec.rb +32 -0
- data/spec/models/edu_resource_spec.rb +96 -0
- data/spec/models/edu_resource_type_spec.rb +30 -0
- data/spec/models/edu_resource_update_spec.rb +42 -0
- data/spec/models/edu_resource_use_in_class_spec.rb +42 -0
- data/spec/models/flat_error_response_spec.rb +14 -20
- data/spec/models/flat_locales_spec.rb +10 -16
- data/spec/models/google_classroom_coursework_spec.rb +19 -19
- data/spec/models/google_classroom_submission_spec.rb +13 -19
- data/spec/models/group_details_spec.rb +17 -23
- data/spec/models/group_spec.rb +21 -27
- data/spec/models/group_type_spec.rb +10 -16
- data/spec/models/license_mode_spec.rb +10 -16
- data/spec/models/license_sources_spec.rb +10 -16
- data/spec/models/lms_name_spec.rb +10 -16
- data/spec/models/lti_credentials_creation_spec.rb +12 -18
- data/spec/models/lti_credentials_spec.rb +19 -25
- data/spec/models/media_attachment_spec.rb +67 -37
- data/spec/models/media_score_sharing_mode_spec.rb +10 -16
- data/spec/models/microsoft_graph_assignment_spec.rb +54 -0
- data/spec/models/microsoft_graph_submission_spec.rb +42 -0
- data/spec/models/organization_invitation_creation_spec.rb +16 -18
- data/spec/models/organization_invitation_spec.rb +29 -23
- data/spec/models/organization_roles_spec.rb +10 -16
- data/spec/models/organization_user_access_token_creation_spec.rb +36 -0
- data/spec/models/resource_collaborator_creation_spec.rb +72 -0
- data/spec/models/resource_collaborator_spec.rb +112 -0
- data/spec/models/resource_rights_spec.rb +64 -0
- data/spec/models/score_comment_context_spec.rb +23 -23
- data/spec/models/score_comment_creation_spec.rb +16 -22
- data/spec/models/score_comment_moderation_spec.rb +46 -0
- data/spec/models/score_comment_spec.rb +35 -35
- data/spec/models/score_comment_update_spec.rb +14 -20
- data/spec/models/score_comments_counts_spec.rb +14 -20
- data/spec/models/score_creation_builder_data_all_of_builder_data_layout_data_spec.rb +82 -0
- data/spec/models/score_creation_builder_data_all_of_builder_data_score_data_instruments_spec.rb +60 -0
- data/spec/models/score_creation_builder_data_all_of_builder_data_score_data_spec.rb +66 -0
- data/spec/models/score_creation_builder_data_all_of_builder_data_spec.rb +42 -0
- data/spec/models/score_creation_builder_data_spec.rb +60 -0
- data/spec/models/score_creation_common_spec.rb +54 -0
- data/spec/models/score_creation_file_import_spec.rb +76 -0
- data/spec/models/score_creation_google_drive_import_spec.rb +60 -0
- data/spec/models/score_creation_spec.rb +12 -52
- data/spec/models/score_creation_type_spec.rb +10 -16
- data/spec/models/score_details_spec.rb +75 -45
- data/spec/models/score_fork_spec.rb +27 -15
- data/spec/models/score_license_spec.rb +10 -16
- data/spec/models/score_likes_counts_spec.rb +13 -19
- data/spec/models/score_modification_spec.rb +51 -21
- data/spec/models/score_plays_counts_spec.rb +48 -0
- data/spec/models/score_privacy_spec.rb +10 -16
- data/spec/models/score_revision_creation_spec.rb +18 -20
- data/spec/models/score_revision_spec.rb +23 -23
- data/spec/models/score_revision_statistics_spec.rb +24 -18
- data/spec/models/score_source_spec.rb +11 -17
- data/spec/models/score_summary_spec.rb +16 -22
- data/spec/models/score_track_creation_spec.rb +21 -21
- data/spec/models/score_track_point_spec.rb +17 -23
- data/spec/models/score_track_purpose_spec.rb +30 -0
- data/spec/models/score_track_spec.rb +28 -28
- data/spec/models/score_track_state_spec.rb +10 -16
- data/spec/models/score_track_type_spec.rb +10 -16
- data/spec/models/score_track_update_spec.rb +14 -20
- data/spec/models/score_views_counts_spec.rb +13 -19
- data/spec/models/task_export_options_spec.rb +36 -0
- data/spec/models/task_progress_spec.rb +42 -0
- data/spec/models/task_result_spec.rb +42 -0
- data/spec/models/task_spec.rb +100 -0
- data/spec/models/tutteo_product_spec.rb +30 -0
- data/spec/models/user_admin_update_spec.rb +36 -18
- data/spec/models/user_azure_details_spec.rb +48 -0
- data/spec/models/user_basics_spec.rb +47 -25
- data/spec/models/user_community_profile_links_spec.rb +66 -0
- data/spec/models/user_creation_spec.rb +36 -20
- data/spec/models/user_details_admin_all_of_license_spec.rb +60 -0
- data/spec/models/user_details_admin_spec.rb +60 -32
- data/spec/models/user_details_spec.rb +93 -45
- data/spec/models/user_public_spec.rb +71 -37
- data/spec/models/user_public_summary_spec.rb +51 -29
- data/spec/models/user_signin_link_creation_spec.rb +36 -0
- data/spec/models/user_signin_link_spec.rb +42 -0
- data/spec/spec_helper.rb +4 -4
- metadata +299 -312
- data/CHANGELOG.md +0 -13
- data/Gemfile +0 -7
- data/README.md +0 -249
- data/Rakefile +0 -8
- data/docs/AccountApi.md +0 -55
- data/docs/Assignment.md +0 -18
- data/docs/AssignmentCopy.md +0 -8
- data/docs/AssignmentCreation.md +0 -12
- data/docs/AssignmentSubmission.md +0 -19
- data/docs/AssignmentSubmissionUpdate.md +0 -11
- data/docs/ClassApi.md +0 -1051
- data/docs/ClassAttachmentCreation.md +0 -10
- data/docs/ClassCreation.md +0 -9
- data/docs/ClassDetails.md +0 -25
- data/docs/ClassDetailsCanvas.md +0 -9
- data/docs/ClassDetailsClever.md +0 -14
- data/docs/ClassDetailsGoogleClassroom.md +0 -11
- data/docs/ClassDetailsGoogleDrive.md +0 -9
- data/docs/ClassDetailsLti.md +0 -10
- data/docs/ClassRoles.md +0 -7
- data/docs/ClassState.md +0 -7
- data/docs/ClassUpdate.md +0 -9
- data/docs/FlatErrorResponse.md +0 -11
- data/docs/FlatLocales.md +0 -7
- data/docs/GoogleClassroomCoursework.md +0 -10
- data/docs/GoogleClassroomSubmission.md +0 -10
- data/docs/Group.md +0 -14
- data/docs/GroupApi.md +0 -167
- data/docs/GroupDetails.md +0 -14
- data/docs/GroupType.md +0 -7
- data/docs/LicenseMode.md +0 -7
- data/docs/LicenseSources.md +0 -7
- data/docs/LmsName.md +0 -7
- data/docs/LtiCredentials.md +0 -16
- data/docs/LtiCredentialsCreation.md +0 -9
- data/docs/MediaAttachment.md +0 -23
- data/docs/MediaScoreSharingMode.md +0 -7
- data/docs/OrganizationApi.md +0 -538
- data/docs/OrganizationInvitation.md +0 -14
- data/docs/OrganizationInvitationCreation.md +0 -9
- data/docs/OrganizationRoles.md +0 -7
- data/docs/ScoreApi.md +0 -1605
- data/docs/ScoreCollaborator.md +0 -15
- data/docs/ScoreCollaboratorCreation.md +0 -13
- data/docs/ScoreComment.md +0 -22
- data/docs/ScoreCommentContext.md +0 -14
- data/docs/ScoreCommentCreation.md +0 -13
- data/docs/ScoreCommentUpdate.md +0 -11
- data/docs/ScoreCommentsCounts.md +0 -11
- data/docs/ScoreCreation.md +0 -13
- data/docs/ScoreCreationType.md +0 -7
- data/docs/ScoreData.md +0 -7
- data/docs/ScoreDataEncoding.md +0 -7
- data/docs/ScoreDetails.md +0 -36
- data/docs/ScoreFork.md +0 -7
- data/docs/ScoreLicense.md +0 -7
- data/docs/ScoreLikesCounts.md +0 -10
- data/docs/ScoreModification.md +0 -13
- data/docs/ScorePrivacy.md +0 -7
- data/docs/ScoreRevision.md +0 -14
- data/docs/ScoreRevisionCreation.md +0 -11
- data/docs/ScoreRevisionStatistics.md +0 -9
- data/docs/ScoreRights.md +0 -10
- data/docs/ScoreSource.md +0 -8
- data/docs/ScoreSummary.md +0 -13
- data/docs/ScoreTrack.md +0 -19
- data/docs/ScoreTrackCreation.md +0 -12
- data/docs/ScoreTrackPoint.md +0 -10
- data/docs/ScoreTrackState.md +0 -7
- data/docs/ScoreTrackType.md +0 -7
- data/docs/ScoreTrackUpdate.md +0 -11
- data/docs/ScoreViewsCounts.md +0 -10
- data/docs/UserAdminUpdate.md +0 -9
- data/docs/UserApi.md +0 -173
- data/docs/UserBasics.md +0 -13
- data/docs/UserCreation.md +0 -11
- data/docs/UserDetails.md +0 -28
- data/docs/UserDetailsAdmin.md +0 -20
- data/docs/UserDetailsAdminLicense.md +0 -12
- data/docs/UserInstruments.md +0 -7
- data/docs/UserPublic.md +0 -25
- data/docs/UserPublicSummary.md +0 -17
- data/flat_api.gemspec +0 -48
- data/git_push.sh +0 -55
- data/lib/flat_api/models/assignment_creation.rb +0 -230
- data/lib/flat_api/models/score_collaborator.rb +0 -263
- data/lib/flat_api/models/score_data.rb +0 -179
- data/lib/flat_api/models/score_data_encoding.rb +0 -30
- data/lib/flat_api/models/score_rights.rb +0 -215
- data/lib/flat_api/models/user_details_admin_license.rb +0 -227
- data/lib/flat_api/models/user_instruments.rb +0 -179
- data/spec/api_client_spec.rb +0 -226
- data/spec/configuration_spec.rb +0 -42
- data/spec/models/assignment_creation_spec.rb +0 -66
- data/spec/models/score_collaborator_creation_spec.rb +0 -72
- data/spec/models/score_collaborator_spec.rb +0 -84
- data/spec/models/score_data_encoding_spec.rb +0 -36
- data/spec/models/score_data_spec.rb +0 -36
- data/spec/models/score_rights_spec.rb +0 -48
- data/spec/models/user_details_admin_license_spec.rb +0 -66
- data/spec/models/user_instruments_spec.rb +0 -36
@@ -1,16 +1,17 @@
|
|
1
1
|
=begin
|
2
2
|
#Flat API
|
3
3
|
|
4
|
-
#The Flat API allows you to easily extend the abilities of the [Flat Platform](https://flat.io), with a wide range of use cases including the following: * Creating and importing new music scores using MusicXML
|
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
|
6
|
+
The version of the OpenAPI document: 2.20.0
|
7
7
|
Contact: developers@flat.io
|
8
|
-
Generated by: https://
|
9
|
-
|
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
|
# A classroom
|
@@ -51,16 +52,51 @@ module FlatApi
|
|
51
52
|
|
52
53
|
attr_accessor :teachers_group
|
53
54
|
|
55
|
+
attr_accessor :issues
|
56
|
+
|
54
57
|
attr_accessor :google_classroom
|
55
58
|
|
56
59
|
attr_accessor :google_drive
|
57
60
|
|
61
|
+
attr_accessor :microsoft_graph
|
62
|
+
|
58
63
|
attr_accessor :lti
|
59
64
|
|
60
65
|
attr_accessor :canvas
|
61
66
|
|
67
|
+
attr_accessor :mfc
|
68
|
+
|
62
69
|
attr_accessor :clever
|
63
70
|
|
71
|
+
attr_accessor :level
|
72
|
+
|
73
|
+
# Specific skills that will be focused in classroom
|
74
|
+
attr_accessor :skills_focused
|
75
|
+
|
76
|
+
# Number of students in the classroom
|
77
|
+
attr_accessor :size
|
78
|
+
|
79
|
+
class EnumAttributeValidator
|
80
|
+
attr_reader :datatype
|
81
|
+
attr_reader :allowable_values
|
82
|
+
|
83
|
+
def initialize(datatype, allowable_values)
|
84
|
+
@allowable_values = allowable_values.map do |value|
|
85
|
+
case datatype.to_s
|
86
|
+
when /Integer/i
|
87
|
+
value.to_i
|
88
|
+
when /Float/i
|
89
|
+
value.to_f
|
90
|
+
else
|
91
|
+
value
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
95
|
+
|
96
|
+
def valid?(value)
|
97
|
+
!value || allowable_values.include?(value)
|
98
|
+
end
|
99
|
+
end
|
64
100
|
|
65
101
|
# Attribute mapping from ruby-style variable name to JSON key.
|
66
102
|
def self.attribute_map
|
@@ -78,16 +114,27 @@ module FlatApi
|
|
78
114
|
:'assignments_count' => :'assignmentsCount',
|
79
115
|
:'students_group' => :'studentsGroup',
|
80
116
|
:'teachers_group' => :'teachersGroup',
|
117
|
+
:'issues' => :'issues',
|
81
118
|
:'google_classroom' => :'googleClassroom',
|
82
119
|
:'google_drive' => :'googleDrive',
|
120
|
+
:'microsoft_graph' => :'microsoftGraph',
|
83
121
|
:'lti' => :'lti',
|
84
122
|
:'canvas' => :'canvas',
|
85
|
-
:'
|
123
|
+
:'mfc' => :'mfc',
|
124
|
+
:'clever' => :'clever',
|
125
|
+
:'level' => :'level',
|
126
|
+
:'skills_focused' => :'skillsFocused',
|
127
|
+
:'size' => :'size'
|
86
128
|
}
|
87
129
|
end
|
88
130
|
|
131
|
+
# Returns all the JSON keys this model knows about
|
132
|
+
def self.acceptable_attributes
|
133
|
+
attribute_map.values
|
134
|
+
end
|
135
|
+
|
89
136
|
# Attribute type mapping.
|
90
|
-
def self.
|
137
|
+
def self.openapi_types
|
91
138
|
{
|
92
139
|
:'id' => :'String',
|
93
140
|
:'state' => :'ClassState',
|
@@ -96,113 +143,167 @@ module FlatApi
|
|
96
143
|
:'description' => :'String',
|
97
144
|
:'organization' => :'String',
|
98
145
|
:'owner' => :'String',
|
99
|
-
:'creation_date' => :'
|
146
|
+
:'creation_date' => :'Time',
|
100
147
|
:'enrollment_code' => :'String',
|
101
148
|
:'theme' => :'String',
|
102
149
|
:'assignments_count' => :'Float',
|
103
150
|
:'students_group' => :'GroupDetails',
|
104
151
|
:'teachers_group' => :'GroupDetails',
|
152
|
+
:'issues' => :'ClassDetailsIssues',
|
105
153
|
:'google_classroom' => :'ClassDetailsGoogleClassroom',
|
106
154
|
:'google_drive' => :'ClassDetailsGoogleDrive',
|
155
|
+
:'microsoft_graph' => :'ClassDetailsMicrosoftGraph',
|
107
156
|
:'lti' => :'ClassDetailsLti',
|
108
157
|
:'canvas' => :'ClassDetailsCanvas',
|
109
|
-
:'
|
158
|
+
:'mfc' => :'ClassDetailsMfc',
|
159
|
+
:'clever' => :'ClassDetailsClever',
|
160
|
+
:'level' => :'ClassGradeLevel',
|
161
|
+
:'skills_focused' => :'Array<String>',
|
162
|
+
:'size' => :'Float'
|
110
163
|
}
|
111
164
|
end
|
112
165
|
|
166
|
+
# List of attributes with nullable: true
|
167
|
+
def self.openapi_nullable
|
168
|
+
Set.new([
|
169
|
+
:'size'
|
170
|
+
])
|
171
|
+
end
|
172
|
+
|
113
173
|
# Initializes the object
|
114
174
|
# @param [Hash] attributes Model attributes in the form of hash
|
115
175
|
def initialize(attributes = {})
|
116
|
-
|
176
|
+
if (!attributes.is_a?(Hash))
|
177
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `FlatApi::ClassDetails` initialize method"
|
178
|
+
end
|
117
179
|
|
118
|
-
# convert string to symbol for hash key
|
119
|
-
attributes = attributes.each_with_object({}){|(k,v), h|
|
180
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
181
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
182
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
183
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `FlatApi::ClassDetails`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
184
|
+
end
|
185
|
+
h[k.to_sym] = v
|
186
|
+
}
|
120
187
|
|
121
|
-
if attributes.
|
188
|
+
if attributes.key?(:'id')
|
122
189
|
self.id = attributes[:'id']
|
190
|
+
else
|
191
|
+
self.id = nil
|
123
192
|
end
|
124
193
|
|
125
|
-
if attributes.
|
194
|
+
if attributes.key?(:'state')
|
126
195
|
self.state = attributes[:'state']
|
127
196
|
end
|
128
197
|
|
129
|
-
if attributes.
|
198
|
+
if attributes.key?(:'name')
|
130
199
|
self.name = attributes[:'name']
|
131
200
|
end
|
132
201
|
|
133
|
-
if attributes.
|
202
|
+
if attributes.key?(:'section')
|
134
203
|
self.section = attributes[:'section']
|
135
204
|
end
|
136
205
|
|
137
|
-
if attributes.
|
206
|
+
if attributes.key?(:'description')
|
138
207
|
self.description = attributes[:'description']
|
139
208
|
end
|
140
209
|
|
141
|
-
if attributes.
|
210
|
+
if attributes.key?(:'organization')
|
142
211
|
self.organization = attributes[:'organization']
|
143
212
|
end
|
144
213
|
|
145
|
-
if attributes.
|
214
|
+
if attributes.key?(:'owner')
|
146
215
|
self.owner = attributes[:'owner']
|
147
216
|
end
|
148
217
|
|
149
|
-
if attributes.
|
150
|
-
self.creation_date = attributes[:'
|
218
|
+
if attributes.key?(:'creation_date')
|
219
|
+
self.creation_date = attributes[:'creation_date']
|
151
220
|
end
|
152
221
|
|
153
|
-
if attributes.
|
154
|
-
self.enrollment_code = attributes[:'
|
222
|
+
if attributes.key?(:'enrollment_code')
|
223
|
+
self.enrollment_code = attributes[:'enrollment_code']
|
155
224
|
end
|
156
225
|
|
157
|
-
if attributes.
|
226
|
+
if attributes.key?(:'theme')
|
158
227
|
self.theme = attributes[:'theme']
|
159
228
|
end
|
160
229
|
|
161
|
-
if attributes.
|
162
|
-
self.assignments_count = attributes[:'
|
230
|
+
if attributes.key?(:'assignments_count')
|
231
|
+
self.assignments_count = attributes[:'assignments_count']
|
232
|
+
end
|
233
|
+
|
234
|
+
if attributes.key?(:'students_group')
|
235
|
+
self.students_group = attributes[:'students_group']
|
236
|
+
end
|
237
|
+
|
238
|
+
if attributes.key?(:'teachers_group')
|
239
|
+
self.teachers_group = attributes[:'teachers_group']
|
163
240
|
end
|
164
241
|
|
165
|
-
if attributes.
|
166
|
-
self.
|
242
|
+
if attributes.key?(:'issues')
|
243
|
+
self.issues = attributes[:'issues']
|
167
244
|
end
|
168
245
|
|
169
|
-
if attributes.
|
170
|
-
self.
|
246
|
+
if attributes.key?(:'google_classroom')
|
247
|
+
self.google_classroom = attributes[:'google_classroom']
|
171
248
|
end
|
172
249
|
|
173
|
-
if attributes.
|
174
|
-
self.
|
250
|
+
if attributes.key?(:'google_drive')
|
251
|
+
self.google_drive = attributes[:'google_drive']
|
175
252
|
end
|
176
253
|
|
177
|
-
if attributes.
|
178
|
-
self.
|
254
|
+
if attributes.key?(:'microsoft_graph')
|
255
|
+
self.microsoft_graph = attributes[:'microsoft_graph']
|
179
256
|
end
|
180
257
|
|
181
|
-
if attributes.
|
258
|
+
if attributes.key?(:'lti')
|
182
259
|
self.lti = attributes[:'lti']
|
183
260
|
end
|
184
261
|
|
185
|
-
if attributes.
|
262
|
+
if attributes.key?(:'canvas')
|
186
263
|
self.canvas = attributes[:'canvas']
|
187
264
|
end
|
188
265
|
|
189
|
-
if attributes.
|
266
|
+
if attributes.key?(:'mfc')
|
267
|
+
self.mfc = attributes[:'mfc']
|
268
|
+
end
|
269
|
+
|
270
|
+
if attributes.key?(:'clever')
|
190
271
|
self.clever = attributes[:'clever']
|
191
272
|
end
|
192
273
|
|
274
|
+
if attributes.key?(:'level')
|
275
|
+
self.level = attributes[:'level']
|
276
|
+
end
|
277
|
+
|
278
|
+
if attributes.key?(:'skills_focused')
|
279
|
+
if (value = attributes[:'skills_focused']).is_a?(Array)
|
280
|
+
self.skills_focused = value
|
281
|
+
end
|
282
|
+
end
|
283
|
+
|
284
|
+
if attributes.key?(:'size')
|
285
|
+
self.size = attributes[:'size']
|
286
|
+
end
|
193
287
|
end
|
194
288
|
|
195
289
|
# Show invalid properties with the reasons. Usually used together with valid?
|
196
290
|
# @return Array for valid properties with the reasons
|
197
291
|
def list_invalid_properties
|
292
|
+
warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
|
198
293
|
invalid_properties = Array.new
|
199
|
-
|
294
|
+
if @id.nil?
|
295
|
+
invalid_properties.push('invalid value for "id", id cannot be nil.')
|
296
|
+
end
|
297
|
+
|
298
|
+
invalid_properties
|
200
299
|
end
|
201
300
|
|
202
301
|
# Check to see if the all the properties in the model are valid
|
203
302
|
# @return true if the model is valid
|
204
303
|
def valid?
|
205
|
-
|
304
|
+
warn '[DEPRECATED] the `valid?` method is obsolete'
|
305
|
+
return false if @id.nil?
|
306
|
+
true
|
206
307
|
end
|
207
308
|
|
208
309
|
# Checks equality by comparing each attribute.
|
@@ -223,11 +324,17 @@ module FlatApi
|
|
223
324
|
assignments_count == o.assignments_count &&
|
224
325
|
students_group == o.students_group &&
|
225
326
|
teachers_group == o.teachers_group &&
|
327
|
+
issues == o.issues &&
|
226
328
|
google_classroom == o.google_classroom &&
|
227
329
|
google_drive == o.google_drive &&
|
330
|
+
microsoft_graph == o.microsoft_graph &&
|
228
331
|
lti == o.lti &&
|
229
332
|
canvas == o.canvas &&
|
230
|
-
|
333
|
+
mfc == o.mfc &&
|
334
|
+
clever == o.clever &&
|
335
|
+
level == o.level &&
|
336
|
+
skills_focused == o.skills_focused &&
|
337
|
+
size == o.size
|
231
338
|
end
|
232
339
|
|
233
340
|
# @see the `==` method
|
@@ -237,39 +344,42 @@ module FlatApi
|
|
237
344
|
end
|
238
345
|
|
239
346
|
# Calculates hash code according to all attributes.
|
240
|
-
# @return [
|
347
|
+
# @return [Integer] Hash code
|
241
348
|
def hash
|
242
|
-
[id, state, name, section, description, organization, owner, creation_date, enrollment_code, theme, assignments_count, students_group, teachers_group, google_classroom, google_drive, lti, canvas, clever].hash
|
349
|
+
[id, state, name, section, description, organization, owner, creation_date, enrollment_code, theme, assignments_count, students_group, teachers_group, issues, google_classroom, google_drive, microsoft_graph, lti, canvas, mfc, clever, level, skills_focused, size].hash
|
243
350
|
end
|
244
351
|
|
245
352
|
# Builds the object from hash
|
246
353
|
# @param [Hash] attributes Model attributes in the form of hash
|
247
354
|
# @return [Object] Returns the model itself
|
248
|
-
def build_from_hash(attributes)
|
355
|
+
def self.build_from_hash(attributes)
|
249
356
|
return nil unless attributes.is_a?(Hash)
|
250
|
-
|
251
|
-
|
252
|
-
|
357
|
+
attributes = attributes.transform_keys(&:to_sym)
|
358
|
+
transformed_hash = {}
|
359
|
+
openapi_types.each_pair do |key, type|
|
360
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
361
|
+
transformed_hash["#{key}"] = nil
|
362
|
+
elsif type =~ /\AArray<(.*)>/i
|
363
|
+
# check to ensure the input is an array given that the attribute
|
253
364
|
# is documented as an array but the input is not
|
254
|
-
if attributes[
|
255
|
-
|
365
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
366
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
256
367
|
end
|
257
|
-
elsif !attributes[
|
258
|
-
|
259
|
-
end
|
368
|
+
elsif !attributes[attribute_map[key]].nil?
|
369
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
370
|
+
end
|
260
371
|
end
|
261
|
-
|
262
|
-
self
|
372
|
+
new(transformed_hash)
|
263
373
|
end
|
264
374
|
|
265
375
|
# Deserializes the data based on type
|
266
376
|
# @param string type Data type
|
267
377
|
# @param string value Value to be deserialized
|
268
378
|
# @return [Object] Deserialized data
|
269
|
-
def _deserialize(type, value)
|
379
|
+
def self._deserialize(type, value)
|
270
380
|
case type.to_sym
|
271
|
-
when :
|
272
|
-
|
381
|
+
when :Time
|
382
|
+
Time.parse(value)
|
273
383
|
when :Date
|
274
384
|
Date.parse(value)
|
275
385
|
when :String
|
@@ -278,7 +388,7 @@ module FlatApi
|
|
278
388
|
value.to_i
|
279
389
|
when :Float
|
280
390
|
value.to_f
|
281
|
-
when :
|
391
|
+
when :Boolean
|
282
392
|
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
283
393
|
true
|
284
394
|
else
|
@@ -299,8 +409,9 @@ module FlatApi
|
|
299
409
|
end
|
300
410
|
end
|
301
411
|
else # model
|
302
|
-
|
303
|
-
|
412
|
+
# models (e.g. Pet) or oneOf
|
413
|
+
klass = FlatApi.const_get(type)
|
414
|
+
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
304
415
|
end
|
305
416
|
end
|
306
417
|
|
@@ -322,7 +433,11 @@ module FlatApi
|
|
322
433
|
hash = {}
|
323
434
|
self.class.attribute_map.each_pair do |attr, param|
|
324
435
|
value = self.send(attr)
|
325
|
-
|
436
|
+
if value.nil?
|
437
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
438
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
439
|
+
end
|
440
|
+
|
326
441
|
hash[param] = _to_hash(value)
|
327
442
|
end
|
328
443
|
hash
|
@@ -334,7 +449,7 @@ module FlatApi
|
|
334
449
|
# @return [Hash] Returns the value in the form of hash
|
335
450
|
def _to_hash(value)
|
336
451
|
if value.is_a?(Array)
|
337
|
-
value.compact.map{ |v| _to_hash(v) }
|
452
|
+
value.compact.map { |v| _to_hash(v) }
|
338
453
|
elsif value.is_a?(Hash)
|
339
454
|
{}.tap do |hash|
|
340
455
|
value.each { |k, v| hash[k] = _to_hash(v) }
|
@@ -1,16 +1,17 @@
|
|
1
1
|
=begin
|
2
2
|
#Flat API
|
3
3
|
|
4
|
-
#The Flat API allows you to easily extend the abilities of the [Flat Platform](https://flat.io), with a wide range of use cases including the following: * Creating and importing new music scores using MusicXML
|
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
|
6
|
+
The version of the OpenAPI document: 2.20.0
|
7
7
|
Contact: developers@flat.io
|
8
|
-
Generated by: https://
|
9
|
-
|
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
|
# Meta information provided by Canvs LMS
|
@@ -21,7 +22,6 @@ module FlatApi
|
|
21
22
|
# Canvas instance domain (e.g. \"canvas.instructure.com\")
|
22
23
|
attr_accessor :domain
|
23
24
|
|
24
|
-
|
25
25
|
# Attribute mapping from ruby-style variable name to JSON key.
|
26
26
|
def self.attribute_map
|
27
27
|
{
|
@@ -30,43 +30,62 @@ module FlatApi
|
|
30
30
|
}
|
31
31
|
end
|
32
32
|
|
33
|
+
# Returns all the JSON keys this model knows about
|
34
|
+
def self.acceptable_attributes
|
35
|
+
attribute_map.values
|
36
|
+
end
|
37
|
+
|
33
38
|
# Attribute type mapping.
|
34
|
-
def self.
|
39
|
+
def self.openapi_types
|
35
40
|
{
|
36
41
|
:'id' => :'String',
|
37
42
|
:'domain' => :'String'
|
38
43
|
}
|
39
44
|
end
|
40
45
|
|
46
|
+
# List of attributes with nullable: true
|
47
|
+
def self.openapi_nullable
|
48
|
+
Set.new([
|
49
|
+
])
|
50
|
+
end
|
51
|
+
|
41
52
|
# Initializes the object
|
42
53
|
# @param [Hash] attributes Model attributes in the form of hash
|
43
54
|
def initialize(attributes = {})
|
44
|
-
|
55
|
+
if (!attributes.is_a?(Hash))
|
56
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `FlatApi::ClassDetailsCanvas` initialize method"
|
57
|
+
end
|
45
58
|
|
46
|
-
# convert string to symbol for hash key
|
47
|
-
attributes = attributes.each_with_object({}){|(k,v), h|
|
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::ClassDetailsCanvas`. 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
|
+
}
|
48
66
|
|
49
|
-
if attributes.
|
67
|
+
if attributes.key?(:'id')
|
50
68
|
self.id = attributes[:'id']
|
51
69
|
end
|
52
70
|
|
53
|
-
if attributes.
|
71
|
+
if attributes.key?(:'domain')
|
54
72
|
self.domain = attributes[:'domain']
|
55
73
|
end
|
56
|
-
|
57
74
|
end
|
58
75
|
|
59
76
|
# Show invalid properties with the reasons. Usually used together with valid?
|
60
77
|
# @return Array for valid properties with the reasons
|
61
78
|
def list_invalid_properties
|
79
|
+
warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
|
62
80
|
invalid_properties = Array.new
|
63
|
-
|
81
|
+
invalid_properties
|
64
82
|
end
|
65
83
|
|
66
84
|
# Check to see if the all the properties in the model are valid
|
67
85
|
# @return true if the model is valid
|
68
86
|
def valid?
|
69
|
-
|
87
|
+
warn '[DEPRECATED] the `valid?` method is obsolete'
|
88
|
+
true
|
70
89
|
end
|
71
90
|
|
72
91
|
# Checks equality by comparing each attribute.
|
@@ -85,7 +104,7 @@ module FlatApi
|
|
85
104
|
end
|
86
105
|
|
87
106
|
# Calculates hash code according to all attributes.
|
88
|
-
# @return [
|
107
|
+
# @return [Integer] Hash code
|
89
108
|
def hash
|
90
109
|
[id, domain].hash
|
91
110
|
end
|
@@ -93,31 +112,34 @@ module FlatApi
|
|
93
112
|
# Builds the object from hash
|
94
113
|
# @param [Hash] attributes Model attributes in the form of hash
|
95
114
|
# @return [Object] Returns the model itself
|
96
|
-
def build_from_hash(attributes)
|
115
|
+
def self.build_from_hash(attributes)
|
97
116
|
return nil unless attributes.is_a?(Hash)
|
98
|
-
|
99
|
-
|
100
|
-
|
117
|
+
attributes = attributes.transform_keys(&:to_sym)
|
118
|
+
transformed_hash = {}
|
119
|
+
openapi_types.each_pair do |key, type|
|
120
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
121
|
+
transformed_hash["#{key}"] = nil
|
122
|
+
elsif type =~ /\AArray<(.*)>/i
|
123
|
+
# check to ensure the input is an array given that the attribute
|
101
124
|
# is documented as an array but the input is not
|
102
|
-
if attributes[
|
103
|
-
|
125
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
126
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
104
127
|
end
|
105
|
-
elsif !attributes[
|
106
|
-
|
107
|
-
end
|
128
|
+
elsif !attributes[attribute_map[key]].nil?
|
129
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
130
|
+
end
|
108
131
|
end
|
109
|
-
|
110
|
-
self
|
132
|
+
new(transformed_hash)
|
111
133
|
end
|
112
134
|
|
113
135
|
# Deserializes the data based on type
|
114
136
|
# @param string type Data type
|
115
137
|
# @param string value Value to be deserialized
|
116
138
|
# @return [Object] Deserialized data
|
117
|
-
def _deserialize(type, value)
|
139
|
+
def self._deserialize(type, value)
|
118
140
|
case type.to_sym
|
119
|
-
when :
|
120
|
-
|
141
|
+
when :Time
|
142
|
+
Time.parse(value)
|
121
143
|
when :Date
|
122
144
|
Date.parse(value)
|
123
145
|
when :String
|
@@ -126,7 +148,7 @@ module FlatApi
|
|
126
148
|
value.to_i
|
127
149
|
when :Float
|
128
150
|
value.to_f
|
129
|
-
when :
|
151
|
+
when :Boolean
|
130
152
|
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
131
153
|
true
|
132
154
|
else
|
@@ -147,8 +169,9 @@ module FlatApi
|
|
147
169
|
end
|
148
170
|
end
|
149
171
|
else # model
|
150
|
-
|
151
|
-
|
172
|
+
# models (e.g. Pet) or oneOf
|
173
|
+
klass = FlatApi.const_get(type)
|
174
|
+
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
152
175
|
end
|
153
176
|
end
|
154
177
|
|
@@ -170,7 +193,11 @@ module FlatApi
|
|
170
193
|
hash = {}
|
171
194
|
self.class.attribute_map.each_pair do |attr, param|
|
172
195
|
value = self.send(attr)
|
173
|
-
|
196
|
+
if value.nil?
|
197
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
198
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
199
|
+
end
|
200
|
+
|
174
201
|
hash[param] = _to_hash(value)
|
175
202
|
end
|
176
203
|
hash
|
@@ -182,7 +209,7 @@ module FlatApi
|
|
182
209
|
# @return [Hash] Returns the value in the form of hash
|
183
210
|
def _to_hash(value)
|
184
211
|
if value.is_a?(Array)
|
185
|
-
value.compact.map{ |v| _to_hash(v) }
|
212
|
+
value.compact.map { |v| _to_hash(v) }
|
186
213
|
elsif value.is_a?(Hash)
|
187
214
|
{}.tap do |hash|
|
188
215
|
value.each { |k, v| hash[k] = _to_hash(v) }
|