class ConnectClient::Http::NetHttp

Public Class Methods

new(base_url, headers) click to toggle source
# File lib/connect_client/http/event_endpoint.rb, line 41
def initialize(base_url, headers)
  require 'uri'
  require 'net/http'
  require 'net/https'
  
  @headers = headers
  @connect_uri = URI.parse(base_url)
  @http = Net::HTTP.new(@connect_uri.host, @connect_uri.port)
  setup_ssl if @connect_uri.scheme == 'https'
end

Public Instance Methods

push_events(path, body, events) click to toggle source
# File lib/connect_client/http/event_endpoint.rb, line 52
def push_events(path, body, events)
  response = @http.post(path, body, @headers)
  ConnectClient::EventPushResponse.new response.code, response['Content-Type'], response.body, events
end

Private Instance Methods

setup_ssl() click to toggle source
# File lib/connect_client/http/event_endpoint.rb, line 59
def setup_ssl
  root_ca = "#{ConnectClient::gem_root}/data/cacert.pem"
  standard_depth = 5

  @http.use_ssl = true
  @http.verify_mode = OpenSSL::SSL::VERIFY_PEER
  @http.verify_depth = standard_depth
  @http.ca_file = root_ca
end