class Barrage
Constants
- VERSION
Attributes
generators[R]
Public Class Methods
new(options = {})
click to toggle source
generators:
- name: msec length: 40 start_at: 1396278000000 # 2014-04-01 00:00:00 +0900 (msec) - name: pid length: 16 - name: sequence length: 8
# File lib/barrage.rb, line 18 def initialize(options = {}) @options = options @lock = Mutex.new @generators = @options["generators"].map do |h| generator_name = h["name"] require "barrage/generators/#{generator_name}" "Barrage::Generators::#{generator_name.classify}".constantize.new(h) end end
Public Instance Methods
current()
click to toggle source
# File lib/barrage.rb, line 39 def current @lock.synchronize { shift_size = length @generators.inject(0) do |result, generator| shift_size = shift_size - generator.length result += generator.current << shift_size end } end
generate()
click to toggle source
# File lib/barrage.rb, line 28 def generate @lock.synchronize { shift_size = length @generators.inject(0) do |result, generator| shift_size = shift_size - generator.length result += generator.generate << shift_size end } end
Also aliased as: next
length()
click to toggle source
# File lib/barrage.rb, line 49 def length @generators.inject(0) {|sum, g| sum += g.length } end