Method: Excon::Middleware::Hijack#build_response

Defined in:
lib/excon/middlewares/hijack.rb

#build_response(status, socket) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/excon/middlewares/hijack.rb', line 9

def build_response(status, socket)
  response = {
    :body          => '',
    :headers       => Excon::Headers.new,
    :status        => status,
    :remote_ip     => socket.respond_to?(:remote_ip) &&
                      socket.remote_ip,
  }
  if socket.data[:scheme] =~ /^(https?|tcp)$/
    response.merge({
      :local_port    => socket.respond_to?(:local_port) &&
                        socket.local_port,
      :local_address => socket.respond_to?(:local_address) &&
                        socket.local_address
    })
  end
  response
end