pcloud 0.0.3 → 0.0.4

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
  SHA256:
3
- metadata.gz: 2128c1a79983adf3f851afd99d033fe47558f3df24d1bbb335521698055dea6c
4
- data.tar.gz: 2d96ae7c6dbff5ea628ba1f7511d3951a3651d0a2aceee2da0aa4ac874e114ae
3
+ metadata.gz: 488c8b94851e3db065174d08c512e6ecb55b0217d67df05f403c7616404491c8
4
+ data.tar.gz: 56d94559f29edd8f1ce9e94307a1674ad880bc772aae137346efe3a63e9df91a
5
5
  SHA512:
6
- metadata.gz: 288b9668c7e3236f69b8575ba4834dab4a8f0aedc869d2261407ca02f0482deeb009e3df1e8c78100bf785ce804069d0d3ebf437d1a3bb03c01c81c12b533802
7
- data.tar.gz: d873eb5aa61accd34734fb1ab2ee103fc9350ac30ca3fc834f8c03a199c4b2484aceba4f8998c73277f6538aaae4567eff3f30b6ee968afc0e895ab6712e5a8b
6
+ metadata.gz: 3a80966ba741f5b3c9b8d4b522143db68f9f5e4561ac811df29c6ce6d0ccfae9b3ecf27fc81b9fbde57548e134245427e7cdb4a65a881d98c661dde4e24e6e3c
7
+ data.tar.gz: 19b0ab6b6a4475a93994183f05a4ee3e72bad7a70176a2c859e30e022fbef36e778d33857a724f759901264417c7b96ee6785a48a77786490a3f3f458258eeee
@@ -1,5 +1,12 @@
1
1
  ### Changelogs:
2
2
 
3
+ #### v0.0.4
4
+ ##### Updates
5
+ * Minor changes
6
+ * Upload and Download added and avilable now
7
+ * Post method is avilable now.
8
+ * Upload/Download async version is on work.
9
+
3
10
  #### v0.0.3
4
11
  ##### Updates
5
12
  * Minor updates
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
- <!-- #### Post methods
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
- pcloud.get("createfolder", folderid: 0, name: "new folder name")
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+
@@ -21,9 +21,7 @@ module Pcloud
21
21
  end
22
22
 
23
23
  def default_client
24
- @default_client ||= begin
25
- Pcloud::Client.new
26
- end
24
+ @default_client ||= Pcloud::Client.new
27
25
  end
28
26
  end
29
27
  end
@@ -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 ||= begin
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
- # require File.dirname(__FILE__) + '/upload'
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') {|f|
20
- block = proc { |response|
21
- response.read_body do |chunk|
22
- f.write chunk
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
@@ -16,7 +16,7 @@ module Pcloud
16
16
  end
17
17
 
18
18
  def file
19
- FileHandler.new(@client)
19
+ @file ||= FileHandler.new(@client)
20
20
  end
21
21
 
22
22
  private
@@ -1,3 +1,3 @@
1
1
  module Pcloud
2
- VERSION = '0.0.3'
2
+ VERSION = '0.0.4'
3
3
  end
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.3
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-01 00:00:00.000000000 Z
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
@@ -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