keboola-gooddata-writer 2.0.0.pre2 → 2.0.0.pre3

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: 02ad328c3cd45c30b12d4c72f99cd41b1c1c4a3c
4
- data.tar.gz: 2d169017e12b85b1bc938b4d0754cc7ac0bbd012
3
+ metadata.gz: edf5726b36b8317f1cbf7ffc8fa8a424ece25860
4
+ data.tar.gz: fde8f3ba18c6e79c541552ab01f47aecdfdbe84e
5
5
  SHA512:
6
- metadata.gz: 87d630793b782adbab07fae2d77810849eef82ce72bd1dc2509831b720b1e213c8e10860477ad545ffbefc5175c150d4c42c3e16a348ecf3175699d064cf13ca
7
- data.tar.gz: a3741e0fc43ca669d5786fae1444d9eb7277054b67492d6a9979fe1814cc59ab82e90e754ecebfe24ce00397085a2507b7070ca5364e449b6bc3553ccfed71c2
6
+ metadata.gz: a55d8bd0d1e692f402532492f9c04f805350c6e8317821f6552d4fc9072569d38fac031205f690898b7f52c2018a8ce72c6b6408a8c196846c58839b0780d0fa
7
+ data.tar.gz: 4dde64d2715e63c1bcd7e4bab107c543c20ca0c9d29044f43cef5fe973b6bdd477b5bb29e58e04dce898763e7b526d5b3cb7f49e26f56a6b47fcc99a0a165ac8
@@ -279,6 +279,8 @@ module Keboola
279
279
  job = job(job_id)
280
280
  sleep 5 unless job.finished?
281
281
  end until job.finished?
282
+
283
+ raise JobError.new(job) if job.error?
282
284
  job
283
285
  end
284
286
 
@@ -4,6 +4,15 @@ module Keboola
4
4
  class Error < RuntimeError; end
5
5
  class ParsingError < Error; end
6
6
 
7
+ class JobError < Error
8
+ attr_reader :job
9
+
10
+ def initialize(job)
11
+ @job = job
12
+ super job.result.fetch("message")
13
+ end
14
+ end
15
+
7
16
  class ResponseError < Error
8
17
  attr_reader :response
9
18
 
@@ -18,7 +27,7 @@ module Keboola
18
27
  begin
19
28
  # try to parse response body to retreive more detailed API error message
20
29
  result = Parser.parse(ex.body)
21
- super("the server responded with status #{ex.status_code} and message '#{result['message']}'")
30
+ super("the server responded with status #{ex.status_code} and message \"#{result['message']}\"")
22
31
  rescue ParsingError
23
32
  super("the server responded with status #{ex.status_code}")
24
33
  ensure
@@ -19,6 +19,10 @@ module Keboola
19
19
  def pending?
20
20
  %w[waiting processing terminating].include?(status)
21
21
  end
22
+
23
+ def error?
24
+ %w[cancelled error terminated].include?(status)
25
+ end
22
26
  end
23
27
 
24
28
  end
@@ -1,5 +1,5 @@
1
1
  module Keboola
2
2
  module GoodDataWriter
3
- VERSION = "2.0.0.pre2"
3
+ VERSION = "2.0.0.pre3"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: keboola-gooddata-writer
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0.pre2
4
+ version: 2.0.0.pre3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Roman Sklenář
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-15 00:00:00.000000000 Z
11
+ date: 2015-12-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -168,7 +168,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
168
168
  version: 1.3.1
169
169
  requirements: []
170
170
  rubyforge_project:
171
- rubygems_version: 2.2.2
171
+ rubygems_version: 2.5.0
172
172
  signing_key:
173
173
  specification_version: 4
174
174
  summary: A convenient Ruby wrapper around the Keboola GoodData Writer API.