class Docomoru::ResponseRenderer
Public Class Methods
new(response, show_header: nil, show_body: nil)
click to toggle source
# File lib/docomoru/response_renderer.rb, line 6 def initialize(response, show_header: nil, show_body: nil) @response = response @show_body = show_body @show_header = show_header end
Public Instance Methods
to_s()
click to toggle source
# File lib/docomoru/response_renderer.rb, line 12 def to_s template % { status: status, headers: headers, body: body, } end
Private Instance Methods
body()
click to toggle source
# File lib/docomoru/response_renderer.rb, line 22 def body JSON.pretty_generate(@response.body) + "\n" end
headers()
click to toggle source
# File lib/docomoru/response_renderer.rb, line 26 def headers @response.headers.sort_by do |key, value| key end.map do |key, value| "%{key}: %{value}" % { key: key.split("-").map(&:camelize).join("-"), value: value, } end.join("\n") end
status()
click to toggle source
# File lib/docomoru/response_renderer.rb, line 37 def status "#{@response.status} #{@response.status_message}" end
template()
click to toggle source
# File lib/docomoru/response_renderer.rb, line 41 def template str = "" str << <<-EOS.strip_heredoc if @show_header HTTP/1.1 %{status} %{headers} EOS if @show_body str << "\n" if @show_header str << "%{body}" end str end