Class: GaMeasurementProtocol::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/ga_measurement_protocol.rb

Overview

Your code goes hereā€¦

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(debug: false) ⇒ Client

Returns a new instance of Client.



9
10
11
12
13
14
15
16
17
18
19
# File 'lib/ga_measurement_protocol.rb', line 9

def initialize(debug: false)
  @debug = debug
  url =
    'https://www.google-analytics.com'

  @conn = Faraday.new(url: url) do |faraday|
    faraday.request  :url_encoded             # form-encode POST params
    faraday.response :logger                  # log requests to STDOUT
    faraday.adapter  Faraday.default_adapter  # make requests with Net::HTTP
  end
end

Instance Attribute Details

#connObject (readonly)

Returns the value of attribute conn.



8
9
10
# File 'lib/ga_measurement_protocol.rb', line 8

def conn
  @conn
end

Instance Method Details

#debug?Boolean

Returns:

  • (Boolean)


30
31
32
# File 'lib/ga_measurement_protocol.rb', line 30

def debug?
  @debug
end

#post(request) ⇒ Object



21
22
23
24
25
26
27
28
# File 'lib/ga_measurement_protocol.rb', line 21

def post(request)
  url = if debug?
          '/debug/collect'
        else
          '/collect'
        end
  JSON.parse(conn.post(url, request).body)
end