Class: Charger::Event

Inherits:
Object
  • Object
show all
Includes:
Resource
Defined in:
lib/charger/event.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.all(params = {}) ⇒ Array<Event>

Grabs ALL of the events. Note this is a LONG running task especially if your account has a lot of events. You can shorten it up by passing in some optional parameters.

Parameters Available:

* per_page
* since_id
* max_id
* direction - default is `desc`

Parameters:

  • params (Hash) (defaults to: {})

Returns:



34
35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/charger/event.rb', line 34

def self.all params={}
  params = { per_page: 200, direction: 'desc' }.merge(params)
  events = []
  num = 1
  loop do
    params[:page] = num
    response = page(params)
    break if response.empty?
    num += 1
    events += response
    puts num
  end
  events
end

.find_by_subscription_id(sub, params = {}) ⇒ Object



66
67
68
69
70
71
72
73
# File 'lib/charger/event.rb', line 66

def self.find_by_subscription_id sub, params={}
  params = { per_page: 200, direction: 'desc' }.merge(params)
  events = []
  client.get("subscriptions/#{sub}/events", params).each do |data|
    events << new(data['event'])
  end
  events
end

.page(params = {}) ⇒ Object

Gets a single page of events Parameters available:

* page
* per_page
* since_id
* max_id
* direction - `asc` and `desc` are valid

Parameters:

  • params (Hash) (defaults to: {})


57
58
59
60
61
62
63
64
# File 'lib/charger/event.rb', line 57

def self.page params={}
  params = { page: 1, per_page: 25, direction: 'desc' }.merge(params)
  events = []
  client.get('events', params: params).each do |data|
    events << new(data['event'])
  end
  events
end

Instance Method Details

#subscription(force = false) ⇒ Object



13
14
15
16
# File 'lib/charger/event.rb', line 13

def subscription force=false
  @subscription = nil if force
  @subscription ||= Subscription.find(subscription_id)
end

#subscription=(val) ⇒ Object



18
19
20
# File 'lib/charger/event.rb', line 18

def subscription= val
  @subscription = val
end