Method: OpenC3::HttpServerInterface#convert_data_to_packet

Defined in:
lib/openc3/interfaces/http_server_interface.rb

#convert_data_to_packet(data, extra = nil) ⇒ Packet

Called to convert the read data into a OpenC3 Packet object

Parameters:

  • data (String)

    Raw packet data

Returns:

  • (Packet)

    OpenC3 Packet with buffer filled with data



172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
# File 'lib/openc3/interfaces/http_server_interface.rb', line 172

def convert_data_to_packet(data, extra = nil)
  packet = Packet.new(nil, nil, :BIG_ENDIAN, nil, data.to_s)
  packet.accessor = HttpAccessor.new(packet)
  if extra
    # Identify the response
    request_target_name = extra['HTTP_REQUEST_TARGET_NAME']
    request_packet_name = extra['HTTP_REQUEST_PACKET_NAME']
    if request_target_name and request_packet_name
      packet.target_name = request_target_name.to_s.upcase
      packet.packet_name = request_packet_name.to_s.upcase
    end
    extra.delete("HTTP_REQUEST_TARGET_NAME")
    extra.delete("HTTP_REQUEST_PACKET_NAME")
    packet.extra = extra
  end

  return packet
end