dropbox_api 0.1.18 → 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 +4 -4
- data/.rubocop.yml +9 -8
- data/.travis.yml +0 -2
- data/Gemfile +4 -3
- data/README.md +7 -2
- data/Rakefile +4 -3
- data/api_coverage.md +1 -1
- data/bin/console +4 -3
- data/dropbox_api.gemspec +15 -14
- data/lib/dropbox_api.rb +12 -2
- 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 +4 -3
- 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 +4 -3
- data/lib/dropbox_api/endpoints/files/copy.rb +4 -3
- data/lib/dropbox_api/endpoints/files/copy_batch.rb +3 -2
- data/lib/dropbox_api/endpoints/files/copy_batch_check.rb +3 -2
- 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 +3 -2
- data/lib/dropbox_api/endpoints/files/create_folder_batch_check.rb +3 -2
- data/lib/dropbox_api/endpoints/files/delete.rb +3 -2
- data/lib/dropbox_api/endpoints/files/delete_batch.rb +3 -2
- data/lib/dropbox_api/endpoints/files/delete_batch_check.rb +3 -2
- 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 +2 -1
- 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 +2 -1
- 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 +4 -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 +4 -3
- 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 +2 -1
- data/lib/dropbox_api/results/create_folder_batch_result.rb +5 -4
- data/lib/dropbox_api/results/create_folder_batch_result_entry.rb +1 -0
- data/lib/dropbox_api/results/delete_batch_result.rb +5 -4
- data/lib/dropbox_api/results/delete_batch_result_entry.rb +1 -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 +5 -4
- data/lib/dropbox_api/results/relocation_batch_result_entry.rb +1 -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/yardoc/endpoint_handler.rb +2 -1
- data/yardoc/helpers/html_helper.rb +2 -1
- data/yardoc/rspec.rb +8 -7
- data/yardoc/templates/default/method_details/setup.rb +1 -0
- metadata +24 -16
- data/.rubocop_todo.yml +0 -442
- data/CHANGES.md +0 -7
- data/lib/dropbox_api/results/search_result.rb +0 -22
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9c59970ce358c1a706d47040336547ea3df770fe97194122011f5695d69a4bc9
|
4
|
+
data.tar.gz: caff55f6ba1ae50d6487450c2f12ac2df2a72a2cf3573ce6d8610664de404012
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7fc4add7446cec7d25627719dffa3b293173c7ce02356d514c7ac49f17673207da670d563e63ba0bf2690376beec98325ce84fbb6843f4bedab0ec6ff1b000b9
|
7
|
+
data.tar.gz: 4d2a098c291bc47d501ba90dcce05ae43e42ab77fa1c5fe8ad83d329aec3408d1ac987d2b931fbf25fe64a1f8c51584620306b06c32e9ebe7d5bf7c0a0efc6a1
|
data/.rubocop.yml
CHANGED
@@ -1,14 +1,15 @@
|
|
1
|
-
|
1
|
+
AllCops:
|
2
|
+
DisabledByDefault: true
|
2
3
|
|
3
4
|
Style/HashSyntax:
|
4
5
|
Enabled: true
|
5
|
-
EnforcedStyle: '
|
6
|
+
EnforcedStyle: 'ruby19'
|
6
7
|
|
7
|
-
Style/
|
8
|
-
|
8
|
+
Style/FrozenStringLiteralComment:
|
9
|
+
EnforcedStyle: always_true
|
9
10
|
|
10
|
-
Style/
|
11
|
-
Enabled:
|
11
|
+
Style/RedundantFreeze:
|
12
|
+
Enabled: true
|
12
13
|
|
13
|
-
|
14
|
-
|
14
|
+
Style/StringLiterals:
|
15
|
+
EnforcedStyle: single_quotes
|
data/.travis.yml
CHANGED
data/Gemfile
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
source 'https://rubygems.org'
|
2
3
|
|
3
4
|
gemspec
|
@@ -5,9 +6,9 @@ gemspec
|
|
5
6
|
group :development do
|
6
7
|
# Documentation
|
7
8
|
gem 'redcarpet'
|
8
|
-
gem 'yard-tests-rspec', :
|
9
|
+
gem 'yard-tests-rspec', git: 'https://github.com/Jesus/yard-spec-plugin.git'
|
9
10
|
|
10
11
|
# Code linting
|
11
|
-
gem 'rubocop', :
|
12
|
-
gem 'rubocop-rspec', :
|
12
|
+
gem 'rubocop', require: false
|
13
|
+
gem 'rubocop-rspec', require: false
|
13
14
|
end
|
data/README.md
CHANGED
@@ -146,7 +146,7 @@ This gem depends on
|
|
146
146
|
and
|
147
147
|
[faraday](https://github.com/lostisland/faraday).
|
148
148
|
|
149
|
-
It has official support for Ruby versions `
|
149
|
+
It has official support for Ruby versions `2.x`.
|
150
150
|
|
151
151
|
## Development
|
152
152
|
|
@@ -172,6 +172,11 @@ would be the procedure to do so:
|
|
172
172
|
DROPBOX_OAUTH_BEARER=YOUR_AUTH_BEARER rake test:build_scaffold[list_folder]
|
173
173
|
```
|
174
174
|
|
175
|
+
Note that you'll have to type `rake test:build_scaffold\[list_folder\]`
|
176
|
+
if you use `zsh`.
|
177
|
+
|
178
|
+
You can build all available scaffolds with just `rake test:build_scaffold`.
|
179
|
+
|
175
180
|
3. Run the tests and the cassettes will be written:
|
176
181
|
|
177
182
|
```text
|
@@ -182,7 +187,7 @@ The OAuth bearer shouldn't have been recorded in the cassette and it should've
|
|
182
187
|
been filtered. However, you may want to double check before pushing your
|
183
188
|
updates to Github.
|
184
189
|
|
185
|
-
Tip:
|
190
|
+
Tip: you can simply run `export DROPBOX_OAUTH_BEARER=YOUR_AUTH_BEARER` at
|
186
191
|
the beginning of your work session so you don't need to prefix it in every
|
187
192
|
command line.
|
188
193
|
|
data/Rakefile
CHANGED
@@ -1,7 +1,8 @@
|
|
1
|
-
|
2
|
-
require
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require 'bundler/gem_tasks'
|
3
|
+
require 'rspec/core/rake_task'
|
3
4
|
require File.expand_path('../spec/support/rake_tasks', __FILE__)
|
4
5
|
|
5
6
|
RSpec::Core::RakeTask.new(:spec)
|
6
7
|
|
7
|
-
task :
|
8
|
+
task default: :spec
|
data/api_coverage.md
CHANGED
data/bin/console
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: true
|
2
3
|
|
3
|
-
require
|
4
|
-
require
|
4
|
+
require 'bundler/setup'
|
5
|
+
require 'dropbox_api'
|
5
6
|
|
6
7
|
# You can add fixtures and/or initialization code here to make experimenting
|
7
8
|
# with your gem easier. You can also use a different console, if you like.
|
@@ -10,5 +11,5 @@ require "dropbox_api"
|
|
10
11
|
# require "pry"
|
11
12
|
# Pry.start
|
12
13
|
|
13
|
-
require
|
14
|
+
require 'irb'
|
14
15
|
IRB.start
|
data/dropbox_api.gemspec
CHANGED
@@ -1,28 +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 =
|
8
|
+
spec.name = 'dropbox_api'
|
8
9
|
spec.version = DropboxApi::VERSION
|
9
|
-
spec.authors = [
|
10
|
-
spec.email = [
|
10
|
+
spec.authors = ['Jesús Burgos']
|
11
|
+
spec.email = ['jburmac@gmail.com']
|
11
12
|
|
12
|
-
spec.summary =
|
13
|
-
spec.homepage =
|
14
|
-
spec.license =
|
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 = [
|
19
|
+
spec.require_paths = ['lib']
|
19
20
|
|
20
|
-
spec.add_development_dependency
|
21
|
-
spec.add_development_dependency
|
22
|
-
spec.add_development_dependency
|
23
|
-
spec.add_development_dependency
|
24
|
-
spec.add_development_dependency
|
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'
|
25
26
|
|
26
|
-
spec.add_dependency
|
27
|
-
spec.add_dependency
|
27
|
+
spec.add_dependency 'faraday', '~> 1.0'
|
28
|
+
spec.add_dependency 'oauth2', '~> 1.1'
|
28
29
|
end
|
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'
|
@@ -125,8 +136,7 @@ require 'dropbox_api/results/list_folder_get_latest_cursor_result'
|
|
125
136
|
require 'dropbox_api/results/list_shared_links_result'
|
126
137
|
require 'dropbox_api/results/save_url_result'
|
127
138
|
require 'dropbox_api/results/save_url_job_status'
|
128
|
-
require 'dropbox_api/results/
|
129
|
-
require 'dropbox_api/results/search_result'
|
139
|
+
require 'dropbox_api/results/search_v2_result'
|
130
140
|
require 'dropbox_api/results/share_folder_launch'
|
131
141
|
require 'dropbox_api/results/shared_file_members'
|
132
142
|
require 'dropbox_api/results/shared_folder_members'
|
@@ -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
|
-
:
|
10
|
-
:
|
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 =
|
17
|
+
chunk = '' if chunk.nil?
|
17
18
|
|
18
19
|
@cursor = @client.upload_session_start chunk
|
19
20
|
end
|
data/lib/dropbox_api/client.rb
CHANGED
@@ -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 =
|
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,11 +26,11 @@ 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][
|
29
|
-
raw_response.env[:api_result][
|
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[
|
33
|
+
error.retry_after = raw_response.headers['retry-after'].to_i
|
33
34
|
|
34
35
|
raise error
|
35
36
|
else
|
@@ -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(
|
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
|
-
#
|
24
|
-
#
|
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(
|
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 =
|
5
|
+
Path = '/2/file_requests/create'
|
5
6
|
ResultType = DropboxApi::Metadata::FileRequest
|
6
7
|
ErrorType = DropboxApi::Errors::CreateFileRequestError
|
7
8
|
|
@@ -13,8 +14,8 @@ module DropboxApi::Endpoints::Files
|
|
13
14
|
# this will be relative to the app folder.
|
14
15
|
add_endpoint :create_file_request do |title, destination|
|
15
16
|
perform_request({
|
16
|
-
:
|
17
|
-
:
|
17
|
+
title: title,
|
18
|
+
destination: destination
|
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 Copy < DropboxApi::Endpoints::Rpc
|
3
4
|
Method = :post
|
4
|
-
Path =
|
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
|
-
:
|
17
|
-
:
|
17
|
+
from_path: from,
|
18
|
+
to_path: to
|
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 CopyBatch < DropboxApi::Endpoints::Rpc
|
3
4
|
Method = :post
|
4
|
-
Path =
|
5
|
+
Path = '/2/files/copy_batch_v2'
|
5
6
|
ResultType = DropboxApi::Results::CopyBatchResult
|
6
7
|
|
7
8
|
include DropboxApi::OptionsValidator
|
@@ -28,7 +29,7 @@ module DropboxApi::Endpoints::Files
|
|
28
29
|
options[:autorename] ||= false
|
29
30
|
|
30
31
|
perform_request(options.merge({
|
31
|
-
:
|
32
|
+
entries: entries
|
32
33
|
}))
|
33
34
|
end
|
34
35
|
end
|
@@ -1,7 +1,8 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
module DropboxApi::Endpoints::Files
|
2
3
|
class CopyBatchCheck < DropboxApi::Endpoints::Rpc
|
3
4
|
Method = :post
|
4
|
-
Path = '/2/files/copy_batch/check_v2'
|
5
|
+
Path = '/2/files/copy_batch/check_v2'
|
5
6
|
ResultType = DropboxApi::Results::RelocationBatchResult
|
6
7
|
ErrorType = DropboxApi::Errors::PollError
|
7
8
|
|
@@ -14,7 +15,7 @@ module DropboxApi::Endpoints::Files
|
|
14
15
|
# @return [:in_progress, Array] This could be either the `:in_progress`
|
15
16
|
# flag or a list of job statuses.
|
16
17
|
add_endpoint :copy_batch_check do |async_job_id|
|
17
|
-
perform_request :
|
18
|
+
perform_request async_job_id: async_job_id
|
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 CopyReferenceGet < DropboxApi::Endpoints::Rpc
|
3
4
|
Method = :post
|
4
|
-
Path =
|
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
|
-
:
|
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 =
|
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
|
-
:
|
18
|
-
:
|
18
|
+
copy_reference: copy_reference,
|
19
|
+
path: path
|
19
20
|
})
|
20
21
|
end
|
21
22
|
end
|