def register_services( container )
container.namespace_define :protocol do |ns|
ns.version { 5 }
ns.dispatcher_factory do |c,|
lambda do |version, extensions|
version = "%02d" % version
c.require "net/sftp/protocol/#{version}/services",
"#{self}::V_#{version}"
impl = c["v_#{version}".to_sym][:impl]
impl.extensions = extensions
impl
end
end
ns.driver do |c,p|
require 'net/sftp/protocol/driver'
Driver.new( c[:connection][:driver],
c[:transport][:buffers],
c[:version],
c[:dispatcher_factory],
c[:log_for, p] )
end
end
end