Class: Garb::Report

Inherits:
Object
  • Object
show all
Includes:
Garb::Resource::ResourceMethods
Defined in:
lib/garb/report.rb

Constant Summary collapse

MONTH =
2592000
URL =
"https://www.google.com/analytics/feeds/data"

Instance Method Summary collapse

Methods included from Garb::Resource::ResourceMethods

#default_params, #dimensions, #filter, #filters, #format_time, #metrics, #page_params, #params, #send_request_for_body, #sort, #sorts

Constructor Details

#initialize(profile, opts = {}) ⇒ Report

Returns a new instance of Report.



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/garb/report.rb', line 8

def initialize(profile, opts={})
  @profile = profile

  @start_date = opts.fetch(:start_date, Time.now - MONTH)
  @end_date = opts.fetch(:end_date, Time.now)
  @limit = opts.fetch(:limit, nil)
  @offset = opts.fetch(:offset, nil)

  # clear filters and sort
  @filters = ReportParameter.new(:filters)
  @sorts = ReportParameter.new(:sort)

  metrics opts.fetch(:metrics, [])
  dimensions opts.fetch(:dimensions, [])
  filter opts.fetch(:filter, [])
  sort opts.fetch(:sort, [])
end

Instance Method Details

#resultsObject



26
27
28
# File 'lib/garb/report.rb', line 26

def results
  ReportResponse.new(send_request_for_body(@profile.email)).results
end