dropbox_api 0.1.6 β†’ 0.1.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7b389b70a2387d0fdb49c3fdb6f2eee7f668c8a6
4
- data.tar.gz: d3e52de1f131820d0bef5ceef1317d3e27f87bf7
3
+ metadata.gz: 5dde8e23c02270cb1b1cc29c059d03ae27b9160f
4
+ data.tar.gz: d398b3b9c4fc2edc3f190bea2a35e9dbaf4ae0fd
5
5
  SHA512:
6
- metadata.gz: 3a6069d423d4a9166875aaaa13d7a10147eddc28035eaa46e330bf63e05ed9c88d3397ca42085a1135aaccf12f7059cb3f8b27ae5fa8af000c3e0085e3e2873f
7
- data.tar.gz: 5a589ff7f10403e2dca274742b2e22f27f1ab370094f47168f6f16b543b569d92b0dd8da40e45cb33043b74a6319a4caa1eabbba098a190ce0047372ad25b59b
6
+ metadata.gz: 4f174851e2e863c779082a8d5fdfa39b46ac62effb31215514a01f0ed34d5bfabe33da4fd0a7df06b331c4999e8f3683c57e712757e1a49e31ced9176d7ad4cc
7
+ data.tar.gz: 28efd74cffc713594babe9a55318c447d541fad2ac5d8c1c3acde120b1f034fa16ecb6264c90545c9ef506e6daf6d3f26d7bdb95424c6193d5eea15771ad2a72
data/TODO.md CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  - Rebuild spec fixtures for `list_folder`.
4
4
  - Add documentation on how to rebuild spec fixtures.
5
+ - Chunked downloads, issue #8.
6
+ - Chunked uploads, issue #18.
5
7
 
6
8
  # Upcoming
7
9
 
@@ -46,4 +48,7 @@ Release process:
46
48
 
47
49
  ## Publish doc
48
50
 
49
- 1.
51
+ 1. `yardoc`
52
+ 2. Change dir to dropbox_api_doc, where branch gh-pages is checked out.
53
+ 3. Replace files with the updated ones.
54
+ 4. `git commit` & `git push origin gh-pages`.
data/api_coverage.md CHANGED
@@ -15,8 +15,8 @@ what new moon means.
15
15
  API call | Status
16
16
  --- | :---:
17
17
  `/copy` | πŸŒ•
18
- `/copy_reference/get` | πŸŒ‘
19
- `/copy_reference/save` | πŸŒ‘
18
+ `/copy_reference/get` | πŸŒ•
19
+ `/copy_reference/save` | πŸŒ•
20
20
  `/create_folder` | πŸŒ•
21
21
  `/delete` | πŸŒ•
22
22
  `/download` | πŸŒ”
data/lib/dropbox_api.rb CHANGED
@@ -57,6 +57,8 @@ require 'dropbox_api/errors/search_error'
57
57
  require 'dropbox_api/errors/settings_error'
58
58
  require 'dropbox_api/errors/share_path_error'
59
59
  require 'dropbox_api/errors/share_folder_error'
60
+ require 'dropbox_api/errors/get_copy_reference_error'
61
+ require 'dropbox_api/errors/save_copy_reference_error'
60
62
  require 'dropbox_api/errors/create_folder_error'
61
63
  require 'dropbox_api/errors/create_shared_link_with_settings_error'
62
64
  require 'dropbox_api/errors/delete_error'
@@ -88,6 +90,8 @@ require 'dropbox_api/errors/get_account_error'
88
90
  require 'dropbox_api/result_builder'
89
91
  require 'dropbox_api/results/base'
90
92
  require 'dropbox_api/results/basic_account_batch'
93
+ require 'dropbox_api/results/get_copy_reference_result'
94
+ require 'dropbox_api/results/save_copy_reference_result'
91
95
  require 'dropbox_api/results/add_file_member_result_list'
92
96
  require 'dropbox_api/results/get_temporary_link_result'
93
97
  require 'dropbox_api/results/list_folder_result'
@@ -114,6 +118,8 @@ require 'dropbox_api/endpoints/content_download'
114
118
  require 'dropbox_api/endpoints/content_upload'
115
119
  require 'dropbox_api/endpoints/options_validator'
116
120
  require 'dropbox_api/endpoints/files/copy'
121
+ require 'dropbox_api/endpoints/files/copy_reference_get'
122
+ require 'dropbox_api/endpoints/files/copy_reference_save'
117
123
  require 'dropbox_api/endpoints/files/create_folder'
118
124
  require 'dropbox_api/endpoints/files/delete'
119
125
  require 'dropbox_api/endpoints/files/download'
@@ -0,0 +1,21 @@
1
+ module DropboxApi::Endpoints::Files
2
+ class CopyReferenceGet < DropboxApi::Endpoints::Rpc
3
+ Method = :post
4
+ Path = "/2/files/copy_reference/get".freeze
5
+ ResultType = DropboxApi::Results::GetCopyReferenceResult
6
+ ErrorType = DropboxApi::Errors::GetCopyReferenceError
7
+
8
+ # Get a copy reference to a file or folder.
9
+ # This reference string can be used to save that file or folder
10
+ # to another user's Dropbox by passing it to {Client#copy_reference_save}.
11
+ #
12
+ # @param path [String] The path to the file or folder you want to get a
13
+ # copy reference to.
14
+ # @return [DropboxApi::Results::GetCopyReferenceResult]
15
+ add_endpoint :copy_reference_get do |path|
16
+ perform_request({
17
+ :path => path
18
+ })
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,22 @@
1
+ module DropboxApi::Endpoints::Files
2
+ class CopyReferenceSave < DropboxApi::Endpoints::Rpc
3
+ Method = :post
4
+ Path = "/2/files/copy_reference/save".freeze
5
+ ResultType = DropboxApi::Results::SaveCopyReferenceResult
6
+ ErrorType = DropboxApi::Errors::SaveCopyReferenceError
7
+
8
+ # Save a copy reference returned by {Client#copy_reference_get} to the
9
+ # user's Dropbox.
10
+ #
11
+ # @param copy_reference [String] A copy reference returned by
12
+ # {Client#copy_reference_get}.
13
+ # @param path [String] Path in the user's Dropbox that is the destination.
14
+ # @return [DropboxApi::Results::SaveCopyReferenceResult]
15
+ add_endpoint :copy_reference_save do |copy_reference, path|
16
+ perform_request({
17
+ :copy_reference => copy_reference,
18
+ :path => path
19
+ })
20
+ end
21
+ end
22
+ end
@@ -54,6 +54,7 @@ module DropboxApi::Errors
54
54
  class InsufficientSpaceError < BasicError; end
55
55
  class InternalError < BasicError; end
56
56
  class InvalidCommentError < BasicError; end
57
+ class InvalidCopyReferenceError < BasicError; end
57
58
  class InvalidCursorError < BasicError; end
58
59
  class InvalidDropboxIdError < BasicError; end
59
60
  class InvalidEmailError < BasicError; end
@@ -0,0 +1,7 @@
1
+ module DropboxApi::Errors
2
+ class GetCopyReferenceError < BasicError
3
+ ErrorSubtypes = {
4
+ :path => LookupError
5
+ }.freeze
6
+ end
7
+ end
@@ -0,0 +1,11 @@
1
+ module DropboxApi::Errors
2
+ class SaveCopyReferenceError < BasicError
3
+ ErrorSubtypes = {
4
+ :path => WriteError,
5
+ :invalid_copy_reference => InvalidCopyReferenceError,
6
+ :no_permission => NoPermissionError,
7
+ :not_found => NotFoundError,
8
+ :too_many_files => TooManyFilesError
9
+ }.freeze
10
+ end
11
+ end
@@ -0,0 +1,20 @@
1
+ module DropboxApi::Results
2
+ class GetCopyReferenceResult < DropboxApi::Results::Base
3
+ # Metadata of the file or folder.
4
+ def resource
5
+ @resource ||= DropboxApi::Metadata::Resource.new @data["metadata"]
6
+ end
7
+
8
+ # A copy reference to the file or folder.
9
+ def copy_reference
10
+ @copy_reference ||= @data["copy_reference"]
11
+ end
12
+
13
+ # The expiration date of the copy reference.
14
+ # This value is currently set to be far enough in the future
15
+ # so that expiration is effectively not an issue.
16
+ def expires
17
+ @expires ||= Time.parse(@data["expires"])
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,8 @@
1
+ module DropboxApi::Results
2
+ class SaveCopyReferenceResult < DropboxApi::Results::Base
3
+ # The saved file or folder in the user's Dropbox.
4
+ def resource
5
+ @resource ||= DropboxApi::Metadata::Resource.new @data["metadata"]
6
+ end
7
+ end
8
+ end
@@ -1,3 +1,3 @@
1
1
  module DropboxApi
2
- VERSION = '0.1.6'.freeze
2
+ VERSION = '0.1.7'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dropbox_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - JesΓΊs Burgos
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-05-06 00:00:00.000000000 Z
11
+ date: 2017-06-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -143,6 +143,8 @@ files:
143
143
  - lib/dropbox_api/endpoints/content_download.rb
144
144
  - lib/dropbox_api/endpoints/content_upload.rb
145
145
  - lib/dropbox_api/endpoints/files/copy.rb
146
+ - lib/dropbox_api/endpoints/files/copy_reference_get.rb
147
+ - lib/dropbox_api/endpoints/files/copy_reference_save.rb
146
148
  - lib/dropbox_api/endpoints/files/create_folder.rb
147
149
  - lib/dropbox_api/endpoints/files/delete.rb
148
150
  - lib/dropbox_api/endpoints/files/download.rb
@@ -189,6 +191,7 @@ files:
189
191
  - lib/dropbox_api/errors/download_error.rb
190
192
  - lib/dropbox_api/errors/file_member_action_error.rb
191
193
  - lib/dropbox_api/errors/get_account_error.rb
194
+ - lib/dropbox_api/errors/get_copy_reference_error.rb
192
195
  - lib/dropbox_api/errors/get_metadata_error.rb
193
196
  - lib/dropbox_api/errors/http_error.rb
194
197
  - lib/dropbox_api/errors/list_folder_continue_error.rb
@@ -201,6 +204,7 @@ files:
201
204
  - lib/dropbox_api/errors/preview_error.rb
202
205
  - lib/dropbox_api/errors/relocation_error.rb
203
206
  - lib/dropbox_api/errors/restore_error.rb
207
+ - lib/dropbox_api/errors/save_copy_reference_error.rb
204
208
  - lib/dropbox_api/errors/save_url_error.rb
205
209
  - lib/dropbox_api/errors/search_error.rb
206
210
  - lib/dropbox_api/errors/settings_error.rb
@@ -256,12 +260,14 @@ files:
256
260
  - lib/dropbox_api/results/add_file_member_result_list.rb
257
261
  - lib/dropbox_api/results/base.rb
258
262
  - lib/dropbox_api/results/basic_account_batch.rb
263
+ - lib/dropbox_api/results/get_copy_reference_result.rb
259
264
  - lib/dropbox_api/results/get_temporary_link_result.rb
260
265
  - lib/dropbox_api/results/list_folder_get_latest_cursor_result.rb
261
266
  - lib/dropbox_api/results/list_folder_longpoll_result.rb
262
267
  - lib/dropbox_api/results/list_folder_result.rb
263
268
  - lib/dropbox_api/results/list_revisions_result.rb
264
269
  - lib/dropbox_api/results/list_shared_links_result.rb
270
+ - lib/dropbox_api/results/save_copy_reference_result.rb
265
271
  - lib/dropbox_api/results/save_url_job_status.rb
266
272
  - lib/dropbox_api/results/save_url_result.rb
267
273
  - lib/dropbox_api/results/search/match.rb