pcloud 0.3.0 → 0.3.2

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: f947200228e5097393b62dfec894cb23446ab98aa6a5cae771df06f7aa857157
4
- data.tar.gz: a112e53a402bf4ff3712d97c4ebf6bab0a1d45344c3cec64c7166c530cec2d4d
3
+ metadata.gz: d3df45fba37065a0d00e1ef805a2754f6d7da0cfb62a780bcd6e2f9a73bb3dad
4
+ data.tar.gz: 975423282e2a3919243368ace288b2f61d47eeb5408ee34f7f6578ad4852799d
5
5
  SHA512:
6
- metadata.gz: f9268db7b79edd81d07ab7e4e6f927749dd862ec4de3ebb1abcaf32198c2dcf1844e28a6b3c884ccf0776df3e2cd2024ae0593a093bd9c92b2f296d8e08886ab
7
- data.tar.gz: e21f80afd09d7e397835c2ab2d6e88bb76f30999b5e2da60f53ed942bf11976bba044554b2c74c97659803b5a8e7215302d2f4d0290940678d934c5cb64749eb
6
+ metadata.gz: c2b0b1fbca1e202c8503259bf8035defab0a1dea551f94e907323c447511a37f250225b7e942fe73c1ffe581023ddd89d7e36992220bf47fa722230cc8e00b87
7
+ data.tar.gz: '088f4cec04d35a5eb422f2ae59e4d6affdf849dd4614bbe99edad6212233ffaf0b44c29812103b0aa0c23101276f0fd38967d2d1816324597d348a36a7589886'
data/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # Changelog
2
2
 
3
+ ### [0.3.2](https://www.github.com/7urkm3n/pcloud/compare/v0.3.1...v0.3.2) (2021-09-05)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * filehandle error fixed ([45fae7c](https://www.github.com/7urkm3n/pcloud/commit/45fae7c42fd483b86d42c80fd9e6a11619933a40))
9
+
3
10
  ### [0.3.1](https://www.github.com/7urkm3n/pcloud/compare/v0.3.0...v0.3.1) (2021-09-04)
4
11
 
5
12
 
data/lib/pcloud/client.rb CHANGED
@@ -34,12 +34,11 @@ module Pcloud
34
34
  self
35
35
  end
36
36
 
37
- private
38
-
39
37
  def request(verb, path, params, payload = {})
40
38
  Pcloud::Request.call(self, verb, path, params, payload)
41
39
  end
42
-
40
+
41
+ private
43
42
  def authorize(options)
44
43
  raise ConfigurationError, :username unless @username
45
44
  raise ConfigurationError, :password unless @password
@@ -6,6 +6,11 @@ module Pcloud
6
6
  super "missing key `#{key}' in the client configuration"
7
7
  end
8
8
  end
9
+ class NotFoundError < Error
10
+ def initialize(key, message)
11
+ super "not found `#{key}' with value of #{message}"
12
+ end
13
+ end
9
14
  class HTTPError < Error
10
15
  def initialize(key, message)
11
16
  super "#{key} Bad request: #{message}"
@@ -9,7 +9,7 @@ module Pcloud
9
9
  end
10
10
 
11
11
  def upload(params, payload)
12
- request(:post, 'uploadfile', params, payload)
12
+ @client.request(:post, 'uploadfile', params, payload)
13
13
  end
14
14
 
15
15
  def download(params)
@@ -22,30 +22,28 @@ module Pcloud
22
22
  destination = params[:destination] || '.'
23
23
  filename = params[:filename] || nil
24
24
  if !filename
25
- stat = request(:get, "stat", {fileid: params[:fileid]})
25
+ stat = @client.request(:get, "stat", {fileid: params[:fileid]})
26
+ raise NotFoundError.new(:fileid, params[:fileid]) if stat[:error]
26
27
  filename = stat[:metadata][:name]
27
28
  end
28
- File.write("#{destination}/#{filename}", request(:get, "gettextfile", {fileid: params[:fileid], raw: true}))
29
- end
29
+ File.write("#{destination}/#{filename}", @client.request(:get, "gettextfile", {fileid: params[:fileid], raw: true}))
30
+ end
30
31
 
31
32
  def download_folder(params)
32
- data = request(:get, "listfolder", {folderid: params[:folderid]})
33
+ data = @client.request(:get, "listfolder", {folderid: params[:folderid]})
34
+ raise NotFoundError.new(:folderid, params[:folderid]) if data[:error]
35
+
33
36
  destination = params[:destination] || '.'
34
37
  folder_name = params[:filename] || data[:metadata][:name] << ".zip"
35
38
  stringio = Zip::OutputStream::write_buffer do |zio|
36
39
  data[:metadata][:contents].each do |content|
37
40
  zio.put_next_entry(content[:name])
38
- zio.write(request(:get, "gettextfile", {fileid: content[:fileid], raw: true}))
41
+ zio.write(@client.request(:get, "gettextfile", {fileid: content[:fileid], raw: true}))
39
42
  end
40
43
  end
41
44
  stringio.rewind #reposition buffer pointer to the beginning
42
45
  File.new("#{destination}/#{folder_name}","wb").write(stringio.sysread) #write buffer to zipfile
43
46
  end
44
47
 
45
- private
46
-
47
- def request(verb, path, params, payload = {})
48
- Pcloud::Request.call(@client, verb, path, params, payload)
49
- end
50
48
  end
51
49
  end
@@ -1,3 +1,3 @@
1
1
  module Pcloud
2
- VERSION = '0.3.0'
2
+ VERSION = '0.3.2'
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.3.0
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rovshen Gurdov
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-09-04 00:00:00.000000000 Z
11
+ date: 2021-09-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client