Class: ProxyReverse::FrontendRequest
- Inherits:
-
Object
- Object
- ProxyReverse::FrontendRequest
- Defined in:
- lib/proxyreverse/frontendrequest.rb
Instance Attribute Summary collapse
-
#host ⇒ Object
Returns the value of attribute host.
Instance Method Summary collapse
- #complete? ⇒ Boolean
-
#initialize(client) ⇒ FrontendRequest
constructor
A new instance of FrontendRequest.
- #on_body(chunk) ⇒ Object
- #on_headers_complete(env) ⇒ Object
- #on_message_begin ⇒ Object
- #on_message_complete ⇒ Object
- #receive_data(data) ⇒ Object
Constructor Details
#initialize(client) ⇒ FrontendRequest
Returns a new instance of FrontendRequest.
5 6 7 8 |
# File 'lib/proxyreverse/frontendrequest.rb', line 5 def initialize(client) @parser = HTTP::RequestParser.new(self) @client = client end |
Instance Attribute Details
#host ⇒ Object
Returns the value of attribute host.
3 4 5 |
# File 'lib/proxyreverse/frontendrequest.rb', line 3 def host @host end |
Instance Method Details
#complete? ⇒ Boolean
50 51 52 |
# File 'lib/proxyreverse/frontendrequest.rb', line 50 def complete? @complete end |
#on_body(chunk) ⇒ Object
42 43 44 |
# File 'lib/proxyreverse/frontendrequest.rb', line 42 def on_body(chunk) @client.relay_to_servers(chunk) end |
#on_headers_complete(env) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/proxyreverse/frontendrequest.rb', line 20 def on_headers_complete(env) @headers = @parser.headers @host = @headers['Host'] @transferEncoding = 'identity' if @client.[:rewrite_domain] @headers['Host'] = @client.[:backend_host] end if @headers.has_key?('Transfer-Encoding') @transferEncoding = @headers['Transfer-Encoding'] end buf = "#{@parser.http_method} #{@parser.request_path} HTTP/#{@parser.http_version.join('.')}\r\n" @headers.each_pair do |name, value| buf << "#{name}: #{value}\r\n" end buf << "\r\n" @client.relay_to_servers(buf) end |
#on_message_begin ⇒ Object
14 15 16 17 18 |
# File 'lib/proxyreverse/frontendrequest.rb', line 14 def @headers = nil @body = '' @complete = false end |
#on_message_complete ⇒ Object
46 47 48 |
# File 'lib/proxyreverse/frontendrequest.rb', line 46 def @complete = true end |
#receive_data(data) ⇒ Object
10 11 12 |
# File 'lib/proxyreverse/frontendrequest.rb', line 10 def receive_data(data) @parser << data end |