dropbox_api 0.1.16 → 0.1.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.gitignore +1 -0
- data/.rubocop.yml +15 -0
- data/.travis.yml +0 -2
- data/Gemfile +6 -1
- data/README.md +7 -2
- data/Rakefile +4 -3
- data/TODO.md +16 -7
- data/api_coverage.md +8 -8
- data/bin/console +4 -3
- data/docs/DropboxApi/Authenticator.html +3 -3
- data/docs/DropboxApi/ChunkedUploader.html +3 -3
- data/docs/DropboxApi/Client.html +1541 -182
- data/docs/DropboxApi/ConnectionBuilder.html +3 -3
- data/docs/DropboxApi/Endpoints/Auth/TokenRevoke.html +3 -3
- data/docs/DropboxApi/Endpoints/Auth.html +3 -3
- data/docs/DropboxApi/Endpoints/Base.html +3 -3
- data/docs/DropboxApi/Endpoints/ContentDownload.html +3 -3
- data/docs/DropboxApi/Endpoints/ContentUpload.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/Copy.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/CopyBatch.html +359 -0
- data/docs/DropboxApi/Endpoints/Files/CopyBatchCheck.html +305 -0
- data/docs/DropboxApi/Endpoints/Files/CopyReferenceGet.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/CopyReferenceSave.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/CreateFileRequest.html +5 -5
- data/docs/DropboxApi/Endpoints/Files/CreateFolder.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/CreateFolderBatch.html +377 -0
- data/docs/DropboxApi/Endpoints/Files/CreateFolderBatchCheck.html +308 -0
- data/docs/DropboxApi/Endpoints/Files/Delete.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/DeleteBatch.html +305 -0
- data/docs/DropboxApi/Endpoints/Files/DeleteBatchCheck.html +307 -0
- data/docs/DropboxApi/Endpoints/Files/Download.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/GetMetadata.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/GetPreview.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/GetTemporaryLink.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/GetThumbnail.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/GetThumbnailBatch.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/ListFolder.html +30 -11
- data/docs/DropboxApi/Endpoints/Files/ListFolderContinue.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/ListFolderGetLatestCursor.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/ListFolderLongpoll.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/ListRevisions.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/Move.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/PermanentlyDelete.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/Restore.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/SaveUrl.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/SaveUrlCheckJobStatus.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/Search.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/Upload.html +4 -4
- data/docs/DropboxApi/Endpoints/Files/UploadSessionAppendV2.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/UploadSessionFinish.html +3 -3
- data/docs/DropboxApi/Endpoints/Files/UploadSessionStart.html +3 -3
- data/docs/DropboxApi/Endpoints/Files.html +5 -5
- data/docs/DropboxApi/Endpoints/Rpc.html +4 -4
- data/docs/DropboxApi/Endpoints/RpcContent.html +3 -3
- data/docs/DropboxApi/Endpoints/RpcNotify.html +3 -3
- data/docs/DropboxApi/Endpoints/Sharing/AddFileMember.html +3 -3
- data/docs/DropboxApi/Endpoints/Sharing/AddFolderMember.html +3 -3
- data/docs/DropboxApi/Endpoints/Sharing/CreateSharedLinkWithSettings.html +103 -12
- data/docs/DropboxApi/Endpoints/Sharing/GetSharedLinkMetadata.html +3 -3
- data/docs/DropboxApi/Endpoints/Sharing/ListFileMembers.html +3 -3
- data/docs/DropboxApi/Endpoints/Sharing/ListFolderMembers.html +3 -3
- data/docs/DropboxApi/Endpoints/Sharing/ListSharedLinks.html +3 -3
- data/docs/DropboxApi/Endpoints/Sharing/RevokeSharedLink.html +293 -0
- data/docs/DropboxApi/Endpoints/Sharing/ShareFolder.html +3 -3
- data/docs/DropboxApi/Endpoints/Sharing/UnshareFile.html +3 -3
- data/docs/DropboxApi/Endpoints/Sharing.html +5 -5
- data/docs/DropboxApi/Endpoints/Users/GetAccount.html +3 -3
- data/docs/DropboxApi/Endpoints/Users/GetAccountBatch.html +3 -3
- data/docs/DropboxApi/Endpoints/Users/GetCurrentAccount.html +3 -3
- data/docs/DropboxApi/Endpoints/Users/GetSpaceUsage.html +3 -3
- data/docs/DropboxApi/Endpoints/Users.html +3 -3
- data/docs/DropboxApi/Endpoints.html +3 -3
- data/docs/DropboxApi/Errors/AddFileMemberError.html +3 -3
- data/docs/DropboxApi/Errors/AddFolderMemberError.html +3 -3
- data/docs/DropboxApi/Errors/AddMemberSelectorError.html +3 -3
- data/docs/DropboxApi/Errors/AlreadySharedError.html +3 -3
- data/docs/DropboxApi/Errors/BadPathError.html +3 -3
- data/docs/DropboxApi/Errors/BasicError.html +4 -4
- data/docs/DropboxApi/Errors/CantCopySharedFolderError.html +3 -3
- data/docs/DropboxApi/Errors/CantMoveFolderIntoItselfError.html +3 -3
- data/docs/DropboxApi/Errors/CantNestSharedFolderError.html +3 -3
- data/docs/DropboxApi/Errors/CantShareOutsideTeamError.html +3 -3
- data/docs/DropboxApi/Errors/ContainsSharedFolderError.html +3 -3
- data/docs/DropboxApi/Errors/ConversionError.html +3 -3
- data/docs/DropboxApi/Errors/CreateFileRequestError.html +3 -3
- data/docs/DropboxApi/Errors/CreateFolderBatchError.html +161 -0
- data/docs/DropboxApi/Errors/CreateFolderError.html +3 -3
- data/docs/DropboxApi/Errors/CreateSharedLinkWithSettingsError.html +3 -3
- data/docs/DropboxApi/Errors/CursorClosedError.html +3 -3
- data/docs/DropboxApi/Errors/CursorNotClosedError.html +3 -3
- data/docs/DropboxApi/Errors/DeleteError.html +5 -4
- data/docs/DropboxApi/Errors/DisallowedNameError.html +3 -3
- data/docs/DropboxApi/Errors/DisallowedSharedLinkPolicyError.html +3 -3
- data/docs/DropboxApi/Errors/DownloadError.html +3 -3
- data/docs/DropboxApi/Errors/DownloadFailedError.html +3 -3
- data/docs/DropboxApi/Errors/EmailUnverifiedError.html +3 -3
- data/docs/DropboxApi/Errors/FileAncestorConflictError.html +3 -3
- data/docs/DropboxApi/Errors/FileConflictError.html +3 -3
- data/docs/DropboxApi/Errors/FileMemberActionError.html +3 -3
- data/docs/DropboxApi/Errors/FolderConflictError.html +3 -3
- data/docs/DropboxApi/Errors/GetAccountError.html +3 -3
- data/docs/DropboxApi/Errors/GetCopyReferenceError.html +3 -3
- data/docs/DropboxApi/Errors/GetMetadataError.html +3 -3
- data/docs/DropboxApi/Errors/GroupDeletedError.html +3 -3
- data/docs/DropboxApi/Errors/GroupNotOnTeamError.html +3 -3
- data/docs/DropboxApi/Errors/HttpError.html +3 -3
- data/docs/DropboxApi/Errors/InProgressError.html +3 -3
- data/docs/DropboxApi/Errors/InsideAppFolderError.html +3 -3
- data/docs/DropboxApi/Errors/InsideOsxPackageError.html +3 -3
- data/docs/DropboxApi/Errors/InsidePublicFolderError.html +3 -3
- data/docs/DropboxApi/Errors/InsideSharedFolderError.html +3 -3
- data/docs/DropboxApi/Errors/InsufficientPlanError.html +3 -3
- data/docs/DropboxApi/Errors/InsufficientSpaceError.html +3 -3
- data/docs/DropboxApi/Errors/InternalError.html +3 -3
- data/docs/DropboxApi/Errors/InvalidCommentError.html +3 -3
- data/docs/DropboxApi/Errors/InvalidCopyReferenceError.html +3 -3
- data/docs/DropboxApi/Errors/InvalidCursorError.html +3 -3
- data/docs/DropboxApi/Errors/InvalidDropboxIdError.html +3 -3
- data/docs/DropboxApi/Errors/InvalidEmailError.html +3 -3
- data/docs/DropboxApi/Errors/InvalidFileError.html +3 -3
- data/docs/DropboxApi/Errors/InvalidIdError.html +3 -3
- data/docs/DropboxApi/Errors/InvalidMemberError.html +3 -3
- data/docs/DropboxApi/Errors/InvalidPathError.html +3 -3
- data/docs/DropboxApi/Errors/InvalidRevisionError.html +3 -3
- data/docs/DropboxApi/Errors/InvalidSettingsError.html +3 -3
- data/docs/DropboxApi/Errors/InvalidUrlError.html +3 -3
- data/docs/DropboxApi/Errors/IsAppFolderError.html +3 -3
- data/docs/DropboxApi/Errors/IsFileError.html +3 -3
- data/docs/DropboxApi/Errors/IsFolderError.html +3 -3
- data/docs/DropboxApi/Errors/IsOsxPackageError.html +3 -3
- data/docs/DropboxApi/Errors/IsPublicFolderError.html +3 -3
- data/docs/DropboxApi/Errors/ListFolderContinueError.html +3 -3
- data/docs/DropboxApi/Errors/ListFolderError.html +3 -3
- data/docs/DropboxApi/Errors/ListFolderLongpollError.html +3 -3
- data/docs/DropboxApi/Errors/ListRevisionsError.html +3 -3
- data/docs/DropboxApi/Errors/ListSharedLinksError.html +3 -3
- data/docs/DropboxApi/Errors/LookupError.html +3 -3
- data/docs/DropboxApi/Errors/MalformedPathError.html +3 -3
- data/docs/DropboxApi/Errors/NoAccountError.html +3 -3
- data/docs/DropboxApi/Errors/NoPermissionError.html +3 -3
- data/docs/DropboxApi/Errors/NoWritePermissionError.html +3 -3
- data/docs/DropboxApi/Errors/NotAMemberError.html +3 -3
- data/docs/DropboxApi/Errors/NotFileError.html +3 -3
- data/docs/DropboxApi/Errors/NotFolderError.html +3 -3
- data/docs/DropboxApi/Errors/NotFoundError.html +3 -3
- data/docs/DropboxApi/Errors/PollError.html +3 -3
- data/docs/DropboxApi/Errors/PreviewError.html +3 -3
- data/docs/DropboxApi/Errors/RateLimitError.html +3 -3
- data/docs/DropboxApi/Errors/RelocationBatchEntryError.html +163 -0
- data/docs/DropboxApi/Errors/RelocationError.html +3 -3
- data/docs/DropboxApi/Errors/RestoreError.html +3 -3
- data/docs/DropboxApi/Errors/RestrictedContentError.html +3 -3
- data/docs/DropboxApi/Errors/RevokeSharedLinkError.html +164 -0
- data/docs/DropboxApi/Errors/SaveCopyReferenceError.html +3 -3
- data/docs/DropboxApi/Errors/SaveUrlError.html +3 -3
- data/docs/DropboxApi/Errors/SearchError.html +3 -3
- data/docs/DropboxApi/Errors/SettingsError.html +3 -3
- data/docs/DropboxApi/Errors/ShareFolderError.html +3 -3
- data/docs/DropboxApi/Errors/SharePathError.html +3 -3
- data/docs/DropboxApi/Errors/SharedFolderAccessError.html +3 -3
- data/docs/DropboxApi/Errors/SharedLinkAccessDeniedError.html +3 -3
- data/docs/DropboxApi/Errors/SharedLinkAlreadyExistsError.html +3 -3
- data/docs/DropboxApi/Errors/SharedLinkError.html +3 -3
- data/docs/DropboxApi/Errors/SharedLinkMalformedError.html +143 -0
- data/docs/DropboxApi/Errors/SharedLinkNotFoundError.html +3 -3
- data/docs/DropboxApi/Errors/SharingFileAccessError.html +3 -3
- data/docs/DropboxApi/Errors/SharingUserError.html +3 -3
- data/docs/DropboxApi/Errors/TeamFolderError.html +3 -3
- data/docs/DropboxApi/Errors/TeamPolicyDisallowsMemberPolicyError.html +3 -3
- data/docs/DropboxApi/Errors/ThumbnailBatchError.html +3 -3
- data/docs/DropboxApi/Errors/ThumbnailError.html +3 -3
- data/docs/DropboxApi/Errors/TooManyFilesError.html +3 -3
- data/docs/DropboxApi/Errors/TooManyMembersError.html +3 -3
- data/docs/DropboxApi/Errors/TooManyPendingInvitesError.html +3 -3
- data/docs/DropboxApi/Errors/TooManyRequestsError.html +3 -3
- data/docs/DropboxApi/Errors/TooManySharedFolderTargetsError.html +3 -3
- data/docs/DropboxApi/Errors/TooManyWriteOperationsError.html +3 -3
- data/docs/DropboxApi/Errors/UnmountedError.html +3 -3
- data/docs/DropboxApi/Errors/UnshareFileError.html +3 -3
- data/docs/DropboxApi/Errors/UnsupportedContentError.html +3 -3
- data/docs/DropboxApi/Errors/UnsupportedExtensionError.html +3 -3
- data/docs/DropboxApi/Errors/UnsupportedImageError.html +3 -3
- data/docs/DropboxApi/Errors/UnsupportedLinkTypeError.html +3 -3
- data/docs/DropboxApi/Errors/UnverifiedDropboxId.html +3 -3
- data/docs/DropboxApi/Errors/UploadError.html +3 -3
- data/docs/DropboxApi/Errors/UploadSessionFinishError.html +3 -3
- data/docs/DropboxApi/Errors/UploadSessionLookupError.html +3 -3
- data/docs/DropboxApi/Errors/UploadSessionOffsetError.html +3 -3
- data/docs/DropboxApi/Errors/UploadWriteFailedError.html +3 -3
- data/docs/DropboxApi/Errors/WriteConflictError.html +3 -3
- data/docs/DropboxApi/Errors/WriteError.html +3 -3
- data/docs/DropboxApi/Errors.html +5 -5
- data/docs/DropboxApi/Metadata/AccessLevel.html +3 -3
- data/docs/DropboxApi/Metadata/AddFileMemberResult.html +3 -3
- data/docs/DropboxApi/Metadata/AddMember.html +3 -3
- data/docs/DropboxApi/Metadata/Base.html +3 -3
- data/docs/DropboxApi/Metadata/BasicAccount.html +3 -3
- data/docs/DropboxApi/Metadata/CommitInfo.html +3 -3
- data/docs/DropboxApi/Metadata/Deleted.html +3 -3
- data/docs/DropboxApi/Metadata/Dimensions.html +3 -3
- data/docs/DropboxApi/Metadata/Field.html +3 -3
- data/docs/DropboxApi/Metadata/File.html +3 -3
- data/docs/DropboxApi/Metadata/FileLinkMetadata.html +3 -3
- data/docs/DropboxApi/Metadata/FileMemberAction.html +3 -3
- data/docs/DropboxApi/Metadata/FileRequest.html +3 -3
- data/docs/DropboxApi/Metadata/Folder.html +3 -3
- data/docs/DropboxApi/Metadata/FolderLinkMetadata.html +3 -3
- data/docs/DropboxApi/Metadata/FolderSharingInfo.html +3 -3
- data/docs/DropboxApi/Metadata/LinkPermissions.html +3 -3
- data/docs/DropboxApi/Metadata/Location.html +3 -3
- data/docs/DropboxApi/Metadata/MediaInfo.html +3 -3
- data/docs/DropboxApi/Metadata/MediaMetadata.html +3 -3
- data/docs/DropboxApi/Metadata/Member.html +3 -3
- data/docs/DropboxApi/Metadata/MemberAction.html +3 -3
- data/docs/DropboxApi/Metadata/MemberActionList.html +3 -3
- data/docs/DropboxApi/Metadata/MemberPermission.html +3 -3
- data/docs/DropboxApi/Metadata/MemberPermissionList.html +3 -3
- data/docs/DropboxApi/Metadata/Name.html +3 -3
- data/docs/DropboxApi/Metadata/ParentFolderAccessInfo.html +3 -3
- data/docs/DropboxApi/Metadata/PhotoMetadata.html +3 -3
- data/docs/DropboxApi/Metadata/Resource.html +3 -3
- data/docs/DropboxApi/Metadata/SharedFolder.html +3 -3
- data/docs/DropboxApi/Metadata/SharedFolderPolicy.html +3 -3
- data/docs/DropboxApi/Metadata/SharedLink.html +3 -3
- data/docs/DropboxApi/Metadata/SharedLinkMetadata.html +3 -3
- data/docs/DropboxApi/Metadata/SpaceAllocation.html +3 -3
- data/docs/DropboxApi/Metadata/SpaceUsage.html +3 -3
- data/docs/DropboxApi/Metadata/Tag.html +3 -3
- data/docs/DropboxApi/Metadata/Team.html +3 -3
- data/docs/DropboxApi/Metadata/TeamMemberInfo.html +3 -3
- data/docs/DropboxApi/Metadata/ThumbnailBatchResultData.html +3 -3
- data/docs/DropboxApi/Metadata/ThumbnailBatchResultEntry.html +3 -3
- data/docs/DropboxApi/Metadata/UploadSessionCursor.html +3 -3
- data/docs/DropboxApi/Metadata/VideoMetadata.html +3 -3
- data/docs/DropboxApi/Metadata/WriteMode.html +3 -3
- data/docs/DropboxApi/Metadata.html +3 -3
- data/docs/DropboxApi/MiddleWare/DecodeResult.html +3 -3
- data/docs/DropboxApi/MiddleWare/Stack.html +3 -3
- data/docs/DropboxApi/MiddleWare.html +3 -3
- data/docs/DropboxApi/OptionsValidator.html +4 -4
- data/docs/DropboxApi/ResultBuilder.html +3 -3
- data/docs/DropboxApi/Results/AddFileMemberResultList.html +3 -3
- data/docs/DropboxApi/Results/Base.html +4 -4
- data/docs/DropboxApi/Results/BasicAccountBatch.html +3 -3
- data/docs/DropboxApi/Results/CopyBatchResult.html +224 -0
- data/docs/DropboxApi/Results/CreateFolderBatchResult.html +241 -0
- data/docs/DropboxApi/Results/CreateFolderBatchResultEntry.html +234 -0
- data/docs/DropboxApi/Results/DeleteBatchResult.html +241 -0
- data/docs/DropboxApi/Results/DeleteBatchResultEntry.html +226 -0
- data/docs/DropboxApi/Results/GetCopyReferenceResult.html +3 -3
- data/docs/DropboxApi/Results/GetTemporaryLinkResult.html +3 -3
- data/docs/DropboxApi/Results/GetThumbnailBatchResult.html +3 -3
- data/docs/DropboxApi/Results/ListFolderGetLatestCursorResult.html +3 -3
- data/docs/DropboxApi/Results/ListFolderLongpollResult.html +3 -3
- data/docs/DropboxApi/Results/ListFolderResult.html +3 -3
- data/docs/DropboxApi/Results/ListRevisionsResult.html +3 -3
- data/docs/DropboxApi/Results/ListSharedLinksResult.html +3 -3
- data/docs/DropboxApi/Results/RelocationBatchResult.html +241 -0
- data/docs/DropboxApi/Results/RelocationBatchResultEntry.html +226 -0
- data/docs/DropboxApi/Results/SaveCopyReferenceResult.html +3 -3
- data/docs/DropboxApi/Results/SaveUrlJobStatus.html +3 -3
- data/docs/DropboxApi/Results/SaveUrlResult.html +3 -3
- data/docs/DropboxApi/Results/Search/Match.html +3 -3
- data/docs/DropboxApi/Results/Search.html +3 -3
- data/docs/DropboxApi/Results/SearchResult.html +3 -3
- data/docs/DropboxApi/Results/ShareFolderLaunch.html +3 -3
- data/docs/DropboxApi/Results/SharedFileMembers.html +3 -3
- data/docs/DropboxApi/Results/SharedFolderMembers.html +3 -3
- data/docs/DropboxApi/Results/UploadSessionStart.html +3 -3
- data/docs/DropboxApi/Results/VoidResult.html +3 -3
- data/docs/DropboxApi/Results.html +5 -5
- data/docs/DropboxApi.html +4 -4
- data/docs/DropboxScaffoldBuilder.html +105 -50
- data/docs/_index.html +140 -14
- data/docs/class_list.html +1 -1
- data/docs/file.README.html +3 -3
- data/docs/file.api_coverage.html +10 -10
- data/docs/file.rails_setup.html +3 -3
- data/docs/frames.html +1 -1
- data/docs/index.html +3 -3
- data/docs/js/app.js +11 -0
- data/docs/method_list.html +430 -254
- data/docs/top-level-namespace.html +3 -3
- data/dropbox_api.gemspec +15 -16
- data/lib/dropbox_api/authenticator.rb +3 -2
- data/lib/dropbox_api/chunked_uploader.rb +2 -1
- data/lib/dropbox_api/client.rb +2 -1
- data/lib/dropbox_api/connection_builder.rb +1 -0
- data/lib/dropbox_api/endpoints/auth/token_revoke.rb +2 -1
- data/lib/dropbox_api/endpoints/base.rb +7 -4
- data/lib/dropbox_api/endpoints/content_download.rb +4 -6
- data/lib/dropbox_api/endpoints/content_upload.rb +2 -1
- data/lib/dropbox_api/endpoints/file_requests/create_file_request.rb +2 -1
- data/lib/dropbox_api/endpoints/files/copy.rb +4 -3
- data/lib/dropbox_api/endpoints/files/copy_batch.rb +36 -0
- data/lib/dropbox_api/endpoints/files/copy_batch_check.rb +21 -0
- data/lib/dropbox_api/endpoints/files/copy_reference_get.rb +3 -2
- data/lib/dropbox_api/endpoints/files/copy_reference_save.rb +4 -3
- data/lib/dropbox_api/endpoints/files/create_folder.rb +3 -2
- data/lib/dropbox_api/endpoints/files/create_folder_batch.rb +41 -0
- data/lib/dropbox_api/endpoints/files/create_folder_batch_check.rb +22 -0
- data/lib/dropbox_api/endpoints/files/delete.rb +3 -2
- data/lib/dropbox_api/endpoints/files/delete_batch.rb +23 -0
- data/lib/dropbox_api/endpoints/files/delete_batch_check.rb +21 -0
- data/lib/dropbox_api/endpoints/files/download.rb +3 -2
- data/lib/dropbox_api/endpoints/files/get_metadata.rb +3 -2
- data/lib/dropbox_api/endpoints/files/get_preview.rb +3 -2
- data/lib/dropbox_api/endpoints/files/get_temporary_link.rb +3 -2
- data/lib/dropbox_api/endpoints/files/get_thumbnail.rb +3 -2
- data/lib/dropbox_api/endpoints/files/get_thumbnail_batch.rb +4 -3
- data/lib/dropbox_api/endpoints/files/list_folder.rb +3 -2
- data/lib/dropbox_api/endpoints/files/list_folder_continue.rb +3 -2
- data/lib/dropbox_api/endpoints/files/list_folder_get_latest_cursor.rb +2 -1
- data/lib/dropbox_api/endpoints/files/list_folder_longpoll.rb +3 -2
- data/lib/dropbox_api/endpoints/files/list_revisions.rb +3 -2
- data/lib/dropbox_api/endpoints/files/move.rb +4 -3
- data/lib/dropbox_api/endpoints/files/permanently_delete.rb +3 -2
- data/lib/dropbox_api/endpoints/files/restore.rb +4 -3
- data/lib/dropbox_api/endpoints/files/save_url.rb +4 -3
- data/lib/dropbox_api/endpoints/files/save_url_check_job_status.rb +3 -2
- data/lib/dropbox_api/endpoints/files/search.rb +16 -27
- data/lib/dropbox_api/endpoints/files/upload.rb +3 -2
- data/lib/dropbox_api/endpoints/files/upload_session_append_v2.rb +3 -2
- data/lib/dropbox_api/endpoints/files/upload_session_finish.rb +4 -3
- data/lib/dropbox_api/endpoints/files/upload_session_start.rb +4 -3
- data/lib/dropbox_api/endpoints/rpc.rb +2 -1
- data/lib/dropbox_api/endpoints/rpc_content.rb +2 -1
- data/lib/dropbox_api/endpoints/rpc_notify.rb +2 -1
- data/lib/dropbox_api/endpoints/sharing/add_file_member.rb +4 -3
- data/lib/dropbox_api/endpoints/sharing/add_folder_member.rb +4 -3
- data/lib/dropbox_api/endpoints/sharing/create_shared_link_with_settings.rb +4 -3
- data/lib/dropbox_api/endpoints/sharing/get_shared_link_metadata.rb +3 -2
- data/lib/dropbox_api/endpoints/sharing/list_file_members.rb +4 -3
- data/lib/dropbox_api/endpoints/sharing/list_folder_members.rb +4 -3
- data/lib/dropbox_api/endpoints/sharing/list_shared_links.rb +2 -1
- data/lib/dropbox_api/endpoints/sharing/revoke_shared_link.rb +3 -2
- data/lib/dropbox_api/endpoints/sharing/share_folder.rb +3 -2
- data/lib/dropbox_api/endpoints/sharing/unshare_file.rb +3 -2
- data/lib/dropbox_api/endpoints/users/get_account.rb +3 -2
- data/lib/dropbox_api/endpoints/users/get_account_batch.rb +3 -2
- data/lib/dropbox_api/endpoints/users/get_current_account.rb +2 -1
- data/lib/dropbox_api/endpoints/users/get_space_usage.rb +2 -1
- data/lib/dropbox_api/endpoints/virtual/upload_by_chunks.rb +1 -0
- data/lib/dropbox_api/errors/add_file_member_error.rb +5 -4
- data/lib/dropbox_api/errors/add_folder_member_error.rb +11 -10
- data/lib/dropbox_api/errors/add_member_selector_error.rb +6 -5
- data/lib/dropbox_api/errors/already_shared_error.rb +1 -0
- data/lib/dropbox_api/errors/basic_error.rb +2 -1
- data/lib/dropbox_api/errors/create_file_request_error.rb +1 -0
- data/lib/dropbox_api/errors/create_folder_batch_error.rb +8 -0
- data/lib/dropbox_api/errors/create_folder_error.rb +2 -1
- data/lib/dropbox_api/errors/create_shared_link_with_settings_error.rb +6 -5
- data/lib/dropbox_api/errors/delete_error.rb +5 -3
- data/lib/dropbox_api/errors/download_error.rb +2 -1
- data/lib/dropbox_api/errors/file_member_action_error.rb +5 -4
- data/lib/dropbox_api/errors/get_account_error.rb +2 -1
- data/lib/dropbox_api/errors/get_copy_reference_error.rb +2 -1
- data/lib/dropbox_api/errors/get_metadata_error.rb +2 -1
- data/lib/dropbox_api/errors/http_error.rb +1 -0
- data/lib/dropbox_api/errors/list_folder_continue_error.rb +3 -2
- data/lib/dropbox_api/errors/list_folder_error.rb +2 -1
- data/lib/dropbox_api/errors/list_folder_longpoll_error.rb +2 -1
- data/lib/dropbox_api/errors/list_revisions_error.rb +2 -1
- data/lib/dropbox_api/errors/list_shared_links_error.rb +3 -2
- data/lib/dropbox_api/errors/lookup_error.rb +6 -5
- data/lib/dropbox_api/errors/poll_error.rb +3 -2
- data/lib/dropbox_api/errors/preview_error.rb +5 -4
- data/lib/dropbox_api/errors/relocation_batch_entry_error.rb +10 -0
- data/lib/dropbox_api/errors/relocation_error.rb +8 -7
- data/lib/dropbox_api/errors/restore_error.rb +4 -3
- data/lib/dropbox_api/errors/revoke_shared_link_error.rb +5 -4
- data/lib/dropbox_api/errors/save_copy_reference_error.rb +6 -5
- data/lib/dropbox_api/errors/save_url_error.rb +5 -4
- data/lib/dropbox_api/errors/search_error.rb +2 -1
- data/lib/dropbox_api/errors/settings_error.rb +3 -2
- data/lib/dropbox_api/errors/share_folder_error.rb +6 -5
- data/lib/dropbox_api/errors/share_path_error.rb +12 -11
- data/lib/dropbox_api/errors/shared_folder_access_error.rb +5 -4
- data/lib/dropbox_api/errors/shared_link_error.rb +4 -3
- data/lib/dropbox_api/errors/sharing_file_access_error.rb +6 -5
- data/lib/dropbox_api/errors/sharing_user_error.rb +2 -1
- data/lib/dropbox_api/errors/thumbnail_batch_error.rb +2 -1
- data/lib/dropbox_api/errors/thumbnail_error.rb +5 -4
- data/lib/dropbox_api/errors/too_many_requests_error.rb +3 -2
- data/lib/dropbox_api/errors/unshare_file_error.rb +3 -2
- data/lib/dropbox_api/errors/upload_error.rb +2 -1
- data/lib/dropbox_api/errors/upload_session_finish_error.rb +4 -3
- data/lib/dropbox_api/errors/upload_session_lookup_error.rb +5 -4
- data/lib/dropbox_api/errors/upload_session_offset_error.rb +1 -0
- data/lib/dropbox_api/errors/upload_write_failed_error.rb +2 -1
- data/lib/dropbox_api/errors/write_conflict_error.rb +4 -3
- data/lib/dropbox_api/errors/write_error.rb +6 -5
- data/lib/dropbox_api/metadata/access_level.rb +1 -0
- data/lib/dropbox_api/metadata/add_file_member_result.rb +1 -0
- data/lib/dropbox_api/metadata/add_member.rb +3 -2
- data/lib/dropbox_api/metadata/base.rb +2 -1
- data/lib/dropbox_api/metadata/basic_account.rb +1 -0
- data/lib/dropbox_api/metadata/commit_info.rb +2 -1
- data/lib/dropbox_api/metadata/deleted.rb +1 -0
- data/lib/dropbox_api/metadata/dimensions.rb +1 -0
- data/lib/dropbox_api/metadata/field.rb +7 -4
- data/lib/dropbox_api/metadata/file.rb +2 -1
- data/lib/dropbox_api/metadata/file_categories_list.rb +9 -0
- data/lib/dropbox_api/metadata/file_category.rb +22 -0
- data/lib/dropbox_api/metadata/file_extensions_list.rb +13 -0
- data/lib/dropbox_api/metadata/file_link_metadata.rb +1 -0
- data/lib/dropbox_api/metadata/file_member_action.rb +2 -1
- data/lib/dropbox_api/metadata/file_request.rb +1 -0
- data/lib/dropbox_api/metadata/file_status.rb +14 -0
- data/lib/dropbox_api/metadata/folder.rb +2 -1
- data/lib/dropbox_api/metadata/folder_link_metadata.rb +1 -0
- data/lib/dropbox_api/metadata/folder_sharing_info.rb +1 -0
- data/lib/dropbox_api/metadata/link_permissions.rb +1 -0
- data/lib/dropbox_api/metadata/location.rb +1 -0
- data/lib/dropbox_api/metadata/media_info.rb +1 -0
- data/lib/dropbox_api/metadata/media_metadata.rb +1 -0
- data/lib/dropbox_api/metadata/member.rb +6 -5
- data/lib/dropbox_api/metadata/member_action.rb +1 -0
- data/lib/dropbox_api/metadata/member_action_list.rb +1 -0
- data/lib/dropbox_api/metadata/member_permission.rb +1 -0
- data/lib/dropbox_api/metadata/member_permission_list.rb +1 -0
- data/lib/dropbox_api/metadata/metadata_v2.rb +7 -0
- data/lib/dropbox_api/metadata/name.rb +1 -0
- data/lib/dropbox_api/metadata/parent_folder_access_info.rb +1 -0
- data/lib/dropbox_api/metadata/photo_metadata.rb +1 -0
- data/lib/dropbox_api/metadata/resource.rb +2 -1
- data/lib/dropbox_api/metadata/search_match_field_options.rb +9 -0
- data/lib/dropbox_api/metadata/search_match_type_v2.rb +16 -0
- data/lib/dropbox_api/metadata/search_match_v2.rb +18 -0
- data/lib/dropbox_api/metadata/search_options.rb +33 -0
- data/lib/dropbox_api/metadata/search_order_by.rb +14 -0
- data/lib/dropbox_api/metadata/shared_folder.rb +1 -0
- data/lib/dropbox_api/metadata/shared_folder_policy.rb +1 -0
- data/lib/dropbox_api/metadata/shared_link.rb +3 -2
- data/lib/dropbox_api/metadata/shared_link_metadata.rb +2 -1
- data/lib/dropbox_api/metadata/space_allocation.rb +1 -0
- data/lib/dropbox_api/metadata/space_usage.rb +1 -0
- data/lib/dropbox_api/metadata/tag.rb +2 -1
- data/lib/dropbox_api/metadata/team.rb +1 -0
- data/lib/dropbox_api/metadata/team_member_info.rb +1 -0
- data/lib/dropbox_api/metadata/thumbnail_batch_result_data.rb +1 -0
- data/lib/dropbox_api/metadata/thumbnail_batch_result_entry.rb +3 -2
- data/lib/dropbox_api/metadata/upload_session_cursor.rb +1 -0
- data/lib/dropbox_api/metadata/video_metadata.rb +1 -0
- data/lib/dropbox_api/metadata/write_mode.rb +6 -5
- data/lib/dropbox_api/middleware/decode_result.rb +3 -2
- data/lib/dropbox_api/middleware/stack.rb +1 -0
- data/lib/dropbox_api/options_validator.rb +1 -0
- data/lib/dropbox_api/result_builder.rb +3 -2
- data/lib/dropbox_api/results/add_file_member_result_list.rb +1 -0
- data/lib/dropbox_api/results/base.rb +1 -0
- data/lib/dropbox_api/results/basic_account_batch.rb +1 -0
- data/lib/dropbox_api/results/copy_batch_result.rb +15 -0
- data/lib/dropbox_api/results/create_folder_batch_result.rb +21 -0
- data/lib/dropbox_api/results/create_folder_batch_result_entry.rb +20 -0
- data/lib/dropbox_api/results/delete_batch_result.rb +21 -0
- data/lib/dropbox_api/results/delete_batch_result_entry.rb +16 -0
- data/lib/dropbox_api/results/get_copy_reference_result.rb +4 -3
- data/lib/dropbox_api/results/get_temporary_link_result.rb +3 -2
- data/lib/dropbox_api/results/get_thumbnail_batch_result.rb +2 -1
- data/lib/dropbox_api/results/list_folder_get_latest_cursor_result.rb +2 -1
- data/lib/dropbox_api/results/list_folder_longpoll_result.rb +3 -2
- data/lib/dropbox_api/results/list_folder_result.rb +4 -3
- data/lib/dropbox_api/results/list_revisions_result.rb +3 -2
- data/lib/dropbox_api/results/list_shared_links_result.rb +4 -3
- data/lib/dropbox_api/results/relocation_batch_result.rb +21 -0
- data/lib/dropbox_api/results/relocation_batch_result_entry.rb +16 -0
- data/lib/dropbox_api/results/save_copy_reference_result.rb +2 -1
- data/lib/dropbox_api/results/save_url_job_status.rb +7 -6
- data/lib/dropbox_api/results/save_url_result.rb +2 -1
- data/lib/dropbox_api/results/search/match.rb +3 -2
- data/lib/dropbox_api/results/search_v2_result.rb +24 -0
- data/lib/dropbox_api/results/share_folder_launch.rb +4 -3
- data/lib/dropbox_api/results/shared_file_members.rb +5 -4
- data/lib/dropbox_api/results/shared_folder_members.rb +5 -4
- data/lib/dropbox_api/results/upload_session_start.rb +2 -1
- data/lib/dropbox_api/results/void_result.rb +1 -0
- data/lib/dropbox_api/version.rb +2 -1
- data/lib/dropbox_api.rb +28 -3
- data/yardoc/endpoint_handler.rb +2 -1
- data/yardoc/helpers/html_helper.rb +2 -1
- data/yardoc/rspec.rb +3 -2
- data/yardoc/templates/default/method_details/setup.rb +1 -0
- metadata +64 -28
- data/CHANGES.md +0 -7
- data/lib/dropbox_api/results/search_result.rb +0 -22
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
module DropboxApi::MiddleWare
|
|
2
3
|
class DecodeResult < Faraday::Middleware
|
|
3
4
|
def call(rq_env)
|
|
@@ -14,7 +15,7 @@ module DropboxApi::MiddleWare
|
|
|
14
15
|
# Dropbox may send a response with the string 'null' in its body, this
|
|
15
16
|
# would be a void result. `add_folder_member` is an example of an
|
|
16
17
|
# endpoint without return values.
|
|
17
|
-
if json ==
|
|
18
|
+
if json == 'null'
|
|
18
19
|
{}
|
|
19
20
|
else
|
|
20
21
|
JSON.parse json
|
|
@@ -22,5 +23,5 @@ module DropboxApi::MiddleWare
|
|
|
22
23
|
end
|
|
23
24
|
end
|
|
24
25
|
|
|
25
|
-
Faraday::Response.register_middleware :
|
|
26
|
+
Faraday::Response.register_middleware decode_result: DecodeResult
|
|
26
27
|
end
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
module DropboxApi
|
|
2
3
|
class ResultBuilder
|
|
3
4
|
def initialize(response_data)
|
|
@@ -5,11 +6,11 @@ module DropboxApi
|
|
|
5
6
|
end
|
|
6
7
|
|
|
7
8
|
def error_summary
|
|
8
|
-
@response_data[
|
|
9
|
+
@response_data['error_summary'] if @response_data.is_a? Hash
|
|
9
10
|
end
|
|
10
11
|
|
|
11
12
|
def error
|
|
12
|
-
@response_data[
|
|
13
|
+
@response_data['error']
|
|
13
14
|
end
|
|
14
15
|
|
|
15
16
|
def has_error?
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
module DropboxApi::Results
|
|
3
|
+
class CopyBatchResult < DropboxApi::Results::Base
|
|
4
|
+
def self.new(result_data)
|
|
5
|
+
case result_data['.tag']
|
|
6
|
+
when 'async_job_id'
|
|
7
|
+
result_data['async_job_id']
|
|
8
|
+
when 'complete'
|
|
9
|
+
RelocationBatchResult.new(result_data)
|
|
10
|
+
else
|
|
11
|
+
raise NotImplementedError, "Unknown result type: #{result_data['.tag']}"
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
module DropboxApi::Results
|
|
3
|
+
# Result returned by {Client#create_folder_batch} that may either launch an
|
|
4
|
+
# asynchronous job or complete synchronously.
|
|
5
|
+
#
|
|
6
|
+
# The value will be either a job id or a list of job statuses.
|
|
7
|
+
class CreateFolderBatchResult < DropboxApi::Results::Base
|
|
8
|
+
def self.new(result_data)
|
|
9
|
+
case result_data['.tag']
|
|
10
|
+
when 'async_job_id'
|
|
11
|
+
result_data
|
|
12
|
+
when 'complete'
|
|
13
|
+
result_data['entries'].map do |entry|
|
|
14
|
+
DropboxApi::Results::CreateFolderBatchResultEntry.new(entry)
|
|
15
|
+
end
|
|
16
|
+
else
|
|
17
|
+
raise NotImplementedError, "Unknown result type: #{result_data['.tag']}"
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
module DropboxApi::Results
|
|
3
|
+
class CreateFolderBatchResultEntry < DropboxApi::Results::Base
|
|
4
|
+
def self.new(result_data)
|
|
5
|
+
case result_data['.tag']
|
|
6
|
+
when 'success'
|
|
7
|
+
DropboxApi::Metadata::Folder.new result_data['metadata']
|
|
8
|
+
when 'failure'
|
|
9
|
+
# At the moment, this is a `CreateFolderEntryError` which is an open
|
|
10
|
+
# union that can only be a `WriteError`. In the future, more errors
|
|
11
|
+
# could be added to the API which means we'd have to implement the
|
|
12
|
+
# actual `CreateFolderEntryError` class.
|
|
13
|
+
DropboxApi::Errors::WriteError
|
|
14
|
+
.build('Folder operation failed', result_data['failure']['path'])
|
|
15
|
+
else
|
|
16
|
+
raise NotImplementedError, "Unknown result type: #{result_data['.tag']}"
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
module DropboxApi::Results
|
|
3
|
+
# Result returned by {Client#delete_batch} that may either launch an
|
|
4
|
+
# asynchronous job or complete synchronously.
|
|
5
|
+
#
|
|
6
|
+
# The value will be either a job id or a list of job statuses.
|
|
7
|
+
class DeleteBatchResult < DropboxApi::Results::Base
|
|
8
|
+
def self.new(result_data)
|
|
9
|
+
case result_data['.tag']
|
|
10
|
+
when 'async_job_id'
|
|
11
|
+
result_data
|
|
12
|
+
when 'complete'
|
|
13
|
+
result_data['entries'].map do |entry|
|
|
14
|
+
DropboxApi::Results::DeleteBatchResultEntry.new(entry)
|
|
15
|
+
end
|
|
16
|
+
else
|
|
17
|
+
raise NotImplementedError, "Unknown result type: #{result_data[".tag"]}"
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
module DropboxApi::Results
|
|
3
|
+
class DeleteBatchResultEntry < DropboxApi::Results::Base
|
|
4
|
+
def self.new(result_data)
|
|
5
|
+
case result_data['.tag']
|
|
6
|
+
when 'success'
|
|
7
|
+
DropboxApi::Metadata::Resource.new result_data['metadata']
|
|
8
|
+
when 'failure'
|
|
9
|
+
DropboxApi::Errors::DeleteError
|
|
10
|
+
.build('Delete operation failed', result_data['failure'])
|
|
11
|
+
else
|
|
12
|
+
raise NotImplementedError, "Unknown result type: #{result_data['.tag']}"
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
@@ -1,20 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
module DropboxApi::Results
|
|
2
3
|
class GetCopyReferenceResult < DropboxApi::Results::Base
|
|
3
4
|
# Metadata of the file or folder.
|
|
4
5
|
def resource
|
|
5
|
-
@resource ||= DropboxApi::Metadata::Resource.new @data[
|
|
6
|
+
@resource ||= DropboxApi::Metadata::Resource.new @data['metadata']
|
|
6
7
|
end
|
|
7
8
|
|
|
8
9
|
# A copy reference to the file or folder.
|
|
9
10
|
def copy_reference
|
|
10
|
-
@copy_reference ||= @data[
|
|
11
|
+
@copy_reference ||= @data['copy_reference']
|
|
11
12
|
end
|
|
12
13
|
|
|
13
14
|
# The expiration date of the copy reference.
|
|
14
15
|
# This value is currently set to be far enough in the future
|
|
15
16
|
# so that expiration is effectively not an issue.
|
|
16
17
|
def expires
|
|
17
|
-
@expires ||= Time.parse(@data[
|
|
18
|
+
@expires ||= Time.parse(@data['expires'])
|
|
18
19
|
end
|
|
19
20
|
end
|
|
20
21
|
end
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
module DropboxApi::Results
|
|
2
3
|
class GetTemporaryLinkResult < DropboxApi::Results::Base
|
|
3
4
|
def file
|
|
4
|
-
@file ||= DropboxApi::Metadata::File.new(@data[
|
|
5
|
+
@file ||= DropboxApi::Metadata::File.new(@data['metadata'])
|
|
5
6
|
end
|
|
6
7
|
|
|
7
8
|
def link
|
|
8
|
-
@data[
|
|
9
|
+
@data['link']
|
|
9
10
|
end
|
|
10
11
|
end
|
|
11
12
|
end
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
module DropboxApi::Results
|
|
2
3
|
class GetThumbnailBatchResult < DropboxApi::Results::Base
|
|
3
4
|
def entries
|
|
4
|
-
@entries ||= @data[
|
|
5
|
+
@entries ||= @data['entries'].map do |entry|
|
|
5
6
|
DropboxApi::Metadata::ThumbnailBatchResultEntry.new entry
|
|
6
7
|
end
|
|
7
8
|
end
|
|
@@ -1,15 +1,16 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
module DropboxApi::Results
|
|
2
3
|
class ListFolderLongpollResult < DropboxApi::Results::Base
|
|
3
4
|
# Indicates whether new changes are available. If true, call
|
|
4
5
|
# `list_folder_continue` to retrieve the changes.
|
|
5
6
|
def changes
|
|
6
|
-
@data[
|
|
7
|
+
@data['changes'].to_s == 'true'
|
|
7
8
|
end
|
|
8
9
|
|
|
9
10
|
# If present, backoff for at least this many seconds before calling
|
|
10
11
|
# `list_folder_longpoll` again. This field is optional.
|
|
11
12
|
def backoff
|
|
12
|
-
@data[
|
|
13
|
+
@data['backoff']
|
|
13
14
|
end
|
|
14
15
|
end
|
|
15
16
|
end
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
module DropboxApi::Results
|
|
2
3
|
class ListFolderResult < DropboxApi::Results::Base
|
|
3
4
|
# A collection of files and directories.
|
|
4
5
|
def entries
|
|
5
|
-
@entries ||= @data[
|
|
6
|
+
@entries ||= @data['entries'].map do |entry|
|
|
6
7
|
DropboxApi::Metadata::Resource.new entry
|
|
7
8
|
end
|
|
8
9
|
end
|
|
@@ -10,13 +11,13 @@ module DropboxApi::Results
|
|
|
10
11
|
# Pass the cursor into `list_folder_continue` to see what's changed in the
|
|
11
12
|
# folder since your previous query.
|
|
12
13
|
def cursor
|
|
13
|
-
@data[
|
|
14
|
+
@data['cursor']
|
|
14
15
|
end
|
|
15
16
|
|
|
16
17
|
# If true, then there are more entries available. Pass the cursor to
|
|
17
18
|
# `list_folder_continue` to retrieve the rest.
|
|
18
19
|
def has_more?
|
|
19
|
-
@data[
|
|
20
|
+
@data['has_more'].to_s == 'true'
|
|
20
21
|
end
|
|
21
22
|
end
|
|
22
23
|
end
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
module DropboxApi::Results
|
|
2
3
|
class ListRevisionsResult < DropboxApi::Results::Base
|
|
3
4
|
# A collection of files and directories.
|
|
4
5
|
def entries
|
|
5
|
-
@entries ||= @data[
|
|
6
|
+
@entries ||= @data['entries'].map do |entry|
|
|
6
7
|
DropboxApi::Metadata::File.new entry
|
|
7
8
|
end
|
|
8
9
|
end
|
|
9
10
|
|
|
10
11
|
def is_deleted?
|
|
11
|
-
@data[
|
|
12
|
+
@data['is_deleted'] == true
|
|
12
13
|
end
|
|
13
14
|
end
|
|
14
15
|
end
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
module DropboxApi::Results
|
|
2
3
|
class ListSharedLinksResult < DropboxApi::Results::Base
|
|
3
4
|
# Shared links applicable to the path argument.
|
|
4
5
|
def links
|
|
5
|
-
@entries ||= @data[
|
|
6
|
+
@entries ||= @data['links'].map do |entry|
|
|
6
7
|
DropboxApi::Metadata::SharedLinkMetadata.new entry
|
|
7
8
|
end
|
|
8
9
|
end
|
|
@@ -10,13 +11,13 @@ module DropboxApi::Results
|
|
|
10
11
|
# Pass the cursor into `list_folder_continue` to see what's changed in the
|
|
11
12
|
# folder since your previous query.
|
|
12
13
|
def cursor
|
|
13
|
-
@data[
|
|
14
|
+
@data['cursor']
|
|
14
15
|
end
|
|
15
16
|
|
|
16
17
|
# If true, then there are more entries available. Pass the cursor to
|
|
17
18
|
# `list_folder_continue` to retrieve the rest.
|
|
18
19
|
def has_more?
|
|
19
|
-
@data[
|
|
20
|
+
@data['has_more'].to_s == 'true'
|
|
20
21
|
end
|
|
21
22
|
end
|
|
22
23
|
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
module DropboxApi::Results
|
|
3
|
+
# Result returned by {Client#copy_batch} or {Client#move_batch} that may
|
|
4
|
+
# either launch an asynchronous job or complete synchronously.
|
|
5
|
+
#
|
|
6
|
+
# The value will be either `:in_progress` or a list of job statuses.
|
|
7
|
+
class RelocationBatchResult < DropboxApi::Results::Base
|
|
8
|
+
def self.new(result_data)
|
|
9
|
+
case result_data['.tag']
|
|
10
|
+
when 'in_progress'
|
|
11
|
+
:in_progress
|
|
12
|
+
when 'complete'
|
|
13
|
+
result_data['entries'].map do |entry|
|
|
14
|
+
DropboxApi::Results::RelocationBatchResultEntry.new(entry)
|
|
15
|
+
end
|
|
16
|
+
else
|
|
17
|
+
raise NotImplementedError, "Unknown result type: #{result_data['.tag']}"
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
module DropboxApi::Results
|
|
3
|
+
class RelocationBatchResultEntry < DropboxApi::Results::Base
|
|
4
|
+
def self.new(result_data)
|
|
5
|
+
case result_data['.tag']
|
|
6
|
+
when 'success'
|
|
7
|
+
DropboxApi::Metadata::Resource.new result_data['success']
|
|
8
|
+
when 'failure'
|
|
9
|
+
DropboxApi::Errors::RelocationBatchEntryError
|
|
10
|
+
.build('File or folder operation failed', result_data['failure'])
|
|
11
|
+
else
|
|
12
|
+
raise NotImplementedError, "Unknown result type: #{result_data['.tag']}"
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
module DropboxApi::Results
|
|
2
3
|
class SaveCopyReferenceResult < DropboxApi::Results::Base
|
|
3
4
|
# The saved file or folder in the user's Dropbox.
|
|
4
5
|
def resource
|
|
5
|
-
@resource ||= DropboxApi::Metadata::Resource.new @data[
|
|
6
|
+
@resource ||= DropboxApi::Metadata::Resource.new @data['metadata']
|
|
6
7
|
end
|
|
7
8
|
end
|
|
8
9
|
end
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
module DropboxApi::Results
|
|
2
3
|
class SaveUrlJobStatus < DropboxApi::Results::Base
|
|
3
4
|
def self.new(result_data)
|
|
4
|
-
case result_data[
|
|
5
|
-
when
|
|
5
|
+
case result_data['.tag']
|
|
6
|
+
when 'in_progress'
|
|
6
7
|
:in_progress
|
|
7
|
-
when
|
|
8
|
+
when 'complete'
|
|
8
9
|
DropboxApi::Metadata::File.new result_data
|
|
9
|
-
when
|
|
10
|
-
DropboxApi::Errors::SaveUrlError.build(
|
|
11
|
-
result_data[
|
|
10
|
+
when 'failed'
|
|
11
|
+
DropboxApi::Errors::SaveUrlError.build('Async job failed',
|
|
12
|
+
result_data['failed'])
|
|
12
13
|
else
|
|
13
14
|
raise NotImplementedError, "Unknown result type: #{result_data[".tag"]}"
|
|
14
15
|
end
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
module DropboxApi::Results
|
|
2
3
|
class SaveUrlResult < DropboxApi::Results::Base
|
|
3
4
|
# Example with an async job:
|
|
@@ -8,7 +9,7 @@ module DropboxApi::Results
|
|
|
8
9
|
#
|
|
9
10
|
# I couldn't manage to get anything other than an async job.
|
|
10
11
|
def async_job_id
|
|
11
|
-
@data[
|
|
12
|
+
@data['async_job_id']
|
|
12
13
|
end
|
|
13
14
|
end
|
|
14
15
|
end
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
module DropboxApi::Results::Search
|
|
2
3
|
class Match
|
|
3
4
|
def initialize(data)
|
|
@@ -5,11 +6,11 @@ module DropboxApi::Results::Search
|
|
|
5
6
|
end
|
|
6
7
|
|
|
7
8
|
def match_type
|
|
8
|
-
@data[
|
|
9
|
+
@data['match_type']
|
|
9
10
|
end
|
|
10
11
|
|
|
11
12
|
def resource
|
|
12
|
-
@resource ||= DropboxApi::Metadata::Resource.new @data[
|
|
13
|
+
@resource ||= DropboxApi::Metadata::Resource.new @data['metadata']
|
|
13
14
|
end
|
|
14
15
|
end
|
|
15
16
|
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
module DropboxApi::Results
|
|
3
|
+
class SearchV2Result < DropboxApi::Results::Base
|
|
4
|
+
# A list (possibly empty) of matches for the query.
|
|
5
|
+
def matches
|
|
6
|
+
@matches ||= @data['matches'].map do |match|
|
|
7
|
+
DropboxApi::Metadata::SearchMatchV2.new match
|
|
8
|
+
end
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
# Used for paging. If true, indicates there is another page of results
|
|
12
|
+
# available that can be fetched by calling search again.
|
|
13
|
+
def has_more?
|
|
14
|
+
@data['more'].to_s == 'true'
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# Pass the cursor into #search_continue to fetch the next page of results
|
|
18
|
+
# (not yet implemented).
|
|
19
|
+
# This field is optional.
|
|
20
|
+
def cursor
|
|
21
|
+
@data['cursor']
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
module DropboxApi::Results
|
|
2
3
|
class ShareFolderLaunch
|
|
3
4
|
def self.new(result_data)
|
|
4
|
-
case result_data[
|
|
5
|
-
when
|
|
5
|
+
case result_data['.tag']
|
|
6
|
+
when 'complete'
|
|
6
7
|
DropboxApi::Metadata::SharedFolder.new result_data
|
|
7
|
-
when
|
|
8
|
+
when 'async_job_id'
|
|
8
9
|
result_data
|
|
9
10
|
else
|
|
10
11
|
raise ArgumentError, "Unable to infer resource type for `#{tag}`"
|
|
@@ -1,19 +1,20 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
module DropboxApi::Results
|
|
2
3
|
class SharedFileMembers < DropboxApi::Results::Base
|
|
3
4
|
def users
|
|
4
|
-
@data[
|
|
5
|
+
@data['users']
|
|
5
6
|
end
|
|
6
7
|
|
|
7
8
|
def groups
|
|
8
|
-
@data[
|
|
9
|
+
@data['groups']
|
|
9
10
|
end
|
|
10
11
|
|
|
11
12
|
def invitees
|
|
12
|
-
@data[
|
|
13
|
+
@data['invitees']
|
|
13
14
|
end
|
|
14
15
|
|
|
15
16
|
def cursor
|
|
16
|
-
@data[
|
|
17
|
+
@data['cursor']
|
|
17
18
|
end
|
|
18
19
|
end
|
|
19
20
|
end
|
|
@@ -1,19 +1,20 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
module DropboxApi::Results
|
|
2
3
|
class SharedFolderMembers < DropboxApi::Results::Base
|
|
3
4
|
def users
|
|
4
|
-
@data[
|
|
5
|
+
@data['users']
|
|
5
6
|
end
|
|
6
7
|
|
|
7
8
|
def groups
|
|
8
|
-
@data[
|
|
9
|
+
@data['groups']
|
|
9
10
|
end
|
|
10
11
|
|
|
11
12
|
def invitees
|
|
12
|
-
@data[
|
|
13
|
+
@data['invitees']
|
|
13
14
|
end
|
|
14
15
|
|
|
15
16
|
def cursor
|
|
16
|
-
@data[
|
|
17
|
+
@data['cursor']
|
|
17
18
|
end
|
|
18
19
|
end
|
|
19
20
|
end
|
data/lib/dropbox_api/version.rb
CHANGED
data/lib/dropbox_api.rb
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
require 'dropbox_api/version'
|
|
2
3
|
|
|
3
4
|
require 'time'
|
|
@@ -40,6 +41,16 @@ require 'dropbox_api/metadata/folder_sharing_info'
|
|
|
40
41
|
require 'dropbox_api/metadata/folder'
|
|
41
42
|
require 'dropbox_api/metadata/deleted'
|
|
42
43
|
require 'dropbox_api/metadata/resource'
|
|
44
|
+
require 'dropbox_api/metadata/metadata_v2'
|
|
45
|
+
require 'dropbox_api/metadata/file_category'
|
|
46
|
+
require 'dropbox_api/metadata/file_categories_list'
|
|
47
|
+
require 'dropbox_api/metadata/file_extensions_list'
|
|
48
|
+
require 'dropbox_api/metadata/search_order_by'
|
|
49
|
+
require 'dropbox_api/metadata/file_status'
|
|
50
|
+
require 'dropbox_api/metadata/search_options'
|
|
51
|
+
require 'dropbox_api/metadata/search_match_type_v2'
|
|
52
|
+
require 'dropbox_api/metadata/search_match_v2'
|
|
53
|
+
require 'dropbox_api/metadata/search_match_field_options'
|
|
43
54
|
require 'dropbox_api/metadata/shared_folder_policy'
|
|
44
55
|
require 'dropbox_api/metadata/shared_folder'
|
|
45
56
|
require 'dropbox_api/metadata/file_link_metadata'
|
|
@@ -71,9 +82,9 @@ require 'dropbox_api/errors/share_path_error'
|
|
|
71
82
|
require 'dropbox_api/errors/share_folder_error'
|
|
72
83
|
require 'dropbox_api/errors/get_copy_reference_error'
|
|
73
84
|
require 'dropbox_api/errors/save_copy_reference_error'
|
|
85
|
+
require 'dropbox_api/errors/create_folder_batch_error'
|
|
74
86
|
require 'dropbox_api/errors/create_folder_error'
|
|
75
87
|
require 'dropbox_api/errors/create_shared_link_with_settings_error'
|
|
76
|
-
require 'dropbox_api/errors/delete_error'
|
|
77
88
|
require 'dropbox_api/errors/download_error'
|
|
78
89
|
require 'dropbox_api/errors/sharing_file_access_error'
|
|
79
90
|
require 'dropbox_api/errors/sharing_user_error'
|
|
@@ -98,14 +109,21 @@ require 'dropbox_api/errors/poll_error'
|
|
|
98
109
|
require 'dropbox_api/errors/add_file_member_error'
|
|
99
110
|
require 'dropbox_api/errors/add_folder_member_error'
|
|
100
111
|
require 'dropbox_api/errors/too_many_requests_error'
|
|
112
|
+
require 'dropbox_api/errors/relocation_batch_entry_error'
|
|
101
113
|
require 'dropbox_api/errors/get_account_error'
|
|
102
114
|
require 'dropbox_api/errors/thumbnail_batch_error'
|
|
103
115
|
require 'dropbox_api/errors/thumbnail_error'
|
|
104
116
|
require 'dropbox_api/errors/create_file_request_error'
|
|
117
|
+
require 'dropbox_api/errors/delete_error'
|
|
105
118
|
|
|
106
119
|
require 'dropbox_api/result_builder'
|
|
107
120
|
require 'dropbox_api/results/base'
|
|
108
121
|
require 'dropbox_api/results/basic_account_batch'
|
|
122
|
+
require 'dropbox_api/results/create_folder_batch_result'
|
|
123
|
+
require 'dropbox_api/results/create_folder_batch_result_entry'
|
|
124
|
+
require 'dropbox_api/results/relocation_batch_result'
|
|
125
|
+
require 'dropbox_api/results/relocation_batch_result_entry'
|
|
126
|
+
require 'dropbox_api/results/copy_batch_result'
|
|
109
127
|
require 'dropbox_api/results/get_copy_reference_result'
|
|
110
128
|
require 'dropbox_api/results/save_copy_reference_result'
|
|
111
129
|
require 'dropbox_api/results/add_file_member_result_list'
|
|
@@ -118,13 +136,14 @@ require 'dropbox_api/results/list_folder_get_latest_cursor_result'
|
|
|
118
136
|
require 'dropbox_api/results/list_shared_links_result'
|
|
119
137
|
require 'dropbox_api/results/save_url_result'
|
|
120
138
|
require 'dropbox_api/results/save_url_job_status'
|
|
121
|
-
require 'dropbox_api/results/
|
|
122
|
-
require 'dropbox_api/results/search_result'
|
|
139
|
+
require 'dropbox_api/results/search_v2_result'
|
|
123
140
|
require 'dropbox_api/results/share_folder_launch'
|
|
124
141
|
require 'dropbox_api/results/shared_file_members'
|
|
125
142
|
require 'dropbox_api/results/shared_folder_members'
|
|
126
143
|
require 'dropbox_api/results/void_result'
|
|
127
144
|
require 'dropbox_api/results/upload_session_start'
|
|
145
|
+
require 'dropbox_api/results/delete_batch_result_entry'
|
|
146
|
+
require 'dropbox_api/results/delete_batch_result'
|
|
128
147
|
|
|
129
148
|
require 'dropbox_api/client'
|
|
130
149
|
require 'dropbox_api/connection_builder'
|
|
@@ -140,9 +159,12 @@ require 'dropbox_api/endpoints/content_upload'
|
|
|
140
159
|
require 'dropbox_api/endpoints/auth/token_revoke'
|
|
141
160
|
|
|
142
161
|
require 'dropbox_api/endpoints/files/copy'
|
|
162
|
+
require 'dropbox_api/endpoints/files/copy_batch_check'
|
|
163
|
+
require 'dropbox_api/endpoints/files/copy_batch'
|
|
143
164
|
require 'dropbox_api/endpoints/files/copy_reference_get'
|
|
144
165
|
require 'dropbox_api/endpoints/files/copy_reference_save'
|
|
145
166
|
require 'dropbox_api/endpoints/files/create_folder'
|
|
167
|
+
require 'dropbox_api/endpoints/files/create_folder_batch'
|
|
146
168
|
require 'dropbox_api/endpoints/files/delete'
|
|
147
169
|
require 'dropbox_api/endpoints/files/download'
|
|
148
170
|
require 'dropbox_api/endpoints/files/get_metadata'
|
|
@@ -165,6 +187,9 @@ require 'dropbox_api/endpoints/files/upload'
|
|
|
165
187
|
require 'dropbox_api/endpoints/files/upload_session_start'
|
|
166
188
|
require 'dropbox_api/endpoints/files/upload_session_append_v2'
|
|
167
189
|
require 'dropbox_api/endpoints/files/upload_session_finish'
|
|
190
|
+
require 'dropbox_api/endpoints/files/delete_batch_check'
|
|
191
|
+
require 'dropbox_api/endpoints/files/delete_batch'
|
|
192
|
+
require 'dropbox_api/endpoints/files/create_folder_batch_check'
|
|
168
193
|
|
|
169
194
|
require 'dropbox_api/endpoints/sharing/add_file_member'
|
|
170
195
|
require 'dropbox_api/endpoints/sharing/list_file_members'
|