Sha256: 1d366a5edf4f9dda8116fc278c34545b4afdb0b11717235d71b70ce3b7d143a2
Contents?: true
Size: 1.27 KB
Versions: 8
Compression:
Stored size: 1.27 KB
Contents
require_relative '../protocol/command_serializer' require_relative '../protocol/command_deserializer' require_relative '../handler/handler' class Interpreter def execute(command, connection_type, tcp_address) command_serializer = CommandSerializer.new message_byte_array = command_serializer.serialize(command, connection_type, tcp_address) if command.runtime_name == RuntimeName::RUBY require_relative '../receiver/receiver' response_byte_array = Receiver.new.send_command(message_byte_array, message_byte_array.length) else require_relative '../transmitter/transmitter' response_byte_array = Transmitter.send_command(message_byte_array, message_byte_array.length) end command_deserializer = CommandDeserializer.new(response_byte_array,response_byte_array.length) encoded_response = command_deserializer.deserialize return encoded_response end def process(byte_array, byte_array_len) command_deserializer = CommandDeserializer.new(byte_array,byte_array_len) received_command = command_deserializer.deserialize handler = Handler.new command_serializer = CommandSerializer.new return command_serializer.serialize(handler.handle_command(received_command), 0, "0.0.0.0:0") end end
Version data entries
8 entries across 4 versions & 1 rubygems