Class: MessageBus::Message
- Inherits:
-
Struct
- Object
- Struct
- MessageBus::Message
- Defined in:
- lib/message_bus/message.rb
Instance Attribute Summary collapse
-
#channel ⇒ Object
Returns the value of attribute channel.
-
#client_ids ⇒ Object
Returns the value of attribute client_ids.
-
#data ⇒ Object
Returns the value of attribute data.
-
#global_id ⇒ Object
Returns the value of attribute global_id.
-
#group_ids ⇒ Object
Returns the value of attribute group_ids.
-
#message_id ⇒ Object
Returns the value of attribute message_id.
-
#site_id ⇒ Object
Returns the value of attribute site_id.
-
#user_ids ⇒ Object
Returns the value of attribute user_ids.
Class Method Summary collapse
Instance Method Summary collapse
-
#encode ⇒ Object
only tricky thing to encode is pipes in a channel name …
Instance Attribute Details
#channel ⇒ Object
Returns the value of attribute channel
1 2 3 |
# File 'lib/message_bus/message.rb', line 1 def channel @channel end |
#client_ids ⇒ Object
Returns the value of attribute client_ids.
3 4 5 |
# File 'lib/message_bus/message.rb', line 3 def client_ids @client_ids end |
#data ⇒ Object
Returns the value of attribute data
1 2 3 |
# File 'lib/message_bus/message.rb', line 1 def data @data end |
#global_id ⇒ Object
Returns the value of attribute global_id
1 2 3 |
# File 'lib/message_bus/message.rb', line 1 def global_id @global_id end |
#group_ids ⇒ Object
Returns the value of attribute group_ids.
3 4 5 |
# File 'lib/message_bus/message.rb', line 3 def group_ids @group_ids end |
#message_id ⇒ Object
Returns the value of attribute message_id
1 2 3 |
# File 'lib/message_bus/message.rb', line 1 def @message_id end |
#site_id ⇒ Object
Returns the value of attribute site_id.
3 4 5 |
# File 'lib/message_bus/message.rb', line 3 def site_id @site_id end |
#user_ids ⇒ Object
Returns the value of attribute user_ids.
3 4 5 |
# File 'lib/message_bus/message.rb', line 3 def user_ids @user_ids end |
Class Method Details
.decode(encoded) ⇒ Object
5 6 7 8 9 10 11 12 |
# 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 |
Instance Method Details
#encode ⇒ Object
only tricky thing to encode is pipes in a channel name … do a straight replace
15 16 17 |
# File 'lib/message_bus/message.rb', line 15 def encode global_id.to_s << "|" << .to_s << "|" << channel.gsub("|","$$123$$") << "|" << data end |