module Faye
Constants
- BAYEUX_VERSION
- CONNECTION_TYPES
- JSONP_CALLBACK
- MANDATORY_CONNECTION_TYPES
- ROOT
- VERSION
Attributes
logger[RW]
Public Class Methods
async_each(list, iterator, callback)
click to toggle source
# File lib/faye.rb, line 95 def self.async_each(list, iterator, callback) n = list.size i = -1 calls = 0 looping = false loop, resume = nil, nil iterate = lambda do calls -= 1 i += 1 if i == n callback.call if callback else iterator.call(list[i], resume) end end loop = lambda do unless looping looping = true iterate.call while calls > 0 looping = false end end resume = lambda do calls += 1 loop.call end resume.call end
client_id_from_messages(messages)
click to toggle source
# File lib/faye.rb, line 63 def self.client_id_from_messages(messages) first = [messages].flatten.find { |m| m['channel'] == '/meta/connect' } first && first['clientId'] end
copy_object(object)
click to toggle source
# File lib/faye.rb, line 68 def self.copy_object(object) case object when Hash clone = {} object.each { |k,v| clone[k] = copy_object(v) } clone when Array clone = [] object.each { |v| clone << copy_object(v) } clone else object end end
ensure_reactor_running!()
click to toggle source
# File lib/faye.rb, line 55 def self.ensure_reactor_running! Engine.ensure_reactor_running! end
parse_url(url)
click to toggle source
# File lib/faye.rb, line 83 def self.parse_url(url) String === url ? URI.parse(url) : url end
random(*args)
click to toggle source
# File lib/faye.rb, line 59 def self.random(*args) Engine.random(*args) end
to_json(value)
click to toggle source
# File lib/faye.rb, line 87 def self.to_json(value) case value when Hash, Array then MultiJson.dump(value) when String, NilClass then value.inspect else value.to_s end end