class EventMachine::Response

Attributes

content[RW]
headers[RW]
status[RW]

Public Class Methods

new() click to toggle source
# File lib/appbooster-server/response.rb, line 8
def initialize
  @headers = {}
end

Public Instance Methods

content_type(type) click to toggle source
# File lib/appbooster-server/response.rb, line 18
def content_type type
  @headers["Content-type"] = type || 'text/plain'
end
send_response() click to toggle source
# File lib/appbooster-server/response.rb, line 12
def send_response
  send_headers
  send_body
  close_connection_after_writing
end

Private Instance Methods

add_headers(headers) click to toggle source
# File lib/appbooster-server/response.rb, line 38
def add_headers headers
  headers.map { |k, v| "#{k}: #{v}\r\n" }
end
send_body() click to toggle source
# File lib/appbooster-server/response.rb, line 34
def send_body
  send_data((@content || '').to_s)
end
send_headers() click to toggle source
# File lib/appbooster-server/response.rb, line 24
def send_headers
  @headers["Content-length"] = content.to_s.bytesize
  data = []
  data << "HTTP/1.1 #{@status || 200}\r\n"
  data += add_headers(@headers)
  data << "\r\n"

  send_data data.join
end