Class: WiseOMF::Client::ExperimentHelper

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

Overview

The ExperimentHelper offers helper methods for the experiment.

Constant Summary collapse

@@random =
Random.new
@@uid_cache =
LRUCache.new(ttl: 30.minutes)

Class Method Summary collapse

Class Method Details

.messageUIDInteger

Create an unique message id NOTE: Message ids are guaranteed to be unique within 30 minutes.

Returns:

  • (Integer)

    an integer which can be used as messageUID. This integer is guaranteed to be unique within 30 minutes.



19
20
21
22
23
24
25
26
27
# File 'lib/wise_omf/client.rb', line 19

def self.messageUID
  uid = -1
  while true
    uid = @@random.rand(2**32)
    break if @@uid_cache.fetch(uid).nil?
  end
  @@uid_cache.store(uid, 1)
  return uid
end