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.
Files changed (487) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +1 -0
  3. data/.rubocop.yml +15 -0
  4. data/.travis.yml +0 -2
  5. data/Gemfile +6 -1
  6. data/README.md +7 -2
  7. data/Rakefile +4 -3
  8. data/TODO.md +16 -7
  9. data/api_coverage.md +8 -8
  10. data/bin/console +4 -3
  11. data/docs/DropboxApi/Authenticator.html +3 -3
  12. data/docs/DropboxApi/ChunkedUploader.html +3 -3
  13. data/docs/DropboxApi/Client.html +1541 -182
  14. data/docs/DropboxApi/ConnectionBuilder.html +3 -3
  15. data/docs/DropboxApi/Endpoints/Auth/TokenRevoke.html +3 -3
  16. data/docs/DropboxApi/Endpoints/Auth.html +3 -3
  17. data/docs/DropboxApi/Endpoints/Base.html +3 -3
  18. data/docs/DropboxApi/Endpoints/ContentDownload.html +3 -3
  19. data/docs/DropboxApi/Endpoints/ContentUpload.html +3 -3
  20. data/docs/DropboxApi/Endpoints/Files/Copy.html +3 -3
  21. data/docs/DropboxApi/Endpoints/Files/CopyBatch.html +359 -0
  22. data/docs/DropboxApi/Endpoints/Files/CopyBatchCheck.html +305 -0
  23. data/docs/DropboxApi/Endpoints/Files/CopyReferenceGet.html +3 -3
  24. data/docs/DropboxApi/Endpoints/Files/CopyReferenceSave.html +3 -3
  25. data/docs/DropboxApi/Endpoints/Files/CreateFileRequest.html +5 -5
  26. data/docs/DropboxApi/Endpoints/Files/CreateFolder.html +3 -3
  27. data/docs/DropboxApi/Endpoints/Files/CreateFolderBatch.html +377 -0
  28. data/docs/DropboxApi/Endpoints/Files/CreateFolderBatchCheck.html +308 -0
  29. data/docs/DropboxApi/Endpoints/Files/Delete.html +3 -3
  30. data/docs/DropboxApi/Endpoints/Files/DeleteBatch.html +305 -0
  31. data/docs/DropboxApi/Endpoints/Files/DeleteBatchCheck.html +307 -0
  32. data/docs/DropboxApi/Endpoints/Files/Download.html +3 -3
  33. data/docs/DropboxApi/Endpoints/Files/GetMetadata.html +3 -3
  34. data/docs/DropboxApi/Endpoints/Files/GetPreview.html +3 -3
  35. data/docs/DropboxApi/Endpoints/Files/GetTemporaryLink.html +3 -3
  36. data/docs/DropboxApi/Endpoints/Files/GetThumbnail.html +3 -3
  37. data/docs/DropboxApi/Endpoints/Files/GetThumbnailBatch.html +3 -3
  38. data/docs/DropboxApi/Endpoints/Files/ListFolder.html +30 -11
  39. data/docs/DropboxApi/Endpoints/Files/ListFolderContinue.html +3 -3
  40. data/docs/DropboxApi/Endpoints/Files/ListFolderGetLatestCursor.html +3 -3
  41. data/docs/DropboxApi/Endpoints/Files/ListFolderLongpoll.html +3 -3
  42. data/docs/DropboxApi/Endpoints/Files/ListRevisions.html +3 -3
  43. data/docs/DropboxApi/Endpoints/Files/Move.html +3 -3
  44. data/docs/DropboxApi/Endpoints/Files/PermanentlyDelete.html +3 -3
  45. data/docs/DropboxApi/Endpoints/Files/Restore.html +3 -3
  46. data/docs/DropboxApi/Endpoints/Files/SaveUrl.html +3 -3
  47. data/docs/DropboxApi/Endpoints/Files/SaveUrlCheckJobStatus.html +3 -3
  48. data/docs/DropboxApi/Endpoints/Files/Search.html +3 -3
  49. data/docs/DropboxApi/Endpoints/Files/Upload.html +4 -4
  50. data/docs/DropboxApi/Endpoints/Files/UploadSessionAppendV2.html +3 -3
  51. data/docs/DropboxApi/Endpoints/Files/UploadSessionFinish.html +3 -3
  52. data/docs/DropboxApi/Endpoints/Files/UploadSessionStart.html +3 -3
  53. data/docs/DropboxApi/Endpoints/Files.html +5 -5
  54. data/docs/DropboxApi/Endpoints/Rpc.html +4 -4
  55. data/docs/DropboxApi/Endpoints/RpcContent.html +3 -3
  56. data/docs/DropboxApi/Endpoints/RpcNotify.html +3 -3
  57. data/docs/DropboxApi/Endpoints/Sharing/AddFileMember.html +3 -3
  58. data/docs/DropboxApi/Endpoints/Sharing/AddFolderMember.html +3 -3
  59. data/docs/DropboxApi/Endpoints/Sharing/CreateSharedLinkWithSettings.html +103 -12
  60. data/docs/DropboxApi/Endpoints/Sharing/GetSharedLinkMetadata.html +3 -3
  61. data/docs/DropboxApi/Endpoints/Sharing/ListFileMembers.html +3 -3
  62. data/docs/DropboxApi/Endpoints/Sharing/ListFolderMembers.html +3 -3
  63. data/docs/DropboxApi/Endpoints/Sharing/ListSharedLinks.html +3 -3
  64. data/docs/DropboxApi/Endpoints/Sharing/RevokeSharedLink.html +293 -0
  65. data/docs/DropboxApi/Endpoints/Sharing/ShareFolder.html +3 -3
  66. data/docs/DropboxApi/Endpoints/Sharing/UnshareFile.html +3 -3
  67. data/docs/DropboxApi/Endpoints/Sharing.html +5 -5
  68. data/docs/DropboxApi/Endpoints/Users/GetAccount.html +3 -3
  69. data/docs/DropboxApi/Endpoints/Users/GetAccountBatch.html +3 -3
  70. data/docs/DropboxApi/Endpoints/Users/GetCurrentAccount.html +3 -3
  71. data/docs/DropboxApi/Endpoints/Users/GetSpaceUsage.html +3 -3
  72. data/docs/DropboxApi/Endpoints/Users.html +3 -3
  73. data/docs/DropboxApi/Endpoints.html +3 -3
  74. data/docs/DropboxApi/Errors/AddFileMemberError.html +3 -3
  75. data/docs/DropboxApi/Errors/AddFolderMemberError.html +3 -3
  76. data/docs/DropboxApi/Errors/AddMemberSelectorError.html +3 -3
  77. data/docs/DropboxApi/Errors/AlreadySharedError.html +3 -3
  78. data/docs/DropboxApi/Errors/BadPathError.html +3 -3
  79. data/docs/DropboxApi/Errors/BasicError.html +4 -4
  80. data/docs/DropboxApi/Errors/CantCopySharedFolderError.html +3 -3
  81. data/docs/DropboxApi/Errors/CantMoveFolderIntoItselfError.html +3 -3
  82. data/docs/DropboxApi/Errors/CantNestSharedFolderError.html +3 -3
  83. data/docs/DropboxApi/Errors/CantShareOutsideTeamError.html +3 -3
  84. data/docs/DropboxApi/Errors/ContainsSharedFolderError.html +3 -3
  85. data/docs/DropboxApi/Errors/ConversionError.html +3 -3
  86. data/docs/DropboxApi/Errors/CreateFileRequestError.html +3 -3
  87. data/docs/DropboxApi/Errors/CreateFolderBatchError.html +161 -0
  88. data/docs/DropboxApi/Errors/CreateFolderError.html +3 -3
  89. data/docs/DropboxApi/Errors/CreateSharedLinkWithSettingsError.html +3 -3
  90. data/docs/DropboxApi/Errors/CursorClosedError.html +3 -3
  91. data/docs/DropboxApi/Errors/CursorNotClosedError.html +3 -3
  92. data/docs/DropboxApi/Errors/DeleteError.html +5 -4
  93. data/docs/DropboxApi/Errors/DisallowedNameError.html +3 -3
  94. data/docs/DropboxApi/Errors/DisallowedSharedLinkPolicyError.html +3 -3
  95. data/docs/DropboxApi/Errors/DownloadError.html +3 -3
  96. data/docs/DropboxApi/Errors/DownloadFailedError.html +3 -3
  97. data/docs/DropboxApi/Errors/EmailUnverifiedError.html +3 -3
  98. data/docs/DropboxApi/Errors/FileAncestorConflictError.html +3 -3
  99. data/docs/DropboxApi/Errors/FileConflictError.html +3 -3
  100. data/docs/DropboxApi/Errors/FileMemberActionError.html +3 -3
  101. data/docs/DropboxApi/Errors/FolderConflictError.html +3 -3
  102. data/docs/DropboxApi/Errors/GetAccountError.html +3 -3
  103. data/docs/DropboxApi/Errors/GetCopyReferenceError.html +3 -3
  104. data/docs/DropboxApi/Errors/GetMetadataError.html +3 -3
  105. data/docs/DropboxApi/Errors/GroupDeletedError.html +3 -3
  106. data/docs/DropboxApi/Errors/GroupNotOnTeamError.html +3 -3
  107. data/docs/DropboxApi/Errors/HttpError.html +3 -3
  108. data/docs/DropboxApi/Errors/InProgressError.html +3 -3
  109. data/docs/DropboxApi/Errors/InsideAppFolderError.html +3 -3
  110. data/docs/DropboxApi/Errors/InsideOsxPackageError.html +3 -3
  111. data/docs/DropboxApi/Errors/InsidePublicFolderError.html +3 -3
  112. data/docs/DropboxApi/Errors/InsideSharedFolderError.html +3 -3
  113. data/docs/DropboxApi/Errors/InsufficientPlanError.html +3 -3
  114. data/docs/DropboxApi/Errors/InsufficientSpaceError.html +3 -3
  115. data/docs/DropboxApi/Errors/InternalError.html +3 -3
  116. data/docs/DropboxApi/Errors/InvalidCommentError.html +3 -3
  117. data/docs/DropboxApi/Errors/InvalidCopyReferenceError.html +3 -3
  118. data/docs/DropboxApi/Errors/InvalidCursorError.html +3 -3
  119. data/docs/DropboxApi/Errors/InvalidDropboxIdError.html +3 -3
  120. data/docs/DropboxApi/Errors/InvalidEmailError.html +3 -3
  121. data/docs/DropboxApi/Errors/InvalidFileError.html +3 -3
  122. data/docs/DropboxApi/Errors/InvalidIdError.html +3 -3
  123. data/docs/DropboxApi/Errors/InvalidMemberError.html +3 -3
  124. data/docs/DropboxApi/Errors/InvalidPathError.html +3 -3
  125. data/docs/DropboxApi/Errors/InvalidRevisionError.html +3 -3
  126. data/docs/DropboxApi/Errors/InvalidSettingsError.html +3 -3
  127. data/docs/DropboxApi/Errors/InvalidUrlError.html +3 -3
  128. data/docs/DropboxApi/Errors/IsAppFolderError.html +3 -3
  129. data/docs/DropboxApi/Errors/IsFileError.html +3 -3
  130. data/docs/DropboxApi/Errors/IsFolderError.html +3 -3
  131. data/docs/DropboxApi/Errors/IsOsxPackageError.html +3 -3
  132. data/docs/DropboxApi/Errors/IsPublicFolderError.html +3 -3
  133. data/docs/DropboxApi/Errors/ListFolderContinueError.html +3 -3
  134. data/docs/DropboxApi/Errors/ListFolderError.html +3 -3
  135. data/docs/DropboxApi/Errors/ListFolderLongpollError.html +3 -3
  136. data/docs/DropboxApi/Errors/ListRevisionsError.html +3 -3
  137. data/docs/DropboxApi/Errors/ListSharedLinksError.html +3 -3
  138. data/docs/DropboxApi/Errors/LookupError.html +3 -3
  139. data/docs/DropboxApi/Errors/MalformedPathError.html +3 -3
  140. data/docs/DropboxApi/Errors/NoAccountError.html +3 -3
  141. data/docs/DropboxApi/Errors/NoPermissionError.html +3 -3
  142. data/docs/DropboxApi/Errors/NoWritePermissionError.html +3 -3
  143. data/docs/DropboxApi/Errors/NotAMemberError.html +3 -3
  144. data/docs/DropboxApi/Errors/NotFileError.html +3 -3
  145. data/docs/DropboxApi/Errors/NotFolderError.html +3 -3
  146. data/docs/DropboxApi/Errors/NotFoundError.html +3 -3
  147. data/docs/DropboxApi/Errors/PollError.html +3 -3
  148. data/docs/DropboxApi/Errors/PreviewError.html +3 -3
  149. data/docs/DropboxApi/Errors/RateLimitError.html +3 -3
  150. data/docs/DropboxApi/Errors/RelocationBatchEntryError.html +163 -0
  151. data/docs/DropboxApi/Errors/RelocationError.html +3 -3
  152. data/docs/DropboxApi/Errors/RestoreError.html +3 -3
  153. data/docs/DropboxApi/Errors/RestrictedContentError.html +3 -3
  154. data/docs/DropboxApi/Errors/RevokeSharedLinkError.html +164 -0
  155. data/docs/DropboxApi/Errors/SaveCopyReferenceError.html +3 -3
  156. data/docs/DropboxApi/Errors/SaveUrlError.html +3 -3
  157. data/docs/DropboxApi/Errors/SearchError.html +3 -3
  158. data/docs/DropboxApi/Errors/SettingsError.html +3 -3
  159. data/docs/DropboxApi/Errors/ShareFolderError.html +3 -3
  160. data/docs/DropboxApi/Errors/SharePathError.html +3 -3
  161. data/docs/DropboxApi/Errors/SharedFolderAccessError.html +3 -3
  162. data/docs/DropboxApi/Errors/SharedLinkAccessDeniedError.html +3 -3
  163. data/docs/DropboxApi/Errors/SharedLinkAlreadyExistsError.html +3 -3
  164. data/docs/DropboxApi/Errors/SharedLinkError.html +3 -3
  165. data/docs/DropboxApi/Errors/SharedLinkMalformedError.html +143 -0
  166. data/docs/DropboxApi/Errors/SharedLinkNotFoundError.html +3 -3
  167. data/docs/DropboxApi/Errors/SharingFileAccessError.html +3 -3
  168. data/docs/DropboxApi/Errors/SharingUserError.html +3 -3
  169. data/docs/DropboxApi/Errors/TeamFolderError.html +3 -3
  170. data/docs/DropboxApi/Errors/TeamPolicyDisallowsMemberPolicyError.html +3 -3
  171. data/docs/DropboxApi/Errors/ThumbnailBatchError.html +3 -3
  172. data/docs/DropboxApi/Errors/ThumbnailError.html +3 -3
  173. data/docs/DropboxApi/Errors/TooManyFilesError.html +3 -3
  174. data/docs/DropboxApi/Errors/TooManyMembersError.html +3 -3
  175. data/docs/DropboxApi/Errors/TooManyPendingInvitesError.html +3 -3
  176. data/docs/DropboxApi/Errors/TooManyRequestsError.html +3 -3
  177. data/docs/DropboxApi/Errors/TooManySharedFolderTargetsError.html +3 -3
  178. data/docs/DropboxApi/Errors/TooManyWriteOperationsError.html +3 -3
  179. data/docs/DropboxApi/Errors/UnmountedError.html +3 -3
  180. data/docs/DropboxApi/Errors/UnshareFileError.html +3 -3
  181. data/docs/DropboxApi/Errors/UnsupportedContentError.html +3 -3
  182. data/docs/DropboxApi/Errors/UnsupportedExtensionError.html +3 -3
  183. data/docs/DropboxApi/Errors/UnsupportedImageError.html +3 -3
  184. data/docs/DropboxApi/Errors/UnsupportedLinkTypeError.html +3 -3
  185. data/docs/DropboxApi/Errors/UnverifiedDropboxId.html +3 -3
  186. data/docs/DropboxApi/Errors/UploadError.html +3 -3
  187. data/docs/DropboxApi/Errors/UploadSessionFinishError.html +3 -3
  188. data/docs/DropboxApi/Errors/UploadSessionLookupError.html +3 -3
  189. data/docs/DropboxApi/Errors/UploadSessionOffsetError.html +3 -3
  190. data/docs/DropboxApi/Errors/UploadWriteFailedError.html +3 -3
  191. data/docs/DropboxApi/Errors/WriteConflictError.html +3 -3
  192. data/docs/DropboxApi/Errors/WriteError.html +3 -3
  193. data/docs/DropboxApi/Errors.html +5 -5
  194. data/docs/DropboxApi/Metadata/AccessLevel.html +3 -3
  195. data/docs/DropboxApi/Metadata/AddFileMemberResult.html +3 -3
  196. data/docs/DropboxApi/Metadata/AddMember.html +3 -3
  197. data/docs/DropboxApi/Metadata/Base.html +3 -3
  198. data/docs/DropboxApi/Metadata/BasicAccount.html +3 -3
  199. data/docs/DropboxApi/Metadata/CommitInfo.html +3 -3
  200. data/docs/DropboxApi/Metadata/Deleted.html +3 -3
  201. data/docs/DropboxApi/Metadata/Dimensions.html +3 -3
  202. data/docs/DropboxApi/Metadata/Field.html +3 -3
  203. data/docs/DropboxApi/Metadata/File.html +3 -3
  204. data/docs/DropboxApi/Metadata/FileLinkMetadata.html +3 -3
  205. data/docs/DropboxApi/Metadata/FileMemberAction.html +3 -3
  206. data/docs/DropboxApi/Metadata/FileRequest.html +3 -3
  207. data/docs/DropboxApi/Metadata/Folder.html +3 -3
  208. data/docs/DropboxApi/Metadata/FolderLinkMetadata.html +3 -3
  209. data/docs/DropboxApi/Metadata/FolderSharingInfo.html +3 -3
  210. data/docs/DropboxApi/Metadata/LinkPermissions.html +3 -3
  211. data/docs/DropboxApi/Metadata/Location.html +3 -3
  212. data/docs/DropboxApi/Metadata/MediaInfo.html +3 -3
  213. data/docs/DropboxApi/Metadata/MediaMetadata.html +3 -3
  214. data/docs/DropboxApi/Metadata/Member.html +3 -3
  215. data/docs/DropboxApi/Metadata/MemberAction.html +3 -3
  216. data/docs/DropboxApi/Metadata/MemberActionList.html +3 -3
  217. data/docs/DropboxApi/Metadata/MemberPermission.html +3 -3
  218. data/docs/DropboxApi/Metadata/MemberPermissionList.html +3 -3
  219. data/docs/DropboxApi/Metadata/Name.html +3 -3
  220. data/docs/DropboxApi/Metadata/ParentFolderAccessInfo.html +3 -3
  221. data/docs/DropboxApi/Metadata/PhotoMetadata.html +3 -3
  222. data/docs/DropboxApi/Metadata/Resource.html +3 -3
  223. data/docs/DropboxApi/Metadata/SharedFolder.html +3 -3
  224. data/docs/DropboxApi/Metadata/SharedFolderPolicy.html +3 -3
  225. data/docs/DropboxApi/Metadata/SharedLink.html +3 -3
  226. data/docs/DropboxApi/Metadata/SharedLinkMetadata.html +3 -3
  227. data/docs/DropboxApi/Metadata/SpaceAllocation.html +3 -3
  228. data/docs/DropboxApi/Metadata/SpaceUsage.html +3 -3
  229. data/docs/DropboxApi/Metadata/Tag.html +3 -3
  230. data/docs/DropboxApi/Metadata/Team.html +3 -3
  231. data/docs/DropboxApi/Metadata/TeamMemberInfo.html +3 -3
  232. data/docs/DropboxApi/Metadata/ThumbnailBatchResultData.html +3 -3
  233. data/docs/DropboxApi/Metadata/ThumbnailBatchResultEntry.html +3 -3
  234. data/docs/DropboxApi/Metadata/UploadSessionCursor.html +3 -3
  235. data/docs/DropboxApi/Metadata/VideoMetadata.html +3 -3
  236. data/docs/DropboxApi/Metadata/WriteMode.html +3 -3
  237. data/docs/DropboxApi/Metadata.html +3 -3
  238. data/docs/DropboxApi/MiddleWare/DecodeResult.html +3 -3
  239. data/docs/DropboxApi/MiddleWare/Stack.html +3 -3
  240. data/docs/DropboxApi/MiddleWare.html +3 -3
  241. data/docs/DropboxApi/OptionsValidator.html +4 -4
  242. data/docs/DropboxApi/ResultBuilder.html +3 -3
  243. data/docs/DropboxApi/Results/AddFileMemberResultList.html +3 -3
  244. data/docs/DropboxApi/Results/Base.html +4 -4
  245. data/docs/DropboxApi/Results/BasicAccountBatch.html +3 -3
  246. data/docs/DropboxApi/Results/CopyBatchResult.html +224 -0
  247. data/docs/DropboxApi/Results/CreateFolderBatchResult.html +241 -0
  248. data/docs/DropboxApi/Results/CreateFolderBatchResultEntry.html +234 -0
  249. data/docs/DropboxApi/Results/DeleteBatchResult.html +241 -0
  250. data/docs/DropboxApi/Results/DeleteBatchResultEntry.html +226 -0
  251. data/docs/DropboxApi/Results/GetCopyReferenceResult.html +3 -3
  252. data/docs/DropboxApi/Results/GetTemporaryLinkResult.html +3 -3
  253. data/docs/DropboxApi/Results/GetThumbnailBatchResult.html +3 -3
  254. data/docs/DropboxApi/Results/ListFolderGetLatestCursorResult.html +3 -3
  255. data/docs/DropboxApi/Results/ListFolderLongpollResult.html +3 -3
  256. data/docs/DropboxApi/Results/ListFolderResult.html +3 -3
  257. data/docs/DropboxApi/Results/ListRevisionsResult.html +3 -3
  258. data/docs/DropboxApi/Results/ListSharedLinksResult.html +3 -3
  259. data/docs/DropboxApi/Results/RelocationBatchResult.html +241 -0
  260. data/docs/DropboxApi/Results/RelocationBatchResultEntry.html +226 -0
  261. data/docs/DropboxApi/Results/SaveCopyReferenceResult.html +3 -3
  262. data/docs/DropboxApi/Results/SaveUrlJobStatus.html +3 -3
  263. data/docs/DropboxApi/Results/SaveUrlResult.html +3 -3
  264. data/docs/DropboxApi/Results/Search/Match.html +3 -3
  265. data/docs/DropboxApi/Results/Search.html +3 -3
  266. data/docs/DropboxApi/Results/SearchResult.html +3 -3
  267. data/docs/DropboxApi/Results/ShareFolderLaunch.html +3 -3
  268. data/docs/DropboxApi/Results/SharedFileMembers.html +3 -3
  269. data/docs/DropboxApi/Results/SharedFolderMembers.html +3 -3
  270. data/docs/DropboxApi/Results/UploadSessionStart.html +3 -3
  271. data/docs/DropboxApi/Results/VoidResult.html +3 -3
  272. data/docs/DropboxApi/Results.html +5 -5
  273. data/docs/DropboxApi.html +4 -4
  274. data/docs/DropboxScaffoldBuilder.html +105 -50
  275. data/docs/_index.html +140 -14
  276. data/docs/class_list.html +1 -1
  277. data/docs/file.README.html +3 -3
  278. data/docs/file.api_coverage.html +10 -10
  279. data/docs/file.rails_setup.html +3 -3
  280. data/docs/frames.html +1 -1
  281. data/docs/index.html +3 -3
  282. data/docs/js/app.js +11 -0
  283. data/docs/method_list.html +430 -254
  284. data/docs/top-level-namespace.html +3 -3
  285. data/dropbox_api.gemspec +15 -16
  286. data/lib/dropbox_api/authenticator.rb +3 -2
  287. data/lib/dropbox_api/chunked_uploader.rb +2 -1
  288. data/lib/dropbox_api/client.rb +2 -1
  289. data/lib/dropbox_api/connection_builder.rb +1 -0
  290. data/lib/dropbox_api/endpoints/auth/token_revoke.rb +2 -1
  291. data/lib/dropbox_api/endpoints/base.rb +7 -4
  292. data/lib/dropbox_api/endpoints/content_download.rb +4 -6
  293. data/lib/dropbox_api/endpoints/content_upload.rb +2 -1
  294. data/lib/dropbox_api/endpoints/file_requests/create_file_request.rb +2 -1
  295. data/lib/dropbox_api/endpoints/files/copy.rb +4 -3
  296. data/lib/dropbox_api/endpoints/files/copy_batch.rb +36 -0
  297. data/lib/dropbox_api/endpoints/files/copy_batch_check.rb +21 -0
  298. data/lib/dropbox_api/endpoints/files/copy_reference_get.rb +3 -2
  299. data/lib/dropbox_api/endpoints/files/copy_reference_save.rb +4 -3
  300. data/lib/dropbox_api/endpoints/files/create_folder.rb +3 -2
  301. data/lib/dropbox_api/endpoints/files/create_folder_batch.rb +41 -0
  302. data/lib/dropbox_api/endpoints/files/create_folder_batch_check.rb +22 -0
  303. data/lib/dropbox_api/endpoints/files/delete.rb +3 -2
  304. data/lib/dropbox_api/endpoints/files/delete_batch.rb +23 -0
  305. data/lib/dropbox_api/endpoints/files/delete_batch_check.rb +21 -0
  306. data/lib/dropbox_api/endpoints/files/download.rb +3 -2
  307. data/lib/dropbox_api/endpoints/files/get_metadata.rb +3 -2
  308. data/lib/dropbox_api/endpoints/files/get_preview.rb +3 -2
  309. data/lib/dropbox_api/endpoints/files/get_temporary_link.rb +3 -2
  310. data/lib/dropbox_api/endpoints/files/get_thumbnail.rb +3 -2
  311. data/lib/dropbox_api/endpoints/files/get_thumbnail_batch.rb +4 -3
  312. data/lib/dropbox_api/endpoints/files/list_folder.rb +3 -2
  313. data/lib/dropbox_api/endpoints/files/list_folder_continue.rb +3 -2
  314. data/lib/dropbox_api/endpoints/files/list_folder_get_latest_cursor.rb +2 -1
  315. data/lib/dropbox_api/endpoints/files/list_folder_longpoll.rb +3 -2
  316. data/lib/dropbox_api/endpoints/files/list_revisions.rb +3 -2
  317. data/lib/dropbox_api/endpoints/files/move.rb +4 -3
  318. data/lib/dropbox_api/endpoints/files/permanently_delete.rb +3 -2
  319. data/lib/dropbox_api/endpoints/files/restore.rb +4 -3
  320. data/lib/dropbox_api/endpoints/files/save_url.rb +4 -3
  321. data/lib/dropbox_api/endpoints/files/save_url_check_job_status.rb +3 -2
  322. data/lib/dropbox_api/endpoints/files/search.rb +16 -27
  323. data/lib/dropbox_api/endpoints/files/upload.rb +3 -2
  324. data/lib/dropbox_api/endpoints/files/upload_session_append_v2.rb +3 -2
  325. data/lib/dropbox_api/endpoints/files/upload_session_finish.rb +4 -3
  326. data/lib/dropbox_api/endpoints/files/upload_session_start.rb +4 -3
  327. data/lib/dropbox_api/endpoints/rpc.rb +2 -1
  328. data/lib/dropbox_api/endpoints/rpc_content.rb +2 -1
  329. data/lib/dropbox_api/endpoints/rpc_notify.rb +2 -1
  330. data/lib/dropbox_api/endpoints/sharing/add_file_member.rb +4 -3
  331. data/lib/dropbox_api/endpoints/sharing/add_folder_member.rb +4 -3
  332. data/lib/dropbox_api/endpoints/sharing/create_shared_link_with_settings.rb +4 -3
  333. data/lib/dropbox_api/endpoints/sharing/get_shared_link_metadata.rb +3 -2
  334. data/lib/dropbox_api/endpoints/sharing/list_file_members.rb +4 -3
  335. data/lib/dropbox_api/endpoints/sharing/list_folder_members.rb +4 -3
  336. data/lib/dropbox_api/endpoints/sharing/list_shared_links.rb +2 -1
  337. data/lib/dropbox_api/endpoints/sharing/revoke_shared_link.rb +3 -2
  338. data/lib/dropbox_api/endpoints/sharing/share_folder.rb +3 -2
  339. data/lib/dropbox_api/endpoints/sharing/unshare_file.rb +3 -2
  340. data/lib/dropbox_api/endpoints/users/get_account.rb +3 -2
  341. data/lib/dropbox_api/endpoints/users/get_account_batch.rb +3 -2
  342. data/lib/dropbox_api/endpoints/users/get_current_account.rb +2 -1
  343. data/lib/dropbox_api/endpoints/users/get_space_usage.rb +2 -1
  344. data/lib/dropbox_api/endpoints/virtual/upload_by_chunks.rb +1 -0
  345. data/lib/dropbox_api/errors/add_file_member_error.rb +5 -4
  346. data/lib/dropbox_api/errors/add_folder_member_error.rb +11 -10
  347. data/lib/dropbox_api/errors/add_member_selector_error.rb +6 -5
  348. data/lib/dropbox_api/errors/already_shared_error.rb +1 -0
  349. data/lib/dropbox_api/errors/basic_error.rb +2 -1
  350. data/lib/dropbox_api/errors/create_file_request_error.rb +1 -0
  351. data/lib/dropbox_api/errors/create_folder_batch_error.rb +8 -0
  352. data/lib/dropbox_api/errors/create_folder_error.rb +2 -1
  353. data/lib/dropbox_api/errors/create_shared_link_with_settings_error.rb +6 -5
  354. data/lib/dropbox_api/errors/delete_error.rb +5 -3
  355. data/lib/dropbox_api/errors/download_error.rb +2 -1
  356. data/lib/dropbox_api/errors/file_member_action_error.rb +5 -4
  357. data/lib/dropbox_api/errors/get_account_error.rb +2 -1
  358. data/lib/dropbox_api/errors/get_copy_reference_error.rb +2 -1
  359. data/lib/dropbox_api/errors/get_metadata_error.rb +2 -1
  360. data/lib/dropbox_api/errors/http_error.rb +1 -0
  361. data/lib/dropbox_api/errors/list_folder_continue_error.rb +3 -2
  362. data/lib/dropbox_api/errors/list_folder_error.rb +2 -1
  363. data/lib/dropbox_api/errors/list_folder_longpoll_error.rb +2 -1
  364. data/lib/dropbox_api/errors/list_revisions_error.rb +2 -1
  365. data/lib/dropbox_api/errors/list_shared_links_error.rb +3 -2
  366. data/lib/dropbox_api/errors/lookup_error.rb +6 -5
  367. data/lib/dropbox_api/errors/poll_error.rb +3 -2
  368. data/lib/dropbox_api/errors/preview_error.rb +5 -4
  369. data/lib/dropbox_api/errors/relocation_batch_entry_error.rb +10 -0
  370. data/lib/dropbox_api/errors/relocation_error.rb +8 -7
  371. data/lib/dropbox_api/errors/restore_error.rb +4 -3
  372. data/lib/dropbox_api/errors/revoke_shared_link_error.rb +5 -4
  373. data/lib/dropbox_api/errors/save_copy_reference_error.rb +6 -5
  374. data/lib/dropbox_api/errors/save_url_error.rb +5 -4
  375. data/lib/dropbox_api/errors/search_error.rb +2 -1
  376. data/lib/dropbox_api/errors/settings_error.rb +3 -2
  377. data/lib/dropbox_api/errors/share_folder_error.rb +6 -5
  378. data/lib/dropbox_api/errors/share_path_error.rb +12 -11
  379. data/lib/dropbox_api/errors/shared_folder_access_error.rb +5 -4
  380. data/lib/dropbox_api/errors/shared_link_error.rb +4 -3
  381. data/lib/dropbox_api/errors/sharing_file_access_error.rb +6 -5
  382. data/lib/dropbox_api/errors/sharing_user_error.rb +2 -1
  383. data/lib/dropbox_api/errors/thumbnail_batch_error.rb +2 -1
  384. data/lib/dropbox_api/errors/thumbnail_error.rb +5 -4
  385. data/lib/dropbox_api/errors/too_many_requests_error.rb +3 -2
  386. data/lib/dropbox_api/errors/unshare_file_error.rb +3 -2
  387. data/lib/dropbox_api/errors/upload_error.rb +2 -1
  388. data/lib/dropbox_api/errors/upload_session_finish_error.rb +4 -3
  389. data/lib/dropbox_api/errors/upload_session_lookup_error.rb +5 -4
  390. data/lib/dropbox_api/errors/upload_session_offset_error.rb +1 -0
  391. data/lib/dropbox_api/errors/upload_write_failed_error.rb +2 -1
  392. data/lib/dropbox_api/errors/write_conflict_error.rb +4 -3
  393. data/lib/dropbox_api/errors/write_error.rb +6 -5
  394. data/lib/dropbox_api/metadata/access_level.rb +1 -0
  395. data/lib/dropbox_api/metadata/add_file_member_result.rb +1 -0
  396. data/lib/dropbox_api/metadata/add_member.rb +3 -2
  397. data/lib/dropbox_api/metadata/base.rb +2 -1
  398. data/lib/dropbox_api/metadata/basic_account.rb +1 -0
  399. data/lib/dropbox_api/metadata/commit_info.rb +2 -1
  400. data/lib/dropbox_api/metadata/deleted.rb +1 -0
  401. data/lib/dropbox_api/metadata/dimensions.rb +1 -0
  402. data/lib/dropbox_api/metadata/field.rb +7 -4
  403. data/lib/dropbox_api/metadata/file.rb +2 -1
  404. data/lib/dropbox_api/metadata/file_categories_list.rb +9 -0
  405. data/lib/dropbox_api/metadata/file_category.rb +22 -0
  406. data/lib/dropbox_api/metadata/file_extensions_list.rb +13 -0
  407. data/lib/dropbox_api/metadata/file_link_metadata.rb +1 -0
  408. data/lib/dropbox_api/metadata/file_member_action.rb +2 -1
  409. data/lib/dropbox_api/metadata/file_request.rb +1 -0
  410. data/lib/dropbox_api/metadata/file_status.rb +14 -0
  411. data/lib/dropbox_api/metadata/folder.rb +2 -1
  412. data/lib/dropbox_api/metadata/folder_link_metadata.rb +1 -0
  413. data/lib/dropbox_api/metadata/folder_sharing_info.rb +1 -0
  414. data/lib/dropbox_api/metadata/link_permissions.rb +1 -0
  415. data/lib/dropbox_api/metadata/location.rb +1 -0
  416. data/lib/dropbox_api/metadata/media_info.rb +1 -0
  417. data/lib/dropbox_api/metadata/media_metadata.rb +1 -0
  418. data/lib/dropbox_api/metadata/member.rb +6 -5
  419. data/lib/dropbox_api/metadata/member_action.rb +1 -0
  420. data/lib/dropbox_api/metadata/member_action_list.rb +1 -0
  421. data/lib/dropbox_api/metadata/member_permission.rb +1 -0
  422. data/lib/dropbox_api/metadata/member_permission_list.rb +1 -0
  423. data/lib/dropbox_api/metadata/metadata_v2.rb +7 -0
  424. data/lib/dropbox_api/metadata/name.rb +1 -0
  425. data/lib/dropbox_api/metadata/parent_folder_access_info.rb +1 -0
  426. data/lib/dropbox_api/metadata/photo_metadata.rb +1 -0
  427. data/lib/dropbox_api/metadata/resource.rb +2 -1
  428. data/lib/dropbox_api/metadata/search_match_field_options.rb +9 -0
  429. data/lib/dropbox_api/metadata/search_match_type_v2.rb +16 -0
  430. data/lib/dropbox_api/metadata/search_match_v2.rb +18 -0
  431. data/lib/dropbox_api/metadata/search_options.rb +33 -0
  432. data/lib/dropbox_api/metadata/search_order_by.rb +14 -0
  433. data/lib/dropbox_api/metadata/shared_folder.rb +1 -0
  434. data/lib/dropbox_api/metadata/shared_folder_policy.rb +1 -0
  435. data/lib/dropbox_api/metadata/shared_link.rb +3 -2
  436. data/lib/dropbox_api/metadata/shared_link_metadata.rb +2 -1
  437. data/lib/dropbox_api/metadata/space_allocation.rb +1 -0
  438. data/lib/dropbox_api/metadata/space_usage.rb +1 -0
  439. data/lib/dropbox_api/metadata/tag.rb +2 -1
  440. data/lib/dropbox_api/metadata/team.rb +1 -0
  441. data/lib/dropbox_api/metadata/team_member_info.rb +1 -0
  442. data/lib/dropbox_api/metadata/thumbnail_batch_result_data.rb +1 -0
  443. data/lib/dropbox_api/metadata/thumbnail_batch_result_entry.rb +3 -2
  444. data/lib/dropbox_api/metadata/upload_session_cursor.rb +1 -0
  445. data/lib/dropbox_api/metadata/video_metadata.rb +1 -0
  446. data/lib/dropbox_api/metadata/write_mode.rb +6 -5
  447. data/lib/dropbox_api/middleware/decode_result.rb +3 -2
  448. data/lib/dropbox_api/middleware/stack.rb +1 -0
  449. data/lib/dropbox_api/options_validator.rb +1 -0
  450. data/lib/dropbox_api/result_builder.rb +3 -2
  451. data/lib/dropbox_api/results/add_file_member_result_list.rb +1 -0
  452. data/lib/dropbox_api/results/base.rb +1 -0
  453. data/lib/dropbox_api/results/basic_account_batch.rb +1 -0
  454. data/lib/dropbox_api/results/copy_batch_result.rb +15 -0
  455. data/lib/dropbox_api/results/create_folder_batch_result.rb +21 -0
  456. data/lib/dropbox_api/results/create_folder_batch_result_entry.rb +20 -0
  457. data/lib/dropbox_api/results/delete_batch_result.rb +21 -0
  458. data/lib/dropbox_api/results/delete_batch_result_entry.rb +16 -0
  459. data/lib/dropbox_api/results/get_copy_reference_result.rb +4 -3
  460. data/lib/dropbox_api/results/get_temporary_link_result.rb +3 -2
  461. data/lib/dropbox_api/results/get_thumbnail_batch_result.rb +2 -1
  462. data/lib/dropbox_api/results/list_folder_get_latest_cursor_result.rb +2 -1
  463. data/lib/dropbox_api/results/list_folder_longpoll_result.rb +3 -2
  464. data/lib/dropbox_api/results/list_folder_result.rb +4 -3
  465. data/lib/dropbox_api/results/list_revisions_result.rb +3 -2
  466. data/lib/dropbox_api/results/list_shared_links_result.rb +4 -3
  467. data/lib/dropbox_api/results/relocation_batch_result.rb +21 -0
  468. data/lib/dropbox_api/results/relocation_batch_result_entry.rb +16 -0
  469. data/lib/dropbox_api/results/save_copy_reference_result.rb +2 -1
  470. data/lib/dropbox_api/results/save_url_job_status.rb +7 -6
  471. data/lib/dropbox_api/results/save_url_result.rb +2 -1
  472. data/lib/dropbox_api/results/search/match.rb +3 -2
  473. data/lib/dropbox_api/results/search_v2_result.rb +24 -0
  474. data/lib/dropbox_api/results/share_folder_launch.rb +4 -3
  475. data/lib/dropbox_api/results/shared_file_members.rb +5 -4
  476. data/lib/dropbox_api/results/shared_folder_members.rb +5 -4
  477. data/lib/dropbox_api/results/upload_session_start.rb +2 -1
  478. data/lib/dropbox_api/results/void_result.rb +1 -0
  479. data/lib/dropbox_api/version.rb +2 -1
  480. data/lib/dropbox_api.rb +28 -3
  481. data/yardoc/endpoint_handler.rb +2 -1
  482. data/yardoc/helpers/html_helper.rb +2 -1
  483. data/yardoc/rspec.rb +3 -2
  484. data/yardoc/templates/default/method_details/setup.rb +1 -0
  485. metadata +64 -28
  486. data/CHANGES.md +0 -7
  487. data/lib/dropbox_api/results/search_result.rb +0 -22
@@ -6,7 +6,7 @@
6
6
  <title>
7
7
  Top Level Namespace
8
8
 
9
- &mdash; Documentation by YARD 0.9.15
9
+ &mdash; Documentation by YARD 0.9.19
10
10
 
11
11
  </title>
12
12
 
@@ -102,9 +102,9 @@
102
102
  </div>
103
103
 
104
104
  <div id="footer">
105
- Generated on Fri Nov 16 09:02:01 2018 by
105
+ Generated on Fri May 31 17:53:31 2019 by
106
106
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
107
- 0.9.15 (ruby-2.3.3).
107
+ 0.9.19 (ruby-2.6.2).
108
108
  </div>
109
109
 
110
110
  </div>
data/dropbox_api.gemspec CHANGED
@@ -1,30 +1,29 @@
1
1
  # coding: utf-8
2
+ # frozen_string_literal: true
2
3
  lib = File.expand_path('../lib', __FILE__)
3
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
5
  require 'dropbox_api/version'
5
6
 
6
7
  Gem::Specification.new do |spec|
7
- spec.name = "dropbox_api"
8
+ spec.name = 'dropbox_api'
8
9
  spec.version = DropboxApi::VERSION
9
- spec.authors = ["Jesús Burgos"]
10
- spec.email = ["jburmac@gmail.com"]
10
+ spec.authors = ['Jesús Burgos']
11
+ spec.email = ['jburmac@gmail.com']
11
12
 
12
- spec.summary = "Library for communicating with Dropbox API v2"
13
- spec.homepage = "https://github.com/Jesus/dropbox_api"
14
- spec.license = "MIT"
13
+ spec.summary = 'Library for communicating with Dropbox API v2'
14
+ spec.homepage = 'https://github.com/Jesus/dropbox_api'
15
+ spec.license = 'MIT'
15
16
 
16
17
  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
17
18
 
18
- spec.require_paths = ["lib"]
19
+ spec.require_paths = ['lib']
19
20
 
20
- spec.has_rdoc = "yard"
21
+ spec.add_development_dependency 'bundler', '>= 1.7'
22
+ spec.add_development_dependency 'rake'
23
+ spec.add_development_dependency 'rspec'
24
+ spec.add_development_dependency 'vcr'
25
+ spec.add_development_dependency 'webmock'
21
26
 
22
- spec.add_development_dependency "bundler", ">= 1.7"
23
- spec.add_development_dependency "rake", "~> 10.0"
24
- spec.add_development_dependency "rspec"
25
- spec.add_development_dependency "vcr"
26
- spec.add_development_dependency "webmock"
27
-
28
- spec.add_dependency "oauth2", "~> 1.1"
29
- spec.add_dependency "faraday", ">= 0.8", "<= 0.15.4"
27
+ spec.add_dependency 'faraday', '~> 1.0'
28
+ spec.add_dependency 'oauth2', '~> 1.1'
30
29
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'oauth2'
2
3
 
3
4
  module DropboxApi
@@ -6,8 +7,8 @@ module DropboxApi
6
7
 
7
8
  def initialize(client_id, client_secret)
8
9
  @auth_code = OAuth2::Client.new(client_id, client_secret, {
9
- :authorize_url => 'https://www.dropbox.com/oauth2/authorize',
10
- :token_url => 'https://api.dropboxapi.com/oauth2/token'
10
+ authorize_url: 'https://www.dropbox.com/oauth2/authorize',
11
+ token_url: 'https://api.dropboxapi.com/oauth2/token'
11
12
  }).auth_code
12
13
  end
13
14
 
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi
2
3
  class ChunkedUploader
3
4
  include DropboxApi::OptionsValidator
@@ -13,7 +14,7 @@ module DropboxApi
13
14
 
14
15
  def start
15
16
  chunk = @i_stream.read @chunk_size
16
- chunk = "" if chunk.nil?
17
+ chunk = '' if chunk.nil?
17
18
 
18
19
  @cursor = @client.upload_session_start chunk
19
20
  end
@@ -1,6 +1,7 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi
2
3
  class Client
3
- def initialize(oauth_bearer = ENV["DROPBOX_OAUTH_BEARER"])
4
+ def initialize(oauth_bearer = ENV['DROPBOX_OAUTH_BEARER'])
4
5
  @connection_builder = ConnectionBuilder.new(oauth_bearer)
5
6
  end
6
7
 
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi
2
3
  class ConnectionBuilder
3
4
  def initialize(oauth_bearer)
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints::Auth
2
3
  class TokenRevoke < DropboxApi::Endpoints::Rpc
3
4
  Method = :post
4
- Path = "/2/auth/token/revoke".freeze
5
+ Path = '/2/auth/token/revoke'
5
6
  ResultType = DropboxApi::Results::VoidResult
6
7
  ErrorType = nil
7
8
 
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints
2
3
  class Base
3
4
  def self.add_endpoint(name, &block)
@@ -25,16 +26,18 @@ module DropboxApi::Endpoints
25
26
  build_result(raw_response.env[:api_result])
26
27
  when 429
27
28
  error = DropboxApi::Errors::TooManyRequestsError.build(
28
- raw_response.env[:api_result]["error_summary"],
29
- raw_response.env[:api_result]["error"]["reason"]
29
+ raw_response.env[:api_result]['error_summary'],
30
+ raw_response.env[:api_result]['error']['reason']
30
31
  )
31
32
 
32
- error.retry_after = raw_response.headers["retry-after"].to_i
33
+ error.retry_after = raw_response.headers['retry-after'].to_i
33
34
 
34
35
  raise error
35
36
  else
36
- raise DropboxApi::Errors::HttpError,
37
+ raise(
38
+ DropboxApi::Errors::HttpError,
37
39
  "HTTP #{raw_response.status}: #{raw_response.body}"
40
+ )
38
41
  end
39
42
  end
40
43
 
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints
2
3
  class ContentDownload < DropboxApi::Endpoints::Base
3
4
  def initialize(builder)
4
- @connection = builder.build("https://content.dropboxapi.com") do |c|
5
+ @connection = builder.build('https://content.dropboxapi.com') do |c|
5
6
  c.response :decode_result
6
7
  end
7
8
  end
@@ -20,14 +21,11 @@ module DropboxApi::Endpoints
20
21
  response = get_response(params)
21
22
  api_result = process_response response
22
23
 
23
- # TODO: Stream response, current implementation will fail with very large
24
- # files.
24
+ # We just yield the whole response to the block, it'd be nice in the
25
+ # future to support an interface that streams the response in chunks.
25
26
  yield response.body if block_given?
26
27
 
27
28
  api_result
28
29
  end
29
30
  end
30
31
  end
31
- # TODO:
32
- # 1. Combine ContentDownload and ContentUpload to share its initialize method.
33
- # 2. Reorganize the methods which create the request.
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints
2
3
  class ContentUpload < DropboxApi::Endpoints::Base
3
4
  def initialize(builder)
4
- @connection = builder.build("https://content.dropboxapi.com") do |c|
5
+ @connection = builder.build('https://content.dropboxapi.com') do |c|
5
6
  c.response :decode_result
6
7
  end
7
8
  end
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints::Files
2
3
  class CreateFileRequest < DropboxApi::Endpoints::Rpc
3
4
  Method = :post
4
- Path = "/2/file_requests/create".freeze
5
+ Path = '/2/file_requests/create'
5
6
  ResultType = DropboxApi::Metadata::FileRequest
6
7
  ErrorType = DropboxApi::Errors::CreateFileRequestError
7
8
 
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints::Files
2
3
  class Copy < DropboxApi::Endpoints::Rpc
3
4
  Method = :post
4
- Path = "/2/files/copy".freeze
5
+ Path = '/2/files/copy'
5
6
  ResultType = DropboxApi::Metadata::Resource
6
7
  ErrorType = DropboxApi::Errors::RelocationError
7
8
 
@@ -13,8 +14,8 @@ module DropboxApi::Endpoints::Files
13
14
  # @return The moved file.
14
15
  add_endpoint :copy do |from, to|
15
16
  perform_request({
16
- :from_path => from,
17
- :to_path => to
17
+ from_path: from,
18
+ to_path: to
18
19
  })
19
20
  end
20
21
  end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+ module DropboxApi::Endpoints::Files
3
+ class CopyBatch < DropboxApi::Endpoints::Rpc
4
+ Method = :post
5
+ Path = '/2/files/copy_batch_v2'
6
+ ResultType = DropboxApi::Results::CopyBatchResult
7
+
8
+ include DropboxApi::OptionsValidator
9
+
10
+ # Copy multiple files or folders to different locations at once in the
11
+ # user's Dropbox.
12
+ #
13
+ # This will either finish synchronously, or return a job ID and do
14
+ # the async copy job in background. Please use {Client#copy_batch_check}
15
+ # to check the job status.
16
+ #
17
+ # Note: No errors are returned by this endpoint.
18
+ #
19
+ # @param entries [Array<Hash>] List of entries to be moved or copied.
20
+ # Each entry must be a hash with two keys: `:from_path` & `:to_path`.
21
+ # @option options autorename [Boolean] If there's a conflict with any file,
22
+ # have the Dropbox server try to autorename that file to avoid the
23
+ # conflict. The default for this field is `false`.
24
+ # @return [String, Array] Either the job id or the list of job statuses.
25
+ add_endpoint :copy_batch do |entries, options = {}|
26
+ validate_options([
27
+ :autorename
28
+ ], options)
29
+ options[:autorename] ||= false
30
+
31
+ perform_request(options.merge({
32
+ entries: entries
33
+ }))
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+ module DropboxApi::Endpoints::Files
3
+ class CopyBatchCheck < DropboxApi::Endpoints::Rpc
4
+ Method = :post
5
+ Path = '/2/files/copy_batch/check_v2'
6
+ ResultType = DropboxApi::Results::RelocationBatchResult
7
+ ErrorType = DropboxApi::Errors::PollError
8
+
9
+ # Returns the status of an asynchronous job for {Client#copy_batch}. It
10
+ # returns a list of results for each entry.
11
+ #
12
+ # @param async_job_id [String] Id of the asynchronous job.
13
+ # This is the value of a response returned from the method that
14
+ # launched the job.
15
+ # @return [:in_progress, Array] This could be either the `:in_progress`
16
+ # flag or a list of job statuses.
17
+ add_endpoint :copy_batch_check do |async_job_id|
18
+ perform_request async_job_id: async_job_id
19
+ end
20
+ end
21
+ end
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints::Files
2
3
  class CopyReferenceGet < DropboxApi::Endpoints::Rpc
3
4
  Method = :post
4
- Path = "/2/files/copy_reference/get".freeze
5
+ Path = '/2/files/copy_reference/get'
5
6
  ResultType = DropboxApi::Results::GetCopyReferenceResult
6
7
  ErrorType = DropboxApi::Errors::GetCopyReferenceError
7
8
 
@@ -14,7 +15,7 @@ module DropboxApi::Endpoints::Files
14
15
  # @return [DropboxApi::Results::GetCopyReferenceResult]
15
16
  add_endpoint :copy_reference_get do |path|
16
17
  perform_request({
17
- :path => path
18
+ path: path
18
19
  })
19
20
  end
20
21
  end
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints::Files
2
3
  class CopyReferenceSave < DropboxApi::Endpoints::Rpc
3
4
  Method = :post
4
- Path = "/2/files/copy_reference/save".freeze
5
+ Path = '/2/files/copy_reference/save'
5
6
  ResultType = DropboxApi::Results::SaveCopyReferenceResult
6
7
  ErrorType = DropboxApi::Errors::SaveCopyReferenceError
7
8
 
@@ -14,8 +15,8 @@ module DropboxApi::Endpoints::Files
14
15
  # @return [DropboxApi::Results::SaveCopyReferenceResult]
15
16
  add_endpoint :copy_reference_save do |copy_reference, path|
16
17
  perform_request({
17
- :copy_reference => copy_reference,
18
- :path => path
18
+ copy_reference: copy_reference,
19
+ path: path
19
20
  })
20
21
  end
21
22
  end
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints::Files
2
3
  class CreateFolder < DropboxApi::Endpoints::Rpc
3
4
  Method = :post
4
- Path = "/2/files/create_folder".freeze
5
+ Path = '/2/files/create_folder'
5
6
  ResultType = DropboxApi::Metadata::Folder
6
7
  ErrorType = DropboxApi::Errors::CreateFolderError
7
8
 
@@ -11,7 +12,7 @@ module DropboxApi::Endpoints::Files
11
12
  # @return [DropboxApi::Metadata::Folder] The new folder.
12
13
  add_endpoint :create_folder do |path|
13
14
  perform_request({
14
- :path => path
15
+ path: path
15
16
  })
16
17
  end
17
18
  end
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+ module DropboxApi::Endpoints::Files
3
+ class CreateFolderBatch < DropboxApi::Endpoints::Rpc
4
+ Method = :post
5
+ Path = '/2/files/create_folder_batch'
6
+ ResultType = DropboxApi::Results::CreateFolderBatchResult
7
+
8
+ include DropboxApi::OptionsValidator
9
+
10
+ # Create multiple folders at once.
11
+ #
12
+ # This route is asynchronous for large batches, which returns a job ID
13
+ # immediately and runs the create folder batch asynchronously. Otherwise,
14
+ # creates the folders and returns the result synchronously for smaller
15
+ # inputs. You can force asynchronous behaviour by using the `:force_async`
16
+ # flag. Use {Client#create_folder_batch_check} to check the job status.
17
+ #
18
+ # Note: No errors are returned by this endpoint.
19
+ #
20
+ # @param paths [Array] List of paths to be created in the user's Dropbox.
21
+ # Duplicate path arguments in the batch are considered only once.
22
+ # @option options autorename [Boolean] If there's a conflict, have the
23
+ # Dropbox server try to autorename the folder to avoid the conflict.
24
+ # The default for this field is `false`.
25
+ # @option options force_async [Boolean] Whether to force the create to
26
+ # happen asynchronously. The default for this field is `false`.
27
+ # @return [String, Array] Either the job id or the list of job statuses.
28
+ add_endpoint :create_folder_batch do |paths, options = {}|
29
+ validate_options([
30
+ :autorename,
31
+ :force_async
32
+ ], options)
33
+ options[:autorename] ||= false
34
+ options[:force_async] ||= false
35
+
36
+ perform_request(options.merge({
37
+ paths: paths
38
+ }))
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+ module DropboxApi::Endpoints::Files
3
+ class CreateFolderBatchCheck < DropboxApi::Endpoints::Rpc
4
+ Method = :post
5
+ Path = '/2/files/create_folder_batch/check'
6
+ ResultType = DropboxApi::Results::CreateFolderBatchResult
7
+ ErrorType = DropboxApi::Errors::PollError
8
+
9
+ # Returns the status of an asynchronous job for create_folder_batch.
10
+ # If success, it returns list of result for each entry.
11
+ #
12
+ # @param async_job_id [String] Id of the asynchronous job.
13
+ # This is the value of a response returned from the method that launched
14
+ # the job.
15
+ # @return [Array] A list of one result for each entry.
16
+ add_endpoint :create_folder_batch_check do |async_job_id|
17
+ perform_request({
18
+ async_job_id: async_job_id
19
+ })
20
+ end
21
+ end
22
+ end
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints::Files
2
3
  class Delete < DropboxApi::Endpoints::Rpc
3
4
  Method = :post
4
- Path = "/2/files/delete".freeze
5
+ Path = '/2/files/delete'
5
6
  ResultType = DropboxApi::Metadata::Resource
6
7
  ErrorType = DropboxApi::Errors::DeleteError
7
8
 
@@ -25,7 +26,7 @@ module DropboxApi::Endpoints::Files
25
26
  validate_options([:parent_rev], options)
26
27
 
27
28
  perform_request options.merge({
28
- :path => path
29
+ path: path
29
30
  })
30
31
  end
31
32
  end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+ module DropboxApi::Endpoints::Files
3
+ class DeleteBatch < DropboxApi::Endpoints::Rpc
4
+ Method = :post
5
+ Path = '/2/files/delete_batch'
6
+ ResultType = DropboxApi::Results::DeleteBatchResult
7
+
8
+ # Delete multiple files/folders at once.
9
+ #
10
+ # This route is asynchronous, which returns a job ID immediately and runs
11
+ # the delete batch asynchronously. Use {Client#delete_batch_check} to check
12
+ # the job status.
13
+ #
14
+ # @param entries [Array] List of entries, each entry is a Hash with these
15
+ # fields: `path` (mandatory) & parent_rev (optional).
16
+ # @return [String, Array] Either the job id or the list of job statuses.
17
+ add_endpoint :delete_batch do |entries|
18
+ perform_request({
19
+ entries: entries
20
+ })
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+ module DropboxApi::Endpoints::Files
3
+ class DeleteBatchCheck < DropboxApi::Endpoints::Rpc
4
+ Method = :post
5
+ Path = '/2/files/delete_batch/check'
6
+ ResultType = DropboxApi::Results::DeleteBatchResult
7
+ ErrorType = DropboxApi::Errors::PollError
8
+
9
+ # Returns the status of an asynchronous job for delete_batch. If success,
10
+ # it returns list of result for each entry.
11
+ #
12
+ # @param async_job_id [String] Id of the asynchronous job.
13
+ # @return [:in_progress, Array] This could be either the `:in_progress`
14
+ # flag or a list of job statuses.
15
+ add_endpoint :delete_batch_check do |async_job_id|
16
+ perform_request({
17
+ async_job_id: async_job_id
18
+ })
19
+ end
20
+ end
21
+ end
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints::Files
2
3
  class Download < DropboxApi::Endpoints::ContentDownload
3
4
  Method = :post
4
- Path = "/2/files/download".freeze
5
+ Path = '/2/files/download'
5
6
  ResultType = DropboxApi::Metadata::File
6
7
  ErrorType = DropboxApi::Errors::DownloadError
7
8
 
@@ -9,7 +10,7 @@ module DropboxApi::Endpoints::Files
9
10
  #
10
11
  # @param path [String] The path of the file to download.
11
12
  add_endpoint :download do |path, &block|
12
- perform_request({:path => path}, &block)
13
+ perform_request({path: path}, &block)
13
14
  end
14
15
  end
15
16
  end
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints::Files
2
3
  class GetMetadata < DropboxApi::Endpoints::Rpc
3
4
  Method = :post
4
- Path = "/2/files/get_metadata".freeze
5
+ Path = '/2/files/get_metadata'
5
6
  ResultType = DropboxApi::Metadata::Resource
6
7
  ErrorType = DropboxApi::Errors::GetMetadataError
7
8
 
@@ -34,7 +35,7 @@ module DropboxApi::Endpoints::Files
34
35
  ], options)
35
36
 
36
37
  perform_request(options.merge({
37
- :path => path
38
+ path: path
38
39
  }))
39
40
  end
40
41
  end
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints::Files
2
3
  class GetPreview < DropboxApi::Endpoints::ContentDownload
3
4
  Method = :post
4
- Path = "/2/files/get_preview".freeze
5
+ Path = '/2/files/get_preview'
5
6
  ResultType = DropboxApi::Metadata::File
6
7
  ErrorType = DropboxApi::Errors::PreviewError
7
8
 
@@ -11,7 +12,7 @@ module DropboxApi::Endpoints::Files
11
12
  #
12
13
  # @param path [String] The path of the file to preview.
13
14
  add_endpoint :get_preview do |path, &block|
14
- perform_request({:path => path}, &block)
15
+ perform_request({path: path}, &block)
15
16
  end
16
17
  end
17
18
  end
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints::Files
2
3
  class GetTemporaryLink < DropboxApi::Endpoints::Rpc
3
4
  Method = :post
4
- Path = "/2/files/get_temporary_link".freeze
5
+ Path = '/2/files/get_temporary_link'
5
6
  ResultType = DropboxApi::Results::GetTemporaryLinkResult
6
7
  ErrorType = DropboxApi::Errors::GetMetadataError
7
8
 
@@ -11,7 +12,7 @@ module DropboxApi::Endpoints::Files
11
12
  #
12
13
  # @param path [String] The path to the file you want a temporary link to.
13
14
  add_endpoint :get_temporary_link do |path|
14
- perform_request({:path => path})
15
+ perform_request({path: path})
15
16
  end
16
17
  end
17
18
  end
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints::Files
2
3
  class GetThumbnail < DropboxApi::Endpoints::ContentDownload
3
4
  Method = :post
4
- Path = "/2/files/get_thumbnail".freeze
5
+ Path = '/2/files/get_thumbnail'
5
6
  ResultType = DropboxApi::Metadata::File
6
7
  ErrorType = DropboxApi::Errors::PreviewError
7
8
 
@@ -50,7 +51,7 @@ module DropboxApi::Endpoints::Files
50
51
  options[:size] ||= :w64h64
51
52
 
52
53
  perform_request(options.merge({
53
- :path => path
54
+ path: path
54
55
  }), &block)
55
56
  end
56
57
  end
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints::Files
2
3
  class GetThumbnailBatch < DropboxApi::Endpoints::RpcContent
3
4
  Method = :post
4
- Path = "/2/files/get_thumbnail_batch".freeze
5
+ Path = '/2/files/get_thumbnail_batch'
5
6
  ResultType = DropboxApi::Results::GetThumbnailBatchResult
6
7
  ErrorType = DropboxApi::Errors::ThumbnailBatchError
7
8
 
@@ -25,12 +26,12 @@ module DropboxApi::Endpoints::Files
25
26
  options[:size] ||= :w64h64
26
27
  options[:mode] ||= :strict
27
28
 
28
- perform_request :entries => build_entries_params(paths, options)
29
+ perform_request entries: build_entries_params(paths, options)
29
30
  end
30
31
 
31
32
  def build_entries_params(paths, options)
32
33
  paths.map do |path|
33
- options.merge({ :path => path })
34
+ options.merge({ path: path })
34
35
  end
35
36
  end
36
37
 
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints::Files
2
3
  class ListFolder < DropboxApi::Endpoints::Rpc
3
4
  Method = :post
4
- Path = "/2/files/list_folder".freeze
5
+ Path = '/2/files/list_folder'
5
6
  ResultType = DropboxApi::Results::ListFolderResult
6
7
  ErrorType = DropboxApi::Errors::ListFolderError
7
8
 
@@ -41,7 +42,7 @@ module DropboxApi::Endpoints::Files
41
42
  options[:limit] = options[:limit] if options[:limit]
42
43
 
43
44
  perform_request options.merge({
44
- :path => path
45
+ path: path
45
46
  })
46
47
  end
47
48
 
@@ -1,10 +1,11 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints::Files
2
3
  class ListFolderContinue < DropboxApi::Endpoints::Rpc
3
4
  # NOTE: This hasn't been tested with real data, I couldn't make a query
4
5
  # long enough to enable the `has_more` attribute in the
5
6
  # `ListFolderResult`.
6
7
  Method = :post
7
- Path = "/2/files/list_folder/continue".freeze
8
+ Path = '/2/files/list_folder/continue'
8
9
  ResultType = DropboxApi::Results::ListFolderResult
9
10
  ErrorType = DropboxApi::Errors::ListFolderContinueError
10
11
 
@@ -14,7 +15,7 @@ module DropboxApi::Endpoints::Files
14
15
  # @param cursor [String] The cursor returned by your last call to
15
16
  # list_folder or list_folder_continue.
16
17
  add_endpoint :list_folder_continue do |cursor|
17
- perform_request :cursor => cursor
18
+ perform_request cursor: cursor
18
19
  end
19
20
  end
20
21
  end
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
1
2
  module DropboxApi::Endpoints::Files
2
3
  class ListFolderGetLatestCursor < DropboxApi::Endpoints::Rpc
3
4
  Method = :post
4
- Path = "/2/files/list_folder/get_latest_cursor".freeze
5
+ Path = '/2/files/list_folder/get_latest_cursor'
5
6
  ResultType = DropboxApi::Results::ListFolderGetLatestCursorResult
6
7
  ErrorType = DropboxApi::Errors::ListFolderError
7
8