Class: AmplitudeAnalytics::Amplitude

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

Overview

Amplitude

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(api_key, configuration: nil) ⇒ Amplitude

Returns a new instance of Amplitude.



6
7
8
9
10
11
12
13
14
# File 'lib/amplitude/client.rb', line 6

def initialize(api_key, configuration: nil)
  @configuration = configuration || Config.new
  @configuration.api_key = api_key
  @timeline = Timeline.new
  @timeline.setup(self)
  add(AmplitudeDestinationPlugin.new)
  add(ContextPlugin.new)
  register_on_exit
end

Instance Attribute Details

#configurationObject (readonly)

Returns the value of attribute configuration.



4
5
6
# File 'lib/amplitude/client.rb', line 4

def configuration
  @configuration
end

Instance Method Details

#add(plugin) ⇒ Object



24
25
26
27
28
# File 'lib/amplitude/client.rb', line 24

def add(plugin)
  @timeline.add(plugin)
  plugin.setup(self)
  self
end

#flushObject



20
21
22
# File 'lib/amplitude/client.rb', line 20

def flush
  @timeline.flush
end

#remove(plugin) ⇒ Object



30
31
32
33
# File 'lib/amplitude/client.rb', line 30

def remove(plugin)
  @timeline.remove(plugin)
  self
end

#shutdownObject



35
36
37
38
# File 'lib/amplitude/client.rb', line 35

def shutdown
  @configuration.opt_out = true
  @timeline.shutdown
end

#track(event) ⇒ Object



16
17
18
# File 'lib/amplitude/client.rb', line 16

def track(event)
  @timeline.process(event)
end