File: //usr/share/rubygems-integration/all/gems/net-sftp-3.0.0/lib/net/sftp/protocol.rb
require 'net/sftp/protocol/01/base'
require 'net/sftp/protocol/02/base'
require 'net/sftp/protocol/03/base'
require 'net/sftp/protocol/04/base'
require 'net/sftp/protocol/05/base'
require 'net/sftp/protocol/06/base'
module Net; module SFTP
# The Protocol module contains the definitions for all supported SFTP
# protocol versions.
module Protocol
# Instantiates and returns a new protocol driver instance for the given
# protocol version. +session+ must be a valid SFTP session object, and
# +version+ must be an integer. If an unsupported version is given,
# an exception will be raised.
def self.load(session, version)
case version
when 1 then V01::Base.new(session)
when 2 then V02::Base.new(session)
when 3 then V03::Base.new(session)
when 4 then V04::Base.new(session)
when 5 then V05::Base.new(session)
when 6 then V06::Base.new(session)
else raise NotImplementedError, "unsupported SFTP version #{version.inspect}"
end
end
end
end; end