Class: RocketIO::Response

Inherits:
Rack::Response
  • Object
show all
Defined in:
lib/rocketio/controller/response.rb

Instance Method Summary collapse

Instance Method Details

#body=(value) ⇒ Object



29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/rocketio/controller/response.rb', line 29

def body= value
  @body = case value
  when Rack::Response
    value.body
  when Proc
    def value.each; yield(call) end
    value
  when String
    [value]
  else
    value
  end
end

#eachObject



47
48
49
# File 'lib/rocketio/controller/response.rb', line 47

def each
  block_given? ? super : enum_for(:each)
end

#empty_body?Boolean

Returns:

  • (Boolean)


43
44
45
# File 'lib/rocketio/controller/response.rb', line 43

def empty_body?
  @body == EMPTY_ARRAY || @body.nil?
end

#finishObject



51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# File 'lib/rocketio/controller/response.rb', line 51

def finish
  headers[CONTENT_TYPE] ||= DEFAULT_CONTENT_TYPE

  if 
    headers.delete(CONTENT_LENGTH)
    headers.delete(CONTENT_TYPE)
  end

  if drop_body?
    close
    self.body = EMPTY_ARRAY
  end

  [status.to_i, headers, self.body]
end

#not_modified?Boolean

Returns:

  • (Boolean)


71
72
73
# File 'lib/rocketio/controller/response.rb', line 71

def not_modified?
  status.to_i == 304
end

#precondition_failed?Boolean

Returns:

  • (Boolean)


67
68
69
# File 'lib/rocketio/controller/response.rb', line 67

def precondition_failed?
  status.to_i == 412
end