Class: Google::Resourcemanager::Network::Base
- Inherits:
-
Object
- Object
- Google::Resourcemanager::Network::Base
- Defined in:
- lib/google/resourcemanager/network/base.rb
Overview
A handler for authenticated network request
Instance Method Summary collapse
- #builder ⇒ Object
-
#initialize(link, cred) ⇒ Base
constructor
A new instance of Base.
- #send ⇒ Object
- #transport(request) ⇒ Object
Constructor Details
#initialize(link, cred) ⇒ Base
Returns a new instance of Base.
36 37 38 39 |
# File 'lib/google/resourcemanager/network/base.rb', line 36 def initialize(link, cred) @link = link @cred = cred end |
Instance Method Details
#builder ⇒ Object
41 42 43 |
# File 'lib/google/resourcemanager/network/base.rb', line 41 def builder Net::HTTP.const_get(self.class.name.split('::').last) end |
#send ⇒ Object
45 46 47 48 49 50 51 52 53 54 |
# File 'lib/google/resourcemanager/network/base.rb', line 45 def send request = @cred.(builder.new(@link)) request['User-Agent'] = generate_user_agent response = transport(request).request(request) unless ENV['GOOGLE_HTTP_VERBOSE'].nil? puts ["network(#{request}: [#{response.code}]", response.body.split("\n").map(&:strip).join(' ')].join(' ') end response end |
#transport(request) ⇒ Object
56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/google/resourcemanager/network/base.rb', line 56 def transport(request) uri = request.uri puts "network(#{request}: #{uri})" \ unless ENV['GOOGLE_HTTP_VERBOSE'].nil? transport = Net::HTTP.new(uri.host, uri.port) transport.use_ssl = uri.is_a?(URI::HTTPS) transport.verify_mode = OpenSSL::SSL::VERIFY_PEER transport.set_debug_output $stderr \ unless ENV['GOOGLE_HTTP_DEBUG'].nil? transport end |