Module: Hub::GitHubAPI::Verbose
- Included in:
- Hub::GitHubAPI
- Defined in:
- lib/hub/github_api.rb
Constant Summary collapse
- DUMP_HEADERS =
%w[ Authorization X-GitHub-OTP Location ]
Instance Method Summary collapse
- #dump_body(obj) ⇒ Object
- #dump_headers(obj, indent) ⇒ Object
- #dump_request_info(req, url) ⇒ Object
- #dump_response_info(res) ⇒ Object
- #finalize_request(req, url) ⇒ Object
- #perform_request ⇒ Object
- #verbose_puts(msg) ⇒ Object
Instance Method Details
#dump_body(obj) ⇒ Object
386 387 388 |
# File 'lib/hub/github_api.rb', line 386 def dump_body(obj) verbose_puts obj.body if obj.body end |
#dump_headers(obj, indent) ⇒ Object
392 393 394 395 396 397 398 399 400 401 402 |
# File 'lib/hub/github_api.rb', line 392 def dump_headers(obj, indent) DUMP_HEADERS.each do |header| if value = obj[header] verbose_puts '%s%s: %s' % [ indent, header, value.sub(/^(basic|token) (.+)/i, '\1 [REDACTED]'), ] end end end |
#dump_request_info(req, url) ⇒ Object
369 370 371 372 373 374 375 376 377 378 |
# File 'lib/hub/github_api.rb', line 369 def dump_request_info(req, url) verbose_puts "> %s %s://%s%s" % [ req.method.to_s.upcase, url.scheme, url.host, req.path, ] dump_headers(req, '> ') dump_body(req) end |
#dump_response_info(res) ⇒ Object
380 381 382 383 384 |
# File 'lib/hub/github_api.rb', line 380 def dump_response_info(res) verbose_puts "< HTTP %s" % res.status dump_headers(res, '< ') dump_body(res) end |
#finalize_request(req, url) ⇒ Object
353 354 355 356 |
# File 'lib/hub/github_api.rb', line 353 def finalize_request(req, url) super dump_request_info(req, url) if verbose? end |
#perform_request ⇒ Object
358 359 360 361 362 |
# File 'lib/hub/github_api.rb', line 358 def perform_request(*) res = super dump_response_info(res) if verbose? res end |
#verbose_puts(msg) ⇒ Object
364 365 366 367 |
# File 'lib/hub/github_api.rb', line 364 def verbose_puts(msg) msg = "\e[36m%s\e[m" % msg if $stderr.tty? $stderr.puts msg end |