Class: RubyVolt::InvocationRequest

Inherits:
Message
  • Object
show all
Defined in:
lib/ruby_volt/message/invocation_request.rb

Instance Attribute Summary

Attributes inherited from Message

#msg, #protocol

Instance Method Summary collapse

Methods inherited from Message

#inspect, #to_str, #wrap

Constructor Details

#initialize(*args) ⇒ InvocationRequest

Returns a new instance of InvocationRequest.

Raises:



4
5
6
7
8
9
10
11
12
13
14
# File 'lib/ruby_volt/message/invocation_request.rb', line 4

def initialize(*args)
  super
  procedure, client_data = *args[1..2]
  raise(ClientDataInvalid, "Client data 8 bytes awaiting") if client_data.bytesize != 8
  parameters = args[3..-1]
  wrap do
    msg << DataType::String.pack(procedure) # Procedure name
    msg << [client_data].pack('a8') # Opaque client data (8 bytes)
    msg << DataType::ParameterSet.pack(*parameters) # Parameter set
  end
end