Sha256: 55efdf4702af50ee817b90b100931668b8ecea41d19c5f23b46aa39dcdf0b38d
Contents?: true
Size: 1.41 KB
Versions: 3
Compression:
Stored size: 1.41 KB
Contents
# Author:: Nicolas Despres <nicolas.despres@gmail.com>. # Copyright:: Copyright (c) 2004, 2005 TTK team. All rights reserved. # License:: LGPL # $Id: sender.rb 567 2005-04-13 08:00:06Z polrop $ require 'md5' require 'dtime' module TTK module Fetchers class Server class Sender include DRb::DRbUndumped BLOCK_SIZE = 1024 def initialize(resource, receiver) @resource = resource unless @resource.exist? raise(Errno::ENOENT, "`#@resource' - no such resource") end @receiver = receiver @md5sum = Digest::MD5.new @success = nil end def send if @success.nil? @t0 = Time.now @resource.open do |f| until f.eof? str = f.read(BLOCK_SIZE) @md5sum << str @receiver.recv(str) end @success = @receiver.stop(@md5sum.to_s) end @enlapsed_time = DTime.new(Time.now - @t0) @success end end def stat unless @success.nil? { :resource => @resource, :enlapsed_time => @enlapsed_time, :md5sum => @md5sum.to_s, :success => @success } end end end # class Sender end # class Server end # module Fetchers end # module TTK
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
ttk-0.1.576 | lib/ttk/fetchers/server/sender.rb |
ttk-0.1.580 | lib/ttk/fetchers/server/sender.rb |
ttk-0.1.579 | lib/ttk/fetchers/server/sender.rb |