Class: ApplicationInsights::Channel::Contracts::Session

Inherits:
JsonSerializable show all
Defined in:
lib/application_insights/channel/contracts/session.rb

Overview

Data contract class for type Session.

Instance Method Summary collapse

Methods inherited from JsonSerializable

#to_h, #to_json

Constructor Details

#initialize(options = {}) ⇒ Session

Initializes a new instance of the Session class.



9
10
11
12
13
14
15
16
17
18
# File 'lib/application_insights/channel/contracts/session.rb', line 9

def initialize(options={})
  defaults = {
    'ai.session.id' => nil,
    'ai.session.isFirst' => nil,
    'ai.session.isNew' => nil
  }
  values = {
  }
  super defaults, values, options
end

Instance Method Details

#idObject

Gets the id property.



21
22
23
24
25
# File 'lib/application_insights/channel/contracts/session.rb', line 21

def id
  @values.fetch('ai.session.id') { 
    @values['ai.session.id'] = nil
  }
end

#id=(value) ⇒ Object

Sets the id property.



28
29
30
31
32
33
34
# File 'lib/application_insights/channel/contracts/session.rb', line 28

def id=(value)
  if value == @defaults['ai.session.id']
    @values.delete 'ai.session.id' if @values.key? 'ai.session.id'
  else
    @values['ai.session.id'] = value
  end
end

#is_firstObject

Gets the is_first property.



37
38
39
40
41
# File 'lib/application_insights/channel/contracts/session.rb', line 37

def is_first
  @values.fetch('ai.session.isFirst') { 
    @values['ai.session.isFirst'] = nil
  }
end

#is_first=(value) ⇒ Object

Sets the is_first property.



44
45
46
47
48
49
50
# File 'lib/application_insights/channel/contracts/session.rb', line 44

def is_first=(value)
  if value == @defaults['ai.session.isFirst']
    @values.delete 'ai.session.isFirst' if @values.key? 'ai.session.isFirst'
  else
    @values['ai.session.isFirst'] = value
  end
end

#is_newObject

Gets the is_new property.



53
54
55
56
57
# File 'lib/application_insights/channel/contracts/session.rb', line 53

def is_new
  @values.fetch('ai.session.isNew') { 
    @values['ai.session.isNew'] = nil
  }
end

#is_new=(value) ⇒ Object

Sets the is_new property.



60
61
62
63
64
65
66
# File 'lib/application_insights/channel/contracts/session.rb', line 60

def is_new=(value)
  if value == @defaults['ai.session.isNew']
    @values.delete 'ai.session.isNew' if @values.key? 'ai.session.isNew'
  else
    @values['ai.session.isNew'] = value
  end
end