Class: Protocol::HTTP::Response
- Inherits:
-
Object
- Object
- Protocol::HTTP::Response
show all
- Includes:
- Body::Reader
- Defined in:
- lib/protocol/http/response.rb
Instance Attribute Summary collapse
Class Method Summary
collapse
Instance Method Summary
collapse
#body?, #close, #each, #finish, #read, #save
Constructor Details
#initialize(version = nil, status = 200, headers = [], body = nil, protocol = nil) ⇒ Response
Returns a new instance of Response.
31
32
33
34
35
36
37
|
# File 'lib/protocol/http/response.rb', line 31
def initialize(version = nil, status = 200, = [], body = nil, protocol = nil)
@version = version
@status = status
=
@body = body
@protocol = protocol
end
|
Instance Attribute Details
#body ⇒ Object
Returns the value of attribute body.
42
43
44
|
# File 'lib/protocol/http/response.rb', line 42
def body
@body
end
|
Returns the value of attribute headers.
41
42
43
|
# File 'lib/protocol/http/response.rb', line 41
def
end
|
#protocol ⇒ Object
Returns the value of attribute protocol.
43
44
45
|
# File 'lib/protocol/http/response.rb', line 43
def protocol
@protocol
end
|
#status ⇒ Object
Returns the value of attribute status.
40
41
42
|
# File 'lib/protocol/http/response.rb', line 40
def status
@status
end
|
#version ⇒ Object
Returns the value of attribute version.
39
40
41
|
# File 'lib/protocol/http/response.rb', line 39
def version
@version
end
|
Class Method Details
.[](status, headers = [], body = nil, protocol = nil) ⇒ Object
91
92
93
94
95
|
# File 'lib/protocol/http/response.rb', line 91
def self.[](status, = [], body = nil, protocol = nil)
body = Body::Buffered.wrap(body)
self.new(nil, status, , body, protocol)
end
|
.for_exception(exception) ⇒ Object
97
98
99
|
# File 'lib/protocol/http/response.rb', line 97
def self.for_exception(exception)
Response[500, ['content-type' => 'text/plain'], ["#{exception.class}: #{exception.message}"]]
end
|
Instance Method Details
#bad_request? ⇒ Boolean
83
84
85
|
# File 'lib/protocol/http/response.rb', line 83
def bad_request?
@status == 400
end
|
#continue? ⇒ Boolean
55
56
57
|
# File 'lib/protocol/http/response.rb', line 55
def continue?
@status == 100
end
|
#failure? ⇒ Boolean
79
80
81
|
# File 'lib/protocol/http/response.rb', line 79
def failure?
@status and @status >= 400 && @status < 600
end
|
#hijack? ⇒ Boolean
51
52
53
|
# File 'lib/protocol/http/response.rb', line 51
def hijack?
false
end
|
#not_modified? ⇒ Boolean
71
72
73
|
# File 'lib/protocol/http/response.rb', line 71
def not_modified?
@status == 304
end
|
#partial? ⇒ Boolean
63
64
65
|
# File 'lib/protocol/http/response.rb', line 63
def partial?
@status == 206
end
|
#preserve_method? ⇒ Boolean
75
76
77
|
# File 'lib/protocol/http/response.rb', line 75
def preserve_method?
@status == 307 || @status == 308
end
|
#redirection? ⇒ Boolean
67
68
69
|
# File 'lib/protocol/http/response.rb', line 67
def redirection?
@status and @status >= 300 && @status < 400
end
|
#server_failure? ⇒ Boolean
87
88
89
|
# File 'lib/protocol/http/response.rb', line 87
def server_failure?
@status == 500
end
|
#success? ⇒ Boolean
59
60
61
|
# File 'lib/protocol/http/response.rb', line 59
def success?
@status and @status >= 200 && @status < 300
end
|
#to_ary ⇒ Object
105
106
107
|
# File 'lib/protocol/http/response.rb', line 105
def to_ary
return @status, , @body
end
|
#to_s ⇒ Object
101
102
103
|
# File 'lib/protocol/http/response.rb', line 101
def to_s
"#{@status} #{@version}"
end
|
#trailers ⇒ Object
45
46
47
48
49
|
# File 'lib/protocol/http/response.rb', line 45
def trailers
if .respond_to?(:trailers)
.trailers
end
end
|