pcloud 0.0.3 → 0.0.4
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/Changelog.md +7 -0
- data/README.md +34 -4
- data/lib/pcloud.rb +1 -3
- data/lib/pcloud/client.rb +1 -6
- data/lib/pcloud/files/file_handler.rb +11 -12
- data/lib/pcloud/resource.rb +1 -1
- data/lib/pcloud/version.rb +1 -1
- metadata +2 -3
- data/lib/pcloud/files/upload.rb +0 -19
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 488c8b94851e3db065174d08c512e6ecb55b0217d67df05f403c7616404491c8
|
4
|
+
data.tar.gz: 56d94559f29edd8f1ce9e94307a1674ad880bc772aae137346efe3a63e9df91a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3a80966ba741f5b3c9b8d4b522143db68f9f5e4561ac811df29c6ce6d0ccfae9b3ecf27fc81b9fbde57548e134245427e7cdb4a65a881d98c661dde4e24e6e3c
|
7
|
+
data.tar.gz: 19b0ab6b6a4475a93994183f05a4ee3e72bad7a70176a2c859e30e022fbef36e778d33857a724f759901264417c7b96ee6785a48a77786490a3f3f458258eeee
|
data/Changelog.md
CHANGED
data/README.md
CHANGED
@@ -77,15 +77,45 @@ Pcloud.get("getdigest")
|
|
77
77
|
|
78
78
|
# with params
|
79
79
|
Pcloud.get("listfolder", folderid: 0)
|
80
|
-
Pcloud.get("createfolder", folderid: 0, name: "new folder name", ...)
|
81
80
|
```
|
81
|
+
<!-- Pcloud.get("createfolder", folderid: 0, name: "new folder name", ...) -->
|
82
82
|
|
83
|
-
|
83
|
+
#### Post methods
|
84
84
|
|
85
85
|
``` ruby
|
86
|
+
# if any of pcloud endpoints requires payload on POST request, please create an issue.
|
87
|
+
|
86
88
|
# with params
|
87
|
-
|
88
|
-
```
|
89
|
+
Pcloud.post("createfolder", folderid: 0, name: "new folder name")
|
90
|
+
```
|
91
|
+
|
92
|
+
#### [Files](https://docs.pcloud.com/methods/file/)
|
93
|
+
##### [Download File](https://docs.pcloud.com/methods/file/downloadfile.html)
|
94
|
+
|
95
|
+
``` ruby
|
96
|
+
#obtain filelink from: https://docs.pcloud.com/methods/streaming/getfilelink.html
|
97
|
+
|
98
|
+
Pcloud.file.download(
|
99
|
+
url: filelink, #required
|
100
|
+
destination: "#{Dir.pwd}/Downloads", #required
|
101
|
+
filename: "hehe.txt" #optional
|
102
|
+
)
|
103
|
+
```
|
104
|
+
|
105
|
+
##### [Upload File](https://docs.pcloud.com/methods/file/uploadfile.html)
|
106
|
+
|
107
|
+
``` ruby
|
108
|
+
# still in BETA! -
|
109
|
+
# only supports single file download
|
110
|
+
|
111
|
+
file = File.open("/Users/7urkm3n/Downloads/anything.file")
|
112
|
+
params = {
|
113
|
+
folderid: 0, #required
|
114
|
+
filename: "anything.txt" #required
|
115
|
+
}
|
116
|
+
payload = {file: file}
|
117
|
+
Pcloud.file.upload(params, payload)
|
118
|
+
```
|
89
119
|
|
90
120
|
### Supported Ruby versions
|
91
121
|
2.2+
|
data/lib/pcloud.rb
CHANGED
data/lib/pcloud/client.rb
CHANGED
@@ -1,8 +1,5 @@
|
|
1
1
|
require 'json'
|
2
2
|
require 'rest-client'
|
3
|
-
# require 'file/file'
|
4
|
-
# require "#{Dir.pwd}/lib/pcloud/files/file_handler"
|
5
|
-
|
6
3
|
|
7
4
|
module Pcloud
|
8
5
|
class Client
|
@@ -25,9 +22,7 @@ module Pcloud
|
|
25
22
|
end
|
26
23
|
|
27
24
|
def http_client
|
28
|
-
@client ||=
|
29
|
-
RestClient::Resource.new(BASE_URL)
|
30
|
-
end
|
25
|
+
@client ||= RestClient::Resource.new(BASE_URL)
|
31
26
|
end
|
32
27
|
|
33
28
|
def auth
|
@@ -1,6 +1,4 @@
|
|
1
|
-
|
2
|
-
# puts "#{Dir.pwd}/lib/pcloud/request"
|
3
|
-
# require "#{Dir.pwd}/lib/pcloud/request"
|
1
|
+
require 'RestClient'
|
4
2
|
|
5
3
|
module Pcloud
|
6
4
|
class FileHandler
|
@@ -13,17 +11,18 @@ module Pcloud
|
|
13
11
|
end
|
14
12
|
|
15
13
|
def download(params)
|
16
|
-
# create_request(:get, 'downloadfile', params).call
|
17
14
|
url = params[:url]
|
15
|
+
begin
|
16
|
+
res = RestClient.get(url)
|
17
|
+
rescue => e
|
18
|
+
raise HTTPError.new(:HTTPError, e.message)
|
19
|
+
end
|
20
|
+
|
18
21
|
filename = params[:filename] ? params[:filename] : url.split("/").last
|
19
|
-
File.open("#{params[:destination]}/#{filename}", 'wb')
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
end
|
24
|
-
}
|
25
|
-
RestClient::Request.execute(method: :get,url: url,block_response: block)
|
26
|
-
}
|
22
|
+
File.open("#{params[:destination]}/#{filename}", 'wb' ) do |f|
|
23
|
+
f.write
|
24
|
+
end
|
25
|
+
res.code
|
27
26
|
end
|
28
27
|
|
29
28
|
private
|
data/lib/pcloud/resource.rb
CHANGED
data/lib/pcloud/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pcloud
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rovshen Gurdov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-09-
|
11
|
+
date: 2020-09-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rest-client
|
@@ -69,7 +69,6 @@ files:
|
|
69
69
|
- lib/pcloud/client.rb
|
70
70
|
- lib/pcloud/exceptions.rb
|
71
71
|
- lib/pcloud/files/file_handler.rb
|
72
|
-
- lib/pcloud/files/upload.rb
|
73
72
|
- lib/pcloud/request.rb
|
74
73
|
- lib/pcloud/resource.rb
|
75
74
|
- lib/pcloud/version.rb
|
data/lib/pcloud/files/upload.rb
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
class Upload
|
2
|
-
def self.call(auth, params)
|
3
|
-
puts "AUTH: #{auth}"
|
4
|
-
puts "PARAMS: #{params}"
|
5
|
-
pr = {params: {
|
6
|
-
folderid: 7025720177,
|
7
|
-
filename: "test.txt",
|
8
|
-
upload: {
|
9
|
-
file: File.open("/Users/7urkm3n/Downloads/gurdov.com.txt")
|
10
|
-
},
|
11
|
-
auth: auth
|
12
|
-
}}
|
13
|
-
return JSON.parse(RestClient.get("#{Pcloud::BASE_URL}/uploadfile", pr))
|
14
|
-
# fl = File.new("/Users/7urkm3n/Downloads/gurdov.com.txt", 'rb')
|
15
|
-
# File.open(Rails.root.join('app','assets', 'images', file.original_filename filename), 'wb') do |file|
|
16
|
-
# file.write(source_file.read)
|
17
|
-
# end
|
18
|
-
end
|
19
|
-
end
|