cloud_door 0.0.2 → 0.0.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6024e618b2bcf7b05a0ce275a76b646220a10776
4
- data.tar.gz: 8a1c39312082def8fe78e517702410081ec95542
3
+ metadata.gz: 0af22855dd9c5f2038b69893689b5a3ef01ea215
4
+ data.tar.gz: 909ab98533ae18ff07a574f15b47b04c903aabc2
5
5
  SHA512:
6
- metadata.gz: b03c5a3bb7bbf46bb22e0d9dd63dfb4a7cae57a5c9d506cbb57a00415352c1a3d16647cafdbecf77b74ad714d42b4b61260379bd2eeee2311cb78dcdd8b92ad6
7
- data.tar.gz: 0af913126c0d27573c576f070ce15e8eaebc108f5aca2cd369dd675d480dadb6c0d12f48b44f3557498d6a73b9ef8d1ddd45cfe3ea24d92fcd8e182512255b88
6
+ metadata.gz: 2a8b5a67c5d36180fc10f428d882eaa1f5283fdf904529a1be0645fab66598d6122591d87d3e7d9a7c6844f3e4df06f10ed1788de8d677c9d560e3af5c65c7be
7
+ data.tar.gz: a537f6179b73ac6682070a34f11d43df80583401075a73b81caf154a17c9364d043c0d06d8ff0140bb1491f27c7563d8b4dbbc265fc6e3bfef43cb8e61e2e501
data/README.md CHANGED
@@ -134,6 +134,7 @@ C.if session_flag is "1"(using session ID)
134
134
  ### methods
135
135
  You can use these methods as instance method.
136
136
  these methods can operate current directory only.
137
+
137
138
  - login(login_account, login_password)
138
139
  - login cloud storage.
139
140
  - return the session ID after logging in if "session_flag" is "1".
@@ -2,7 +2,8 @@
2
2
 
3
3
  require 'rubygems'
4
4
  require 'commander/import'
5
- require 'cloud_door'
5
+ # require 'cloud_door'
6
+ require './lib/cloud_door'
6
7
 
7
8
  program :version, '0.0.1'
8
9
  program :description, 'access dropbox from CLI'
data/bin/gdrive CHANGED
@@ -2,7 +2,8 @@
2
2
 
3
3
  require 'rubygems'
4
4
  require 'commander/import'
5
- require 'cloud_door'
5
+ # require 'cloud_door'
6
+ require './lib/cloud_door'
6
7
 
7
8
  program :version, '0.0.1'
8
9
  program :description, 'access google drive from CLI'
@@ -2,7 +2,8 @@
2
2
 
3
3
  require 'rubygems'
4
4
  require 'commander/import'
5
- require 'cloud_door'
5
+ # require 'cloud_door'
6
+ require './lib/cloud_door'
6
7
 
7
8
  program :version, '0.0.1'
8
9
  program :description, 'access onedrive from CLI'
@@ -10,8 +10,7 @@ Gem::Specification.new do |spec|
10
10
  spec.email = ['hibiheion@gmail.com']
11
11
  spec.summary = %q{This gem can access different cloud storage through same interface.}
12
12
  spec.description = %q{This gem can access different cloud storage through same interface.
13
- This gem supports OneDrive and Dropbox, now.
14
- It will be supported also google drive in the future.}
13
+ This gem supports Dropbox, GoogleDrive and OneDrive.}
15
14
  spec.homepage = 'https://github.com/KotaroHibi/cloud_door'
16
15
  spec.license = 'MIT'
17
16
 
@@ -1,17 +1,17 @@
1
1
  ---
2
2
  global:
3
3
  data_path: './data/'
4
- session_flg: 0
4
+ session_flg: 1
5
5
  onedrive:
6
- client_id:
7
- client_secret:
8
- redirect_url:
6
+ client_id: 000000004011CC48
7
+ client_secret: ueGDCPD2ZkHI616vHMz8712qJsYrPHQd
8
+ redirect_url: https://login.live.com/oauth20_desktop.srf
9
9
  dropbox:
10
- client_id:
11
- client_secret:
12
- redirect_url:
10
+ client_id: faa7vvvwibz8bc4
11
+ client_secret: a903je5ocilukkz
12
+ redirect_url: http://localhost
13
13
  googledrive:
14
- client_id:
15
- client_secret:
16
- redirect_url:
14
+ client_id: 886645609675-e4b0hpfbtvbktgme2l2ujdh96akivqpc.apps.googleusercontent.com
15
+ client_secret: 0nZEvgkHPpOZTU7dDf4LeBwP
16
+ redirect_url: urn:ietf:wg:oauth:2.0:oob
17
17
 
@@ -1,17 +1,33 @@
1
- require 'cloud_door/account'
2
- require 'cloud_door/config'
3
- require 'cloud_door/cloud_storage'
4
- require 'cloud_door/cloud_yaml'
5
- require 'cloud_door/console'
6
- require 'cloud_door/dropbox'
7
- require 'cloud_door/exceptions'
8
- require 'cloud_door/file_list'
9
- require 'cloud_door/google_drive'
10
- require 'cloud_door/google_drive_bridge'
11
- require 'cloud_door/onedrive'
12
- require 'cloud_door/onedrive_api'
13
- require 'cloud_door/token'
14
- require 'cloud_door/version'
1
+ # require 'cloud_door/account'
2
+ # require 'cloud_door/config'
3
+ # require 'cloud_door/cloud_storage'
4
+ # require 'cloud_door/cloud_yaml'
5
+ # require 'cloud_door/console'
6
+ # require 'cloud_door/dropbox'
7
+ # require 'cloud_door/dropbox_bridge'
8
+ # require 'cloud_door/exceptions'
9
+ # require 'cloud_door/file_list'
10
+ # require 'cloud_door/google_drive'
11
+ # require 'cloud_door/google_drive_bridge'
12
+ # require 'cloud_door/onedrive'
13
+ # require 'cloud_door/onedrive_api'
14
+ # require 'cloud_door/token'
15
+ # require 'cloud_door/version'
16
+ require './lib/cloud_door/account'
17
+ require './lib/cloud_door/config'
18
+ require './lib/cloud_door/cloud_storage'
19
+ require './lib/cloud_door/cloud_yaml'
20
+ require './lib/cloud_door/console'
21
+ require './lib/cloud_door/dropbox'
22
+ require './lib/cloud_door/dropbox_bridge'
23
+ require './lib/cloud_door/exceptions'
24
+ require './lib/cloud_door/file_list'
25
+ require './lib/cloud_door/google_drive'
26
+ require './lib/cloud_door/google_drive_bridge'
27
+ require './lib/cloud_door/onedrive'
28
+ require './lib/cloud_door/onedrive_api'
29
+ require './lib/cloud_door/token'
30
+ require './lib/cloud_door/version'
15
31
 
16
32
  module CloudDoor
17
33
  class CloudDoor
@@ -1,4 +1,5 @@
1
- require 'cloud_door/cloud_yaml'
1
+ # require 'cloud_door/cloud_yaml'
2
+ require './lib/cloud_door/cloud_yaml'
2
3
 
3
4
  module CloudDoor
4
5
  class Account < CloudYaml
@@ -5,11 +5,16 @@ require 'zip'
5
5
  require 'watir-webdriver'
6
6
  require 'cgi'
7
7
  require 'cgi/session'
8
- require 'cloud_door/account'
9
- require 'cloud_door/config'
10
- require 'cloud_door/exceptions'
11
- require 'cloud_door/file_list'
12
- require 'cloud_door/token'
8
+ # require 'cloud_door/account'
9
+ # require 'cloud_door/config'
10
+ # require 'cloud_door/exceptions'
11
+ # require 'cloud_door/file_list'
12
+ # require 'cloud_door/token'
13
+ require './lib/cloud_door/account'
14
+ require './lib/cloud_door/config'
15
+ require './lib/cloud_door/exceptions'
16
+ require './lib/cloud_door/file_list'
17
+ require './lib/cloud_door/token'
13
18
 
14
19
  module CloudDoor
15
20
  class CloudStorage
@@ -287,6 +292,47 @@ module CloudDoor
287
292
  zip_file_name
288
293
  end
289
294
 
295
+ def request_user
296
+ info = @client.request_user()
297
+ raise NoDataException if info.nil? || info.empty?
298
+ info
299
+ end
300
+
301
+ def request_dir
302
+ file_id = @parent_id || @file_id || @root_id
303
+ @client.request_dir(file_id)
304
+ end
305
+
306
+ def request_file
307
+ @client.request_file(@file_id)
308
+ end
309
+
310
+ def request_download
311
+ contents = @client.request_download(@file_id)
312
+ if contents
313
+ open("#{@file_name}", 'wb') { |file| file << contens }
314
+ end
315
+ end
316
+
317
+ def request_upload(file_path)
318
+ response = @client.request_upload(file_path, @parent_id)
319
+ raise UploadFailedException if response.nil? || response.empty?
320
+ response
321
+ end
322
+
323
+ def request_delete
324
+ @client.request_delete(@file_id)
325
+ true
326
+ rescue => e
327
+ false
328
+ end
329
+
330
+ def request_mkdir
331
+ response = @client.request_mkdir(@mkdir_name, @parent_id)
332
+ # raise MkdirFailedException if response.nil? || response.empty?
333
+ # response
334
+ end
335
+
290
336
  def handle_exception(e)
291
337
  raise
292
338
  end
@@ -1,4 +1,5 @@
1
- require 'cloud_door/cloud_yaml'
1
+ # require 'cloud_door/cloud_yaml'
2
+ require './lib/cloud_door/cloud_yaml'
2
3
 
3
4
  module CloudDoor
4
5
  class Config < CloudYaml
@@ -1,5 +1,6 @@
1
1
  require 'highline/import'
2
- require 'cloud_door'
2
+ # require 'cloud_door'
3
+ require './lib/cloud_door'
3
4
 
4
5
  module CloudDoor
5
6
  class Console
@@ -1,5 +1,8 @@
1
1
  require 'dropbox_sdk'
2
- require 'cloud_door/cloud_storage'
2
+ # require 'cloud_door/cloud_storage'
3
+ # require 'cloud_door/dropbox_bridge'
4
+ require './lib/cloud_door/cloud_storage'
5
+ require './lib/cloud_door/dropbox_bridge'
3
6
 
4
7
  module CloudDoor
5
8
  class Dropbox < CloudStorage
@@ -36,7 +39,8 @@ module CloudDoor
36
39
  def load_token
37
40
  token_file = File.basename(@token.token_file)
38
41
  @token = Token.load_token(token_file, @config.data_path, @session_id)
39
- @client = DropboxClient.new(@token.access_token)
42
+ @client = DropboxBridge.new(@token.access_token)
43
+ # @client = DropboxClient.new(@token.access_token)
40
44
  @token
41
45
  end
42
46
 
@@ -48,7 +52,8 @@ module CloudDoor
48
52
  access_token, user_id = flow.finish(code)
49
53
  raise NoDataException if access_token.nil?
50
54
  @session_id = reset_token({'access_token' => access_token})
51
- @client = DropboxClient.new(access_token)
55
+ @client = DropboxBridge.new(access_token)
56
+ # @client = DropboxClient.new(access_token)
52
57
  items = pull_files
53
58
  @file_list.delete_file
54
59
  @file_list.write_file_list(items)
@@ -63,54 +68,62 @@ module CloudDoor
63
68
 
64
69
  private
65
70
 
66
- def request_user
67
- info = @client.account_info()
68
- raise NoDataException if info.nil? || info.empty?
69
- info
70
- end
71
-
72
- def request_dir
73
- file_id = @parent_id || @file_id || ROOT_ID
74
- @client.metadata(file_id)
75
- end
76
-
77
- def request_file
78
- @client.metadata(@file_id)
79
- end
80
-
81
- def request_download
82
- contents, metadata = @client.get_file_and_metadata(@file_id)
83
- open(@file_name, 'w') {|f| f.puts contents }
84
- metadata
85
- end
86
-
87
- def request_upload(file_path)
88
- if @parent_id == ROOT_ID
89
- to_path = @parent_id + file_path
90
- else
91
- to_path = "#{@parent_id}/#{file_path}"
92
- end
93
- response = @client.put_file(to_path, open(file_path))
94
- raise UploadFailedException if response.nil? || response.empty?
95
- response
96
- end
97
-
98
- def request_delete
99
- response = @client.file_delete(@file_id)
100
- raise DeleteFailedException if response.nil? || response.empty?
101
- response
102
- end
103
-
104
- def request_mkdir
105
- if @parent_id == ROOT_ID
106
- path = @parent_id + @mkdir_name
107
- else
108
- path = "#{@parent_id}/#{@mkdir_name}"
109
- end
110
- response = @client.file_create_folder(path)
111
- raise MkdirFailedException if response.nil? || response.empty?
112
- response
113
- end
71
+ # def request_user
72
+ # info = @client.request_user()
73
+ # # info = @client.account_info()
74
+ # raise NoDataException if info.nil? || info.empty?
75
+ # info
76
+ # end
77
+
78
+ # def request_dir
79
+ # file_id = @parent_id || @file_id || @root_id
80
+ # @client.request_dir(file_id)
81
+ # # file_id = @parent_id || @file_id || ROOT_ID
82
+ # # @client.metadata(file_id)
83
+ # end
84
+
85
+ # def request_file
86
+ # @client.request_file(@file_id)
87
+ # # @client.metadata(@file_id)
88
+ # end
89
+
90
+ # def request_download
91
+ # contents = @client.request_download(@file_id)
92
+ # # contents, metadata = @client.get_file_and_metadata(@file_id)
93
+ # open(@file_name, 'w') {|f| f.puts contents }
94
+ # metadata
95
+ # end
96
+
97
+ # def request_upload(file_path)
98
+ # response = @client.request_upload(file_path, @parent_id)
99
+ # # if @parent_id == ROOT_ID
100
+ # # to_path = @parent_id + file_path
101
+ # # else
102
+ # # to_path = "#{@parent_id}/#{file_path}"
103
+ # # end
104
+ # # response = @client.put_file(to_path, open(file_path))
105
+ # raise UploadFailedException if response.nil? || response.empty?
106
+ # response
107
+ # end
108
+
109
+ # def request_delete
110
+ # response = @client.request_delete(@file_id)
111
+ # # response = @client.file_delete(@file_id)
112
+ # raise DeleteFailedException if response.nil? || response.empty?
113
+ # response
114
+ # end
115
+
116
+ # def request_mkdir
117
+ # response = @client.request_mkdir(@mkdir_name, @parent_id)
118
+ # # if @parent_id == ROOT_ID
119
+ # # path = @parent_id + @mkdir_name
120
+ # # else
121
+ # # path = "#{@parent_id}/#{@mkdir_name}"
122
+ # # end
123
+ # # response = @client.file_create_folder(path)
124
+ # raise MkdirFailedException if response.nil? || response.empty?
125
+ # response
126
+ # end
114
127
 
115
128
  def pull_files
116
129
  dir = pick_cloud_info('request_dir', 'contents')
@@ -1,5 +1,7 @@
1
- require 'cloud_door/cloud_storage'
2
- require 'cloud_door/google_drive_bridge'
1
+ # require 'cloud_door/cloud_storage'
2
+ # require 'cloud_door/google_drive_bridge'
3
+ require './lib/cloud_door/cloud_storage'
4
+ require './lib/cloud_door/google_drive_bridge'
3
5
 
4
6
  module CloudDoor
5
7
  class GoogleDrive < CloudStorage
@@ -77,44 +79,40 @@ module CloudDoor
77
79
 
78
80
  private
79
81
 
80
- def request_user
81
- @client.request_user
82
- end
83
-
84
- def request_root_id
85
- @client.request_root_id
86
- end
87
-
88
- def request_dir
89
- file_id = @parent_id || @file_id || @root_id
90
- @client.request_dir(file_id)
91
- end
92
-
93
- def request_file
94
- @client.request_file(@file_id)
95
- end
96
-
97
- def request_download
98
- body = @client.request_download(@file_id)
99
- if body
100
- open(@file_name, 'w') {|f| f.puts body }
101
- end
102
- end
103
-
104
- def request_upload(file_path)
105
- @client.request_upload(file_path, @parent_id)
106
- end
107
-
108
- def request_delete
109
- @client.request_delete(@file_id)
110
- true
111
- rescue => e
112
- false
113
- end
114
-
115
- def request_mkdir
116
- @client.request_mkdir(@mkdir_name, @parent_id)
117
- end
82
+ # def request_user
83
+ # @client.request_user
84
+ # end
85
+
86
+ # def request_dir
87
+ # file_id = @parent_id || @file_id || @root_id
88
+ # @client.request_dir(file_id)
89
+ # end
90
+
91
+ # def request_file
92
+ # @client.request_file(@file_id)
93
+ # end
94
+
95
+ # def request_download
96
+ # body = @client.request_download(@file_id)
97
+ # if body
98
+ # open(@file_name, 'w') {|f| f.puts body }
99
+ # end
100
+ # end
101
+
102
+ # def request_upload(file_path)
103
+ # @client.request_upload(file_path, @parent_id)
104
+ # end
105
+
106
+ # def request_delete
107
+ # @client.request_delete(@file_id)
108
+ # true
109
+ # rescue => e
110
+ # false
111
+ # end
112
+
113
+ # def request_mkdir
114
+ # @client.request_mkdir(@mkdir_name, @parent_id)
115
+ # end
118
116
 
119
117
  def pull_files
120
118
  dir = request_dir
@@ -129,6 +127,10 @@ module CloudDoor
129
127
  items
130
128
  end
131
129
 
130
+ def request_root_id
131
+ @client.request_root_id
132
+ end
133
+
132
134
  def format_property(info)
133
135
  items = {}
134
136
  items['name'] = info['title']
@@ -1,7 +1,10 @@
1
1
  require 'google/api_client'
2
2
  require 'yaml'
3
3
  require 'mimetype_fu'
4
- require 'cloud_door/cloud_storage'
4
+ # require 'cloud_door/cloud_storage'
5
+ # require 'cloud_door/dropbox'
6
+ require './lib/cloud_door/cloud_storage'
7
+ require './lib/cloud_door/dropbox'
5
8
 
6
9
  module CloudDoor
7
10
  class GoogleDriveBridge
@@ -131,7 +134,5 @@ module CloudDoor
131
134
  raise HttpConnectionException
132
135
  end
133
136
  end
134
-
135
137
  end
136
-
137
138
  end
@@ -1,5 +1,7 @@
1
- require 'cloud_door/cloud_storage'
2
- require 'cloud_door/onedrive_api'
1
+ # require 'cloud_door/cloud_storage'
2
+ # require 'cloud_door/onedrive_api'
3
+ require './lib/cloud_door/cloud_storage'
4
+ require './lib/cloud_door/onedrive_api'
3
5
 
4
6
  module CloudDoor
5
7
  class OneDrive < CloudStorage
@@ -95,36 +97,37 @@ module CloudDoor
95
97
  )
96
98
  end
97
99
 
98
- def request_user
99
- @client.request_user
100
- end
100
+ # def request_user
101
+ # @client.request_user
102
+ # end
101
103
 
102
- def request_dir
103
- file_id = @parent_id || @file_id || ROOT_ID
104
- @client.request_dir(file_id)
105
- end
104
+ # def request_dir
105
+ # file_id = @parent_id || @file_id || @root_id
106
+ # # file_id = @parent_id || @file_id || ROOT_ID
107
+ # @client.request_dir(file_id)
108
+ # end
106
109
 
107
- def request_file
108
- @client.request_file(@file_id)
109
- end
110
+ # def request_file
111
+ # @client.request_file(@file_id)
112
+ # end
110
113
 
111
- def request_download
112
- contens = @client.request_download(@file_id)
113
- open("#{@file_name}", 'wb') { |file| file << contens }
114
- end
114
+ # def request_download
115
+ # contens = @client.request_download(@file_id)
116
+ # open("#{@file_name}", 'wb') { |file| file << contens }
117
+ # end
115
118
 
116
- def request_upload(file_path)
117
- @client.request_upload(file_path, @parent_id)
118
- end
119
+ # def request_upload(file_path)
120
+ # @client.request_upload(file_path, @parent_id)
121
+ # end
119
122
 
120
- def request_delete
121
- @client.request_delete(@file_id)
122
- end
123
+ # def request_delete
124
+ # @client.request_delete(@file_id)
125
+ # end
123
126
 
124
- def request_mkdir
125
- parent_id = @parent_id || ROOT_ID
126
- @client.request_mkdir(@mkdir_name, parent_id)
127
- end
127
+ # def request_mkdir
128
+ # parent_id = @parent_id || ROOT_ID
129
+ # @client.request_mkdir(@mkdir_name, parent_id)
130
+ # end
128
131
 
129
132
  def pull_files
130
133
  dir = pick_cloud_info('request_dir', 'data')
@@ -1,3 +1,3 @@
1
1
  module CloudDoor
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cloud_door
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kotaro Hibi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-24 00:00:00.000000000 Z
11
+ date: 2014-08-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -266,8 +266,7 @@ dependencies:
266
266
  version: 2.11.2
267
267
  description: |-
268
268
  This gem can access different cloud storage through same interface.
269
- This gem supports OneDrive and Dropbox, now.
270
- It will be supported also google drive in the future.
269
+ This gem supports Dropbox, GoogleDrive and OneDrive.
271
270
  email:
272
271
  - hibiheion@gmail.com
273
272
  executables: