Module: Webspicy::Web::Client::Support
Constant Summary
collapse
- NONE =
Object.new
Instance Method Summary
collapse
colorize, colorize_error, colorize_highlight, colorize_section, colorize_success
Instance Method Details
#debug(what, value = NONE) ⇒ Object
28
29
30
31
|
# File 'lib/webspicy/web/client/support.rb', line 28
def debug(what, value = NONE)
return Webspicy.debug(" #{what}") if value == NONE
Webspicy.debug(" #{what}: " + value_to_s(value))
end
|
#debug_response(response) ⇒ Object
20
21
22
23
24
25
26
|
# File 'lib/webspicy/web/client/support.rb', line 20
def debug_response(response)
debug(colorize_highlight("."))
debug(" Res status", status_to_s(@last_response.status))
debug(" Res headers", json_pretty(last_response..to_h))
debug(" Res body", response_body_to_s(last_response))
Webspicy.debug("")
end
|
#info_request(kind, url, params, headers, body) ⇒ Object
13
14
15
16
17
18
|
# File 'lib/webspicy/web/client/support.rb', line 13
def info_request(kind, url, params, , body)
Webspicy.info(colorize_highlight("~> #{kind} #{url}"))
debug(" Req params", json_pretty(params)) if params
debug(" Req headers", json_pretty()) if
debug(" Req body", request_body_to_s(body)) if body
end
|
#json_pretty(s) ⇒ Object
58
59
60
|
# File 'lib/webspicy/web/client/support.rb', line 58
def json_pretty(s)
JSON.pretty_generate(s)
end
|
#querystring_params(params) ⇒ Object
9
10
11
|
# File 'lib/webspicy/web/client/support.rb', line 9
def querystring_params(params)
Hash[params.each_pair.map{|k,v| [k.to_s,v.to_s] }]
end
|
#request_body_to_s(body) ⇒ Object
33
34
35
36
|
# File 'lib/webspicy/web/client/support.rb', line 33
def request_body_to_s(body)
body = body.to_info if body.is_a?(Webspicy::FileUpload)
json_pretty(body)
end
|
#response_body_to_s(response) ⇒ Object
38
39
40
41
42
43
44
45
|
# File 'lib/webspicy/web/client/support.rb', line 38
def response_body_to_s(response)
case response.content_type.to_s
when /json/
json_pretty(JSON.load(response.body))
else
response.body.to_s
end
end
|
#status_to_s(status) ⇒ Object
51
52
53
54
55
56
|
# File 'lib/webspicy/web/client/support.rb', line 51
def status_to_s(status)
case status
when 0 ... 400 then colorize_success(status.to_s)
else colorize_error(status.to_s)
end
end
|
#value_to_s(value) ⇒ Object
47
48
49
|
# File 'lib/webspicy/web/client/support.rb', line 47
def value_to_s(value)
value.to_s.gsub(/\n/, "\n ")
end
|