Module: Tea
- Defined in:
- lib/tea_core.rb
Overview
Defined Under Namespace
Classes: Error, Model, RetryError, UnableRetryError
Constant Summary
collapse
- VERSION =
'0.0.1'
Class Method Summary
collapse
Class Method Details
.allow_retry(_retry_policy, retry_times, _now) ⇒ Object
11
12
13
14
15
16
|
# File 'lib/tea_core.rb', line 11
def allow_retry(_retry_policy, retry_times, _now)
return false if retry_times > 2
true
end
|
.do_request(request) ⇒ Object
99
100
101
102
103
104
105
106
107
|
# File 'lib/tea_core.rb', line 99
def do_request(request)
uri = to_uri(request)
case request['method'].downcase || 'get'
when 'get'
return Net::HTTP.get_response(uri)
else
puts 'default'
end
end
|
.get_backoff_time(_policy, _times) ⇒ Object
71
72
73
|
# File 'lib/tea_core.rb', line 71
def get_backoff_time(_policy, _times)
0
end
|
.retryable?(err) ⇒ Boolean
63
64
65
|
# File 'lib/tea_core.rb', line 63
def retryable?(err)
err.instance_of?(RetryError)
end
|
.to_uri(req) ⇒ Object
87
88
89
90
91
92
93
94
95
96
97
|
# File 'lib/tea_core.rb', line 87
def to_uri(req)
type = req['protocol'] == 'https' ? URI::HTTPS : URI::HTTP
uri = type.build(
host: req['headers']['host'],
path: req['pathname'],
query: URI.encode_www_form(req['query']),
fragment: ''
)
uri.port = req['port'] if req['port']
uri
end
|
.unable_retry_error(request) ⇒ Object
67
68
69
|
# File 'lib/tea_core.rb', line 67
def unable_retry_error(request)
end
|