module RJR::HasMessages::ClassMethods
Public Instance Methods
clear_messages()
click to toggle source
Clear preformatted messages
# File lib/rjr/util/has_messages.rb, line 34 def clear_messages @rjr_messages = {} end
message(id, msg=nil)
click to toggle source
Mechanism to register / retrieve preformatted message
@param [Symbol] id id of message to get / set @param [String] msg optional preformatted message to store @return [String] json rpc message
# File lib/rjr/util/has_messages.rb, line 27 def message(id, msg=nil) @rjr_messages ||= {} @rjr_messages[id] = msg unless msg.nil? @rjr_messages[id] end
rand_message(transport = nil)
click to toggle source
Return random message from registry.
Optionally specify the transport which the message must accept. TODO turn this into a generic selection callback
# File lib/rjr/util/has_messages.rb, line 42 def rand_message(transport = nil) @rjr_messages ||= {} messages = @rjr_messages.select { |mid,m| m[:transports].nil? || transport.nil? || m[:transports].include?(transport) } messages[messages.keys[rand(messages.keys.size)]] end