class Jabber::IdGenerator

The Jabber::IdGenerator class generates unique IDs for use in XMMP stanzas. Jabber::IdGenerator includes the Singleton Mixin, usage as following:

Jabber::IdGenerator.generate_id
  => "23"

Public Class Methods

generate_id() click to toggle source

Generate an unique ID.

This is kind of boring this way, as it just counts up a number. Maybe something more random somewhen…

# File lib/xmpp4r/idgenerator.rb, line 26
def IdGenerator.generate_id
  IdGenerator.instance.generate_id
end
new() click to toggle source
# File lib/xmpp4r/idgenerator.rb, line 17
def initialize
  @last_id = 0
end

Public Instance Methods

generate_id() click to toggle source
# File lib/xmpp4r/idgenerator.rb, line 30
def generate_id
  @last_id += 1
  timefrac = Time.new.to_f.to_s.split(/\./, 2).last[-3..-1]

  "#{@last_id}#{timefrac}"
end