Class: Jabber::IdGenerator
- Inherits:
-
Object
- Object
- Jabber::IdGenerator
- Includes:
- Singleton
- Defined in:
- lib/vendor/xmpp4r/lib/xmpp4r/idgenerator.rb
Overview
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"
Class Method Summary collapse
-
.generate_id ⇒ Object
Generate an unique ID.
Instance Method Summary collapse
- #generate_id ⇒ Object
-
#initialize ⇒ IdGenerator
constructor
A new instance of IdGenerator.
Constructor Details
#initialize ⇒ IdGenerator
Returns a new instance of IdGenerator.
17 18 19 |
# File 'lib/vendor/xmpp4r/lib/xmpp4r/idgenerator.rb', line 17 def initialize @last_id = 0 end |
Class Method Details
.generate_id ⇒ Object
Generate an unique ID.
This is kind of boring this way, as it just counts up a number. Maybe something more random somewhen…
26 27 28 |
# File 'lib/vendor/xmpp4r/lib/xmpp4r/idgenerator.rb', line 26 def IdGenerator.generate_id IdGenerator.instance.generate_id end |
Instance Method Details
#generate_id ⇒ Object
30 31 32 33 34 35 |
# File 'lib/vendor/xmpp4r/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 |