Represents an RPC message, serves as the basis for {Request} and {Response}.
@author: Tasos "Zapotek" Laskos <tasos.laskos@gmail.com>
Merges the attributes of another message with self.
(The param doesn't really have to be a message, any object will do.)
@param [Message] message
# File lib/arachni/rpc/message.rb, line 33 def merge!( message ) message.instance_variables.each do |var| val = message.instance_variable_get( var ) instance_variable_set( var, val ) end end
Prepares the message for transmission (i.e. converts the message to a Hash).
Attributes that should not be included can be skipped by implementing {transmit?} and returning the appropriate value.
@return [Hash]
# File lib/arachni/rpc/message.rb, line 48 def prepare_for_tx instance_variables.inject({}) do |h, k| h[normalize( k )] = instance_variable_get( k ) if transmit?( k ) h end end
Decides which attributes should be skipped by {prepare_for_tx}.
@param [Symbol] attr attribute symbol (i.e. :@token)
# File lib/arachni/rpc/message.rb, line 60 def transmit?( attr ) true end
Generated with the Darkfish Rdoc Generator 2.