flat_api 0.2.0 → 0.3.5
Sign up to get free protection for your applications and to get access to all the features.
- 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 +257 -169
- 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 +944 -552
- data/lib/flat_api/api/task_api.rb +85 -0
- data/lib/flat_api/api/user_api.rb +112 -74
- 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 +138 -50
- data/lib/flat_api/models/collection_app.rb +236 -0
- data/lib/flat_api/models/collection_capabilities.rb +109 -47
- data/lib/flat_api/models/collection_creation.rb +132 -37
- data/lib/flat_api/models/collection_modification.rb +122 -35
- data/lib/flat_api/models/collection_privacy.rb +18 -9
- data/lib/flat_api/models/collection_type.rb +19 -9
- 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 +181 -51
- data/lib/flat_api/models/resource_collaborator_creation.rb +74 -47
- data/lib/flat_api/models/resource_rights.rb +145 -42
- 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 -225
- 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 +272 -81
- data/lib/flat_api/models/score_fork.rb +88 -36
- 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 +180 -50
- 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 +78 -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 +36 -37
- 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 +105 -91
- data/spec/api/task_api_spec.rb +47 -0
- data/spec/api/user_api_spec.rb +27 -25
- 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 +15 -21
- data/spec/models/collection_creation_spec.rb +17 -17
- data/spec/models/collection_modification_spec.rb +17 -17
- data/spec/models/collection_privacy_spec.rb +10 -16
- data/spec/models/collection_spec.rb +39 -27
- data/spec/models/collection_type_spec.rb +10 -16
- 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 +17 -23
- data/spec/models/resource_collaborator_spec.rb +47 -25
- data/spec/models/resource_rights_spec.rb +29 -19
- 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 -58
- 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 +23 -17
- 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 +47 -23
- 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 +279 -327
- data/CHANGELOG.md +0 -17
- data/Gemfile +0 -7
- data/README.md +0 -271
- 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/Collection.md +0 -18
- data/docs/CollectionApi.md +0 -521
- data/docs/CollectionCapabilities.md +0 -12
- data/docs/CollectionCreation.md +0 -8
- data/docs/CollectionModification.md +0 -8
- data/docs/CollectionPrivacy.md +0 -7
- data/docs/CollectionTitle.md +0 -7
- data/docs/CollectionType.md +0 -7
- 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/ResourceCollaborator.md +0 -16
- data/docs/ResourceCollaboratorCreation.md +0 -14
- data/docs/ResourceRights.md +0 -10
- data/docs/ResourceSharingKey.md +0 -7
- data/docs/ScoreApi.md +0 -1658
- 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 -14
- 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 -8
- data/docs/ScoreLicense.md +0 -7
- data/docs/ScoreLikesCounts.md +0 -10
- data/docs/ScoreModification.md +0 -14
- 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/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/lib/flat_api/models/assignment_creation.rb +0 -230
- data/lib/flat_api/models/collection_title.rb +0 -179
- data/lib/flat_api/models/resource_sharing_key.rb +0 -179
- 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/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/collection_title_spec.rb +0 -36
- data/spec/models/resource_sharing_key_spec.rb +0 -36
- data/spec/models/score_data_encoding_spec.rb +0 -36
- data/spec/models/score_data_spec.rb +0 -36
- 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
|
# Edit the score metadata
|
@@ -18,8 +19,21 @@ module FlatApi
|
|
18
19
|
# The title of the score
|
19
20
|
attr_accessor :title
|
20
21
|
|
22
|
+
# The subtitle of the score
|
23
|
+
attr_accessor :subtitle
|
24
|
+
|
25
|
+
# The composer of the score
|
26
|
+
attr_accessor :composer
|
27
|
+
|
28
|
+
# The lyricist of the score
|
29
|
+
attr_accessor :lyricist
|
30
|
+
|
31
|
+
# The arranger of the score
|
32
|
+
attr_accessor :arranger
|
33
|
+
|
21
34
|
attr_accessor :privacy
|
22
35
|
|
36
|
+
# When using the `privacy` mode `privateLink`, this property can be used to set a custom sharing key, otherwise a new key will be generated.
|
23
37
|
attr_accessor :sharing_key
|
24
38
|
|
25
39
|
# Description of the creation
|
@@ -32,97 +46,200 @@ module FlatApi
|
|
32
46
|
|
33
47
|
attr_accessor :license
|
34
48
|
|
49
|
+
# The rights info written on the score
|
50
|
+
attr_accessor :license_text
|
51
|
+
|
52
|
+
class EnumAttributeValidator
|
53
|
+
attr_reader :datatype
|
54
|
+
attr_reader :allowable_values
|
55
|
+
|
56
|
+
def initialize(datatype, allowable_values)
|
57
|
+
@allowable_values = allowable_values.map do |value|
|
58
|
+
case datatype.to_s
|
59
|
+
when /Integer/i
|
60
|
+
value.to_i
|
61
|
+
when /Float/i
|
62
|
+
value.to_f
|
63
|
+
else
|
64
|
+
value
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
def valid?(value)
|
70
|
+
!value || allowable_values.include?(value)
|
71
|
+
end
|
72
|
+
end
|
35
73
|
|
36
74
|
# Attribute mapping from ruby-style variable name to JSON key.
|
37
75
|
def self.attribute_map
|
38
76
|
{
|
39
77
|
:'title' => :'title',
|
78
|
+
:'subtitle' => :'subtitle',
|
79
|
+
:'composer' => :'composer',
|
80
|
+
:'lyricist' => :'lyricist',
|
81
|
+
:'arranger' => :'arranger',
|
40
82
|
:'privacy' => :'privacy',
|
41
83
|
:'sharing_key' => :'sharingKey',
|
42
84
|
:'description' => :'description',
|
43
85
|
:'tags' => :'tags',
|
44
86
|
:'creation_type' => :'creationType',
|
45
|
-
:'license' => :'license'
|
87
|
+
:'license' => :'license',
|
88
|
+
:'license_text' => :'licenseText'
|
46
89
|
}
|
47
90
|
end
|
48
91
|
|
92
|
+
# Returns all the JSON keys this model knows about
|
93
|
+
def self.acceptable_attributes
|
94
|
+
attribute_map.values
|
95
|
+
end
|
96
|
+
|
49
97
|
# Attribute type mapping.
|
50
|
-
def self.
|
98
|
+
def self.openapi_types
|
51
99
|
{
|
52
100
|
:'title' => :'String',
|
101
|
+
:'subtitle' => :'String',
|
102
|
+
:'composer' => :'String',
|
103
|
+
:'lyricist' => :'String',
|
104
|
+
:'arranger' => :'String',
|
53
105
|
:'privacy' => :'ScorePrivacy',
|
54
|
-
:'sharing_key' => :'
|
106
|
+
:'sharing_key' => :'String',
|
55
107
|
:'description' => :'String',
|
56
108
|
:'tags' => :'Array<String>',
|
57
109
|
:'creation_type' => :'ScoreCreationType',
|
58
|
-
:'license' => :'ScoreLicense'
|
110
|
+
:'license' => :'ScoreLicense',
|
111
|
+
:'license_text' => :'String'
|
59
112
|
}
|
60
113
|
end
|
61
114
|
|
115
|
+
# List of attributes with nullable: true
|
116
|
+
def self.openapi_nullable
|
117
|
+
Set.new([
|
118
|
+
:'subtitle',
|
119
|
+
:'composer',
|
120
|
+
:'lyricist',
|
121
|
+
:'arranger',
|
122
|
+
:'description',
|
123
|
+
:'creation_type',
|
124
|
+
:'license',
|
125
|
+
:'license_text'
|
126
|
+
])
|
127
|
+
end
|
128
|
+
|
62
129
|
# Initializes the object
|
63
130
|
# @param [Hash] attributes Model attributes in the form of hash
|
64
131
|
def initialize(attributes = {})
|
65
|
-
|
132
|
+
if (!attributes.is_a?(Hash))
|
133
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `FlatApi::ScoreModification` initialize method"
|
134
|
+
end
|
66
135
|
|
67
|
-
# convert string to symbol for hash key
|
68
|
-
attributes = attributes.each_with_object({}){|(k,v), h|
|
136
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
137
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
138
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
139
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `FlatApi::ScoreModification`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
140
|
+
end
|
141
|
+
h[k.to_sym] = v
|
142
|
+
}
|
69
143
|
|
70
|
-
if attributes.
|
144
|
+
if attributes.key?(:'title')
|
71
145
|
self.title = attributes[:'title']
|
72
146
|
end
|
73
147
|
|
74
|
-
if attributes.
|
148
|
+
if attributes.key?(:'subtitle')
|
149
|
+
self.subtitle = attributes[:'subtitle']
|
150
|
+
end
|
151
|
+
|
152
|
+
if attributes.key?(:'composer')
|
153
|
+
self.composer = attributes[:'composer']
|
154
|
+
end
|
155
|
+
|
156
|
+
if attributes.key?(:'lyricist')
|
157
|
+
self.lyricist = attributes[:'lyricist']
|
158
|
+
end
|
159
|
+
|
160
|
+
if attributes.key?(:'arranger')
|
161
|
+
self.arranger = attributes[:'arranger']
|
162
|
+
end
|
163
|
+
|
164
|
+
if attributes.key?(:'privacy')
|
75
165
|
self.privacy = attributes[:'privacy']
|
166
|
+
else
|
167
|
+
self.privacy = 'private'
|
76
168
|
end
|
77
169
|
|
78
|
-
if attributes.
|
79
|
-
self.sharing_key = attributes[:'
|
170
|
+
if attributes.key?(:'sharing_key')
|
171
|
+
self.sharing_key = attributes[:'sharing_key']
|
80
172
|
end
|
81
173
|
|
82
|
-
if attributes.
|
174
|
+
if attributes.key?(:'description')
|
83
175
|
self.description = attributes[:'description']
|
84
176
|
end
|
85
177
|
|
86
|
-
if attributes.
|
178
|
+
if attributes.key?(:'tags')
|
87
179
|
if (value = attributes[:'tags']).is_a?(Array)
|
88
180
|
self.tags = value
|
89
181
|
end
|
90
182
|
end
|
91
183
|
|
92
|
-
if attributes.
|
93
|
-
self.creation_type = attributes[:'
|
184
|
+
if attributes.key?(:'creation_type')
|
185
|
+
self.creation_type = attributes[:'creation_type']
|
94
186
|
end
|
95
187
|
|
96
|
-
if attributes.
|
188
|
+
if attributes.key?(:'license')
|
97
189
|
self.license = attributes[:'license']
|
98
190
|
end
|
99
191
|
|
192
|
+
if attributes.key?(:'license_text')
|
193
|
+
self.license_text = attributes[:'license_text']
|
194
|
+
end
|
100
195
|
end
|
101
196
|
|
102
197
|
# Show invalid properties with the reasons. Usually used together with valid?
|
103
198
|
# @return Array for valid properties with the reasons
|
104
199
|
def list_invalid_properties
|
200
|
+
warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
|
105
201
|
invalid_properties = Array.new
|
106
|
-
|
107
|
-
|
202
|
+
pattern = Regexp.new(/^[a-f0-9]{128}$/)
|
203
|
+
if !@sharing_key.nil? && @sharing_key !~ pattern
|
204
|
+
invalid_properties.push("invalid value for \"sharing_key\", must conform to the pattern #{pattern}.")
|
205
|
+
end
|
206
|
+
|
207
|
+
if !@description.nil? && @description.to_s.length > 2000
|
208
|
+
invalid_properties.push('invalid value for "description", the character length must be smaller than or equal to 2000.')
|
108
209
|
end
|
109
210
|
|
110
|
-
|
211
|
+
invalid_properties
|
111
212
|
end
|
112
213
|
|
113
214
|
# Check to see if the all the properties in the model are valid
|
114
215
|
# @return true if the model is valid
|
115
216
|
def valid?
|
116
|
-
|
117
|
-
return
|
217
|
+
warn '[DEPRECATED] the `valid?` method is obsolete'
|
218
|
+
return false if !@sharing_key.nil? && @sharing_key !~ Regexp.new(/^[a-f0-9]{128}$/)
|
219
|
+
return false if !@description.nil? && @description.to_s.length > 2000
|
220
|
+
true
|
221
|
+
end
|
222
|
+
|
223
|
+
# Custom attribute writer method with validation
|
224
|
+
# @param [Object] sharing_key Value to be assigned
|
225
|
+
def sharing_key=(sharing_key)
|
226
|
+
if sharing_key.nil?
|
227
|
+
fail ArgumentError, 'sharing_key cannot be nil'
|
228
|
+
end
|
229
|
+
|
230
|
+
pattern = Regexp.new(/^[a-f0-9]{128}$/)
|
231
|
+
if sharing_key !~ pattern
|
232
|
+
fail ArgumentError, "invalid value for \"sharing_key\", must conform to the pattern #{pattern}."
|
233
|
+
end
|
234
|
+
|
235
|
+
@sharing_key = sharing_key
|
118
236
|
end
|
119
237
|
|
120
238
|
# Custom attribute writer method with validation
|
121
239
|
# @param [Object] description Value to be assigned
|
122
240
|
def description=(description)
|
123
|
-
|
124
|
-
|
125
|
-
fail ArgumentError, "invalid value for 'description', the character length must be smaller than or equal to 1000."
|
241
|
+
if !description.nil? && description.to_s.length > 2000
|
242
|
+
fail ArgumentError, 'invalid value for "description", the character length must be smaller than or equal to 2000.'
|
126
243
|
end
|
127
244
|
|
128
245
|
@description = description
|
@@ -134,12 +251,17 @@ module FlatApi
|
|
134
251
|
return true if self.equal?(o)
|
135
252
|
self.class == o.class &&
|
136
253
|
title == o.title &&
|
254
|
+
subtitle == o.subtitle &&
|
255
|
+
composer == o.composer &&
|
256
|
+
lyricist == o.lyricist &&
|
257
|
+
arranger == o.arranger &&
|
137
258
|
privacy == o.privacy &&
|
138
259
|
sharing_key == o.sharing_key &&
|
139
260
|
description == o.description &&
|
140
261
|
tags == o.tags &&
|
141
262
|
creation_type == o.creation_type &&
|
142
|
-
license == o.license
|
263
|
+
license == o.license &&
|
264
|
+
license_text == o.license_text
|
143
265
|
end
|
144
266
|
|
145
267
|
# @see the `==` method
|
@@ -149,39 +271,42 @@ module FlatApi
|
|
149
271
|
end
|
150
272
|
|
151
273
|
# Calculates hash code according to all attributes.
|
152
|
-
# @return [
|
274
|
+
# @return [Integer] Hash code
|
153
275
|
def hash
|
154
|
-
[title, privacy, sharing_key, description, tags, creation_type, license].hash
|
276
|
+
[title, subtitle, composer, lyricist, arranger, privacy, sharing_key, description, tags, creation_type, license, license_text].hash
|
155
277
|
end
|
156
278
|
|
157
279
|
# Builds the object from hash
|
158
280
|
# @param [Hash] attributes Model attributes in the form of hash
|
159
281
|
# @return [Object] Returns the model itself
|
160
|
-
def build_from_hash(attributes)
|
282
|
+
def self.build_from_hash(attributes)
|
161
283
|
return nil unless attributes.is_a?(Hash)
|
162
|
-
|
163
|
-
|
164
|
-
|
284
|
+
attributes = attributes.transform_keys(&:to_sym)
|
285
|
+
transformed_hash = {}
|
286
|
+
openapi_types.each_pair do |key, type|
|
287
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
288
|
+
transformed_hash["#{key}"] = nil
|
289
|
+
elsif type =~ /\AArray<(.*)>/i
|
290
|
+
# check to ensure the input is an array given that the attribute
|
165
291
|
# is documented as an array but the input is not
|
166
|
-
if attributes[
|
167
|
-
|
292
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
293
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
168
294
|
end
|
169
|
-
elsif !attributes[
|
170
|
-
|
171
|
-
end
|
295
|
+
elsif !attributes[attribute_map[key]].nil?
|
296
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
297
|
+
end
|
172
298
|
end
|
173
|
-
|
174
|
-
self
|
299
|
+
new(transformed_hash)
|
175
300
|
end
|
176
301
|
|
177
302
|
# Deserializes the data based on type
|
178
303
|
# @param string type Data type
|
179
304
|
# @param string value Value to be deserialized
|
180
305
|
# @return [Object] Deserialized data
|
181
|
-
def _deserialize(type, value)
|
306
|
+
def self._deserialize(type, value)
|
182
307
|
case type.to_sym
|
183
|
-
when :
|
184
|
-
|
308
|
+
when :Time
|
309
|
+
Time.parse(value)
|
185
310
|
when :Date
|
186
311
|
Date.parse(value)
|
187
312
|
when :String
|
@@ -190,7 +315,7 @@ module FlatApi
|
|
190
315
|
value.to_i
|
191
316
|
when :Float
|
192
317
|
value.to_f
|
193
|
-
when :
|
318
|
+
when :Boolean
|
194
319
|
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
195
320
|
true
|
196
321
|
else
|
@@ -211,8 +336,9 @@ module FlatApi
|
|
211
336
|
end
|
212
337
|
end
|
213
338
|
else # model
|
214
|
-
|
215
|
-
|
339
|
+
# models (e.g. Pet) or oneOf
|
340
|
+
klass = FlatApi.const_get(type)
|
341
|
+
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
216
342
|
end
|
217
343
|
end
|
218
344
|
|
@@ -234,7 +360,11 @@ module FlatApi
|
|
234
360
|
hash = {}
|
235
361
|
self.class.attribute_map.each_pair do |attr, param|
|
236
362
|
value = self.send(attr)
|
237
|
-
|
363
|
+
if value.nil?
|
364
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
365
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
366
|
+
end
|
367
|
+
|
238
368
|
hash[param] = _to_hash(value)
|
239
369
|
end
|
240
370
|
hash
|
@@ -246,7 +376,7 @@ module FlatApi
|
|
246
376
|
# @return [Hash] Returns the value in the form of hash
|
247
377
|
def _to_hash(value)
|
248
378
|
if value.is_a?(Array)
|
249
|
-
value.compact.map{ |v| _to_hash(v) }
|
379
|
+
value.compact.map { |v| _to_hash(v) }
|
250
380
|
elsif value.is_a?(Hash)
|
251
381
|
{}.tap do |hash|
|
252
382
|
value.each { |k, v| hash[k] = _to_hash(v) }
|
@@ -0,0 +1,236 @@
|
|
1
|
+
=begin
|
2
|
+
#Flat API
|
3
|
+
|
4
|
+
#The Flat API allows you to easily extend the abilities of the [Flat Platform](https://flat.io), with a wide range of use cases including the following: * Creating and importing new music scores using MusicXML, MIDI, Guitar Pro (GP3, GP4, GP5, GPX, GP), PowerTab, TuxGuitar and MuseScore files * Browsing, updating, copying, exporting the user's scores (for example in MP3, WAV or MIDI) * Managing educational resources with Flat for Education: creating & updating the organization accounts, the classes, rosters and assignments. The Flat API is built on HTTP. Our API is RESTful It has predictable resource URLs. It returns HTTP response codes to indicate errors. It also accepts and returns JSON in the HTTP body. The [schema](/swagger.yaml) of this API follows the [OpenAPI Initiative (OAI) specification](https://www.openapis.org/), you can use and work with [compatible Swagger tools](http://swagger.io/open-source-integrations/). This API features Cross-Origin Resource Sharing (CORS) implemented in compliance with [W3C spec](https://www.w3.org/TR/cors/). You can use your favorite HTTP/REST library for your programming language to use Flat's API. This specification and reference is [available on Github](https://github.com/FlatIO/api-reference). Getting Started and learn more: * [API Overview and introduction](https://flat.io/developers/docs/api/) * [Authentication (Personal Access Tokens or OAuth2)](https://flat.io/developers/docs/api/authentication.html) * [SDKs](https://flat.io/developers/docs/api/sdks.html) * [Rate Limits](https://flat.io/developers/docs/api/rate-limits.html) * [Changelog](https://flat.io/developers/docs/api/changelog.html)
|
5
|
+
|
6
|
+
The version of the OpenAPI document: 2.20.0
|
7
|
+
Contact: developers@flat.io
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
OpenAPI Generator version: 7.3.0
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'date'
|
14
|
+
require 'time'
|
15
|
+
|
16
|
+
module FlatApi
|
17
|
+
# A computed version of the total, weekly, and monthly number of plays of the score
|
18
|
+
class ScorePlaysCounts
|
19
|
+
# The total number of plays of the score
|
20
|
+
attr_accessor :total
|
21
|
+
|
22
|
+
# The weekly number of plays of the score
|
23
|
+
attr_accessor :weekly
|
24
|
+
|
25
|
+
# The monthly number of plays of the score
|
26
|
+
attr_accessor :monthly
|
27
|
+
|
28
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
29
|
+
def self.attribute_map
|
30
|
+
{
|
31
|
+
:'total' => :'total',
|
32
|
+
:'weekly' => :'weekly',
|
33
|
+
:'monthly' => :'monthly'
|
34
|
+
}
|
35
|
+
end
|
36
|
+
|
37
|
+
# Returns all the JSON keys this model knows about
|
38
|
+
def self.acceptable_attributes
|
39
|
+
attribute_map.values
|
40
|
+
end
|
41
|
+
|
42
|
+
# Attribute type mapping.
|
43
|
+
def self.openapi_types
|
44
|
+
{
|
45
|
+
:'total' => :'Float',
|
46
|
+
:'weekly' => :'Float',
|
47
|
+
:'monthly' => :'Float'
|
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::ScorePlaysCounts` initialize method"
|
62
|
+
end
|
63
|
+
|
64
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
65
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
66
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
67
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `FlatApi::ScorePlaysCounts`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
68
|
+
end
|
69
|
+
h[k.to_sym] = v
|
70
|
+
}
|
71
|
+
|
72
|
+
if attributes.key?(:'total')
|
73
|
+
self.total = attributes[:'total']
|
74
|
+
end
|
75
|
+
|
76
|
+
if attributes.key?(:'weekly')
|
77
|
+
self.weekly = attributes[:'weekly']
|
78
|
+
end
|
79
|
+
|
80
|
+
if attributes.key?(:'monthly')
|
81
|
+
self.monthly = attributes[:'monthly']
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
86
|
+
# @return Array for valid properties with the reasons
|
87
|
+
def list_invalid_properties
|
88
|
+
warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
|
89
|
+
invalid_properties = Array.new
|
90
|
+
invalid_properties
|
91
|
+
end
|
92
|
+
|
93
|
+
# Check to see if the all the properties in the model are valid
|
94
|
+
# @return true if the model is valid
|
95
|
+
def valid?
|
96
|
+
warn '[DEPRECATED] the `valid?` method is obsolete'
|
97
|
+
true
|
98
|
+
end
|
99
|
+
|
100
|
+
# Checks equality by comparing each attribute.
|
101
|
+
# @param [Object] Object to be compared
|
102
|
+
def ==(o)
|
103
|
+
return true if self.equal?(o)
|
104
|
+
self.class == o.class &&
|
105
|
+
total == o.total &&
|
106
|
+
weekly == o.weekly &&
|
107
|
+
monthly == o.monthly
|
108
|
+
end
|
109
|
+
|
110
|
+
# @see the `==` method
|
111
|
+
# @param [Object] Object to be compared
|
112
|
+
def eql?(o)
|
113
|
+
self == o
|
114
|
+
end
|
115
|
+
|
116
|
+
# Calculates hash code according to all attributes.
|
117
|
+
# @return [Integer] Hash code
|
118
|
+
def hash
|
119
|
+
[total, weekly, monthly].hash
|
120
|
+
end
|
121
|
+
|
122
|
+
# Builds the object from hash
|
123
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
124
|
+
# @return [Object] Returns the model itself
|
125
|
+
def self.build_from_hash(attributes)
|
126
|
+
return nil unless attributes.is_a?(Hash)
|
127
|
+
attributes = attributes.transform_keys(&:to_sym)
|
128
|
+
transformed_hash = {}
|
129
|
+
openapi_types.each_pair do |key, type|
|
130
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
131
|
+
transformed_hash["#{key}"] = nil
|
132
|
+
elsif type =~ /\AArray<(.*)>/i
|
133
|
+
# check to ensure the input is an array given that the attribute
|
134
|
+
# is documented as an array but the input is not
|
135
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
136
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
137
|
+
end
|
138
|
+
elsif !attributes[attribute_map[key]].nil?
|
139
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
140
|
+
end
|
141
|
+
end
|
142
|
+
new(transformed_hash)
|
143
|
+
end
|
144
|
+
|
145
|
+
# Deserializes the data based on type
|
146
|
+
# @param string type Data type
|
147
|
+
# @param string value Value to be deserialized
|
148
|
+
# @return [Object] Deserialized data
|
149
|
+
def self._deserialize(type, value)
|
150
|
+
case type.to_sym
|
151
|
+
when :Time
|
152
|
+
Time.parse(value)
|
153
|
+
when :Date
|
154
|
+
Date.parse(value)
|
155
|
+
when :String
|
156
|
+
value.to_s
|
157
|
+
when :Integer
|
158
|
+
value.to_i
|
159
|
+
when :Float
|
160
|
+
value.to_f
|
161
|
+
when :Boolean
|
162
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
163
|
+
true
|
164
|
+
else
|
165
|
+
false
|
166
|
+
end
|
167
|
+
when :Object
|
168
|
+
# generic object (usually a Hash), return directly
|
169
|
+
value
|
170
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
171
|
+
inner_type = Regexp.last_match[:inner_type]
|
172
|
+
value.map { |v| _deserialize(inner_type, v) }
|
173
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
174
|
+
k_type = Regexp.last_match[:k_type]
|
175
|
+
v_type = Regexp.last_match[:v_type]
|
176
|
+
{}.tap do |hash|
|
177
|
+
value.each do |k, v|
|
178
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
179
|
+
end
|
180
|
+
end
|
181
|
+
else # model
|
182
|
+
# models (e.g. Pet) or oneOf
|
183
|
+
klass = FlatApi.const_get(type)
|
184
|
+
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
185
|
+
end
|
186
|
+
end
|
187
|
+
|
188
|
+
# Returns the string representation of the object
|
189
|
+
# @return [String] String presentation of the object
|
190
|
+
def to_s
|
191
|
+
to_hash.to_s
|
192
|
+
end
|
193
|
+
|
194
|
+
# to_body is an alias to to_hash (backward compatibility)
|
195
|
+
# @return [Hash] Returns the object in the form of hash
|
196
|
+
def to_body
|
197
|
+
to_hash
|
198
|
+
end
|
199
|
+
|
200
|
+
# Returns the object in the form of hash
|
201
|
+
# @return [Hash] Returns the object in the form of hash
|
202
|
+
def to_hash
|
203
|
+
hash = {}
|
204
|
+
self.class.attribute_map.each_pair do |attr, param|
|
205
|
+
value = self.send(attr)
|
206
|
+
if value.nil?
|
207
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
208
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
209
|
+
end
|
210
|
+
|
211
|
+
hash[param] = _to_hash(value)
|
212
|
+
end
|
213
|
+
hash
|
214
|
+
end
|
215
|
+
|
216
|
+
# Outputs non-array value in the form of hash
|
217
|
+
# For object, use to_hash. Otherwise, just return the value
|
218
|
+
# @param [Object] value Any valid value
|
219
|
+
# @return [Hash] Returns the value in the form of hash
|
220
|
+
def _to_hash(value)
|
221
|
+
if value.is_a?(Array)
|
222
|
+
value.compact.map { |v| _to_hash(v) }
|
223
|
+
elsif value.is_a?(Hash)
|
224
|
+
{}.tap do |hash|
|
225
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
226
|
+
end
|
227
|
+
elsif value.respond_to? :to_hash
|
228
|
+
value.to_hash
|
229
|
+
else
|
230
|
+
value
|
231
|
+
end
|
232
|
+
end
|
233
|
+
|
234
|
+
end
|
235
|
+
|
236
|
+
end
|