class MessageBus::Message
Attributes
client_ids[RW]
group_ids[RW]
site_id[RW]
user_ids[RW]
Public Class Methods
decode(encoded)
click to toggle source
# File lib/message_bus/message.rb, line 5 def self.decode(encoded) s1 = encoded.index("|") s2 = encoded.index("|", s1+1) s3 = encoded.index("|", s2+1) MessageBus::Message.new(encoded[0..s1].to_i, encoded[s1+1..s2].to_i, encoded[s2+1..s3-1].gsub("$$123$$", "|"), encoded[s3+1..-1]) end
Public Instance Methods
encode()
click to toggle source
only tricky thing to encode is pipes in a channel name … do a straight replace
# File lib/message_bus/message.rb, line 15 def encode global_id.to_s << "|" << message_id.to_s << "|" << channel.gsub("|","$$123$$") << "|" << data end