tickethub 0.3.4 → 0.3.6
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/lib/tickethub/exceptions.rb +0 -6
- data/lib/tickethub/request.rb +17 -1
- data/lib/tickethub/supplier/booking/ticket.rb +5 -0
- data/lib/tickethub/supplier/scan.rb +2 -2
- data/lib/tickethub/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0129a4017c1ad6b4640a0b55ca6d59a3bc5db87f
|
4
|
+
data.tar.gz: c14dc2b3470525f5781706c3cc75c6d23b101088
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 845941d4a3421c5285fe415fdc3277d3a66b442ff58e06167e336beffb5daadd21c6a76802306c3de7b9300be49b222b91cecd4540c87d068573f724e8044318
|
7
|
+
data.tar.gz: af123871cbd0e2fd92ca975ed6d01af612c374c1fae90c9549c3225af61ac68db60fc13a5ea4858d3b67a60a390864a1aa5e83c1afe7ebb44c46a879dcfabb6e
|
data/lib/tickethub/exceptions.rb
CHANGED
@@ -52,12 +52,6 @@ module Tickethub
|
|
52
52
|
# 404 Not Found
|
53
53
|
class ResourceNotFound < ClientError; end # :nodoc:
|
54
54
|
|
55
|
-
# 409 Conflict
|
56
|
-
class ResourceConflict < ClientError; end # :nodoc:
|
57
|
-
|
58
|
-
# 410 Gone
|
59
|
-
class ResourceGone < ClientError; end # :nodoc:
|
60
|
-
|
61
55
|
# 422 Invalid
|
62
56
|
class ResourceInvalid < ClientError; end # :nodoc:
|
63
57
|
|
data/lib/tickethub/request.rb
CHANGED
@@ -1,5 +1,12 @@
|
|
1
|
+
require 'securerandom'
|
2
|
+
|
1
3
|
module Tickethub
|
2
4
|
class Request
|
5
|
+
|
6
|
+
SAFE_TO_RETRY = [408, 502, 503, 504].freeze
|
7
|
+
MAXIMUM_RETRIES = 6.freeze
|
8
|
+
DEFAULT_TIMEOUT = 5.freeze
|
9
|
+
|
3
10
|
attr_reader :options, :format, :url
|
4
11
|
attr_accessor :params, :body, :method, :headers
|
5
12
|
|
@@ -7,7 +14,8 @@ module Tickethub
|
|
7
14
|
attr_accessor :proxy, :user, :password, :auth_type, :timeout, :ssl_options
|
8
15
|
|
9
16
|
def initialize(url, options = {})
|
10
|
-
@url
|
17
|
+
@url = url.to_s
|
18
|
+
@id = SecureRandom.uuid
|
11
19
|
|
12
20
|
@options = options
|
13
21
|
@options.each do |key, val|
|
@@ -15,6 +23,7 @@ module Tickethub
|
|
15
23
|
send(method, val) if respond_to?(method)
|
16
24
|
end
|
17
25
|
|
26
|
+
self.timeout ||= DEFAULT_TIMEOUT
|
18
27
|
self.method ||= :get
|
19
28
|
self.params ||= {}
|
20
29
|
self.headers ||= {}
|
@@ -61,6 +70,12 @@ module Tickethub
|
|
61
70
|
|
62
71
|
Response.new(result)
|
63
72
|
|
73
|
+
rescue TimeoutError => err
|
74
|
+
raise if retries == MAXIMUM_RETRIES - 1
|
75
|
+
execute retries + 1
|
76
|
+
rescue ConnectionError => err
|
77
|
+
raise if ! SAFE_TO_RETRY.member?(err.response.code) || retries == MAXIMUM_RETRIES - 1
|
78
|
+
execute retries + 1
|
64
79
|
rescue Redirection => error
|
65
80
|
raise error unless error.response['Location']
|
66
81
|
|
@@ -107,6 +122,7 @@ module Tickethub
|
|
107
122
|
auth_headers
|
108
123
|
.merge(content_type_headers)
|
109
124
|
.merge(headers)
|
125
|
+
.merge('X-Request-ID' => @id)
|
110
126
|
end
|
111
127
|
|
112
128
|
def query_path
|
@@ -5,8 +5,13 @@ module Tickethub
|
|
5
5
|
polymorphic 'ticket'
|
6
6
|
|
7
7
|
require_relative '../ticket'
|
8
|
+
require_relative '../tier'
|
9
|
+
require_relative '../scan'
|
8
10
|
|
9
11
|
collection :tickets, Supplier::Ticket
|
12
|
+
collection :tiers, Supplier::Tier
|
13
|
+
collection :scans, Supplier::Scan
|
14
|
+
|
10
15
|
attribute :valid_from, type: :datetime
|
11
16
|
end
|
12
17
|
end
|
@@ -4,10 +4,10 @@ module Tickethub
|
|
4
4
|
class Supplier::Scan < Resource
|
5
5
|
path '/supplier/scans'
|
6
6
|
|
7
|
-
require_relative '
|
7
|
+
require_relative 'ticket'
|
8
8
|
require_relative 'user'
|
9
9
|
|
10
|
-
|
10
|
+
collection :tickets, Supplier::Ticket
|
11
11
|
association :user, Supplier::User
|
12
12
|
|
13
13
|
attribute :at, type: :datetime
|
data/lib/tickethub/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tickethub
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Oliver Morgan
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-03-
|
11
|
+
date: 2015-03-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|