cloud_door 0.0.2 → 0.0.3

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: 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: