| Class | Net::SFTP::Protocol::Base |
| In: |
lib/net/sftp/protocol/base.rb
lib/net/sftp/protocol/base.rb |
| Parent: | Object |
The abstract superclass of the specific implementations for each supported SFTP protocol version. It implements general packet parsing logic, and provides a way for subclasses to send requests.
Attept to parse the given packet. If the packet is of an unsupported type, an exception will be raised. Returns the parsed data as a hash (the keys in the hash are packet-type specific).
# File lib/net/sftp/protocol/base.rb, line 27
27: def parse(packet)
28: case packet.type
29: when FXP_STATUS then parse_status_packet(packet)
30: when FXP_HANDLE then parse_handle_packet(packet)
31: when FXP_DATA then parse_data_packet(packet)
32: when FXP_NAME then parse_name_packet(packet)
33: when FXP_ATTRS then parse_attrs_packet(packet)
34: else raise NotImplementedError, "unknown packet type: #{packet.type}"
35: end
36: end
Attept to parse the given packet. If the packet is of an unsupported type, an exception will be raised. Returns the parsed data as a hash (the keys in the hash are packet-type specific).
# File lib/net/sftp/protocol/base.rb, line 27
27: def parse(packet)
28: case packet.type
29: when FXP_STATUS then parse_status_packet(packet)
30: when FXP_HANDLE then parse_handle_packet(packet)
31: when FXP_DATA then parse_data_packet(packet)
32: when FXP_NAME then parse_name_packet(packet)
33: when FXP_ATTRS then parse_attrs_packet(packet)
34: else raise NotImplementedError, "unknown packet type: #{packet.type}"
35: end
36: end