class Vines::Cluster::StreamProxy
StreamProxy
behaves like an EM::Connection so that stanzas may be sent to remote nodes just as they are to locally connected streams. The rest of the system doesn't know or care that these “streams” send their traffic over redis pubsub channels.
Attributes
user[R]
Public Class Methods
new(cluster, session)
click to toggle source
# File lib/vines/cluster.rb, line 206 def initialize(cluster, session) @cluster, @user = cluster, UserProxy.new(cluster, session) @node, @available, @interested, @presence = session.values_at('node', 'available', 'interested', 'presence') unless @presence.nil? || @presence.empty? @presence = Nokogiri::XML(@presence).root rescue nil end end
Public Instance Methods
available?()
click to toggle source
# File lib/vines/cluster.rb, line 216 def available? @available end
interested?()
click to toggle source
# File lib/vines/cluster.rb, line 220 def interested? @interested end
last_broadcast_presence()
click to toggle source
# File lib/vines/cluster.rb, line 224 def last_broadcast_presence @presence end
write(stanza)
click to toggle source
# File lib/vines/cluster.rb, line 228 def write(stanza) @cluster.route(stanza, @node) end