def register_services( container )
container.namespace_define :forward do |ns|
ns.driver :model => :singleton_deferred do |c,p|
require 'net/ssh/service/forward/driver'
Driver.new( c[:connection][:driver],
c[:transport][:buffers],
c[:log_for, p],
:local => c[:local_network_handler],
:remote => c[:remote_network_handler] )
end
ns.read_block_size { 64 * 1024 }
ns.local_network_handler :model => :singleton_deferred do |c,p|
require 'net/ssh/service/forward/local-network-handler'
log = c[:log_for, p]
block_size = c[:read_block_size]
lambda do |client|
LocalNetworkHandler.new( log, block_size, client )
end
end
ns.remote_network_handler :model => :singleton_deferred do |c,p|
require 'net/ssh/service/forward/remote-network-handler'
log = c[:log_for, p]
block_size = c[:read_block_size]
lambda do |port, host|
RemoteNetworkHandler.new( log, block_size, port, host )
end
end
end
end