From: <jj...@us...> - 2004-02-04 11:37:33
|
Update of /cvsroot/ngetsuite/ngetsuite/ngetsuite In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21764/ngetsuite Modified Files: core.rb group.rb ngetcache.rb queue.rb Log Message: added --delete-queue (-x), changed callback when parsing nget cache Index: core.rb =================================================================== RCS file: /cvsroot/ngetsuite/ngetsuite/ngetsuite/core.rb,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -d -r1.26 -r1.27 *** core.rb 2 Feb 2004 17:44:19 -0000 1.26 --- core.rb 4 Feb 2004 01:45:38 -0000 1.27 *************** *** 212,215 **** --- 212,217 ---- raise ArgumentError.new("Incorrect args : #{arg}") end + when 'delete-queue' + Queue.delete(arg, false) when 'show-queue' args = arg.split(',') Index: group.rb =================================================================== RCS file: /cvsroot/ngetsuite/ngetsuite/ngetsuite/group.rb,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** group.rb 3 Feb 2004 16:33:28 -0000 1.25 --- group.rb 4 Feb 2004 01:45:39 -0000 1.26 *************** *** 182,207 **** sth = Db.dbh.prepare 'insert into articles(`group`, `mid`, `nbparts`, `size`, `subject`, `from`, `time`, `rls_subject`) values (?, ?, ?, ?, ?, ?, FROM_UNIXTIME(?), ?)' filecallback = Proc.new{ |f| ! if f.req < 1 ! @cachecb_invalid = true ! else ! @cachecb_invalid = false ! end ! @cachecb_file = f ! @cachecb_rsubj = f.subject.gsub(/^(.* )(- .*)?".*$/, '\1').gsub(/\d{1,3}(\/| of )\d{1,3}/, '#\1#').gsub(/ \d\d? /, ' # ') ! @cachecb_partcnt = 0 ! @cachecb_size = 0 ! } ! partcallback = Proc.new{ |p| ! unless @cachecb_invalid or p.articles.empty? a = p.articles[0] ! @cachecb_size += a.bytes / ( a.bytes < 100*a.lines ? 1.39 : 1.0334 ) ! @cachecb_partcnt += 1 ! if @cachecb_partcnt >= @cachecb_file.req ! sth.execute(@_fullname, p.mid, @cachecb_file.req, @cachecb_size, @cachecb_file.subject, @cachecb_file.author, p.date, @cachecb_rsubj) end end } ! NgetCache.new(@_fullname, @cachedir, nil, filecallback, partcallback) debug "End mknewscache at #{Time.now.strftime('%H:%M:%S')}" end --- 182,206 ---- sth = Db.dbh.prepare 'insert into articles(`group`, `mid`, `nbparts`, `size`, `subject`, `from`, `time`, `rls_subject`) values (?, ?, ?, ?, ?, ?, FROM_UNIXTIME(?), ?)' filecallback = Proc.new{ |f| ! if f.req >= 1 ! rsubj = f.subject.gsub(/^(.* )(- .*)?".*$/, '\1').gsub(/\d{1,3}(\/| of )\d{1,3}/, '#\1#').gsub(/ \d\d? /, ' # ') ! partcnt = 0 ! size = 0 ! a = nil ! f.parts.each{ |p| ! unless p.articles.empty? a = p.articles[0] ! size += a.bytes / ( a.bytes < 100*a.lines ? 1.39 : 1.0334 ) ! partcnt += 1 ! if partcnt >= f.req ! sth.execute(@_fullname, p.mid, f.req, size, f.subject, f.author, p.date, rsubj) end + end + p.articles = nil + } + f.parts = nil end } ! NgetCache.new(@_fullname, @cachedir, nil, filecallback) debug "End mknewscache at #{Time.now.strftime('%H:%M:%S')}" end Index: ngetcache.rb =================================================================== RCS file: /cvsroot/ngetsuite/ngetsuite/ngetsuite/ngetcache.rb,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ngetcache.rb 3 Feb 2004 16:33:28 -0000 1.3 --- ngetcache.rb 4 Feb 2004 01:45:39 -0000 1.4 *************** *** 18,25 **** CacheArticle = Struct.new('CacheArticle', 'serverid', 'articlenum', 'bytes', 'lines') ! def initialize(groupname, path='.', limit=nil, filecallback=nil, partcallback=nil, articlecallback=nil) @servers = Array.new @files = Array.new ! @filecallback, @partcallback, @articlecallback = filecallback, partcallback, articlecallback @sane = true --- 18,25 ---- CacheArticle = Struct.new('CacheArticle', 'serverid', 'articlenum', 'bytes', 'lines') ! def initialize(groupname, path='.', limit=nil, filecallback=nil) @servers = Array.new @files = Array.new ! @filecallback = filecallback @sane = true *************** *** 58,62 **** # files list while (file = read_file) ! @files << file unless @filecallback if limit break if (limit -= 1) < 0 --- 58,66 ---- # files list while (file = read_file) ! if @filecallback ! @filecallback.call(file) ! else ! @files << file ! end if limit break if (limit -= 1) < 0 *************** *** 84,89 **** end - @filecallback.call(file) if @filecallback - # parts of the file while (part = read_part) --- 88,91 ---- *************** *** 108,112 **** part.articles << article end - @partcallback.call(part) if @partcallback part end --- 110,113 ---- *************** *** 115,121 **** return unless readline raise BadNgetCache.new('invalid article description') unless @line =~ /^(\d+)\t(\d+)\t(\d+)\t(\d+)$/ ! article = CacheArticle.new($1.to_i, $2.to_i, $3.to_i, $4.to_i) ! @articlecallback.call(article) if @articlecallback ! article end --- 116,120 ---- return unless readline raise BadNgetCache.new('invalid article description') unless @line =~ /^(\d+)\t(\d+)\t(\d+)\t(\d+)$/ ! CacheArticle.new($1.to_i, $2.to_i, $3.to_i, $4.to_i) end Index: queue.rb =================================================================== RCS file: /cvsroot/ngetsuite/ngetsuite/ngetsuite/queue.rb,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** queue.rb 2 Feb 2004 02:41:57 -0000 1.19 --- queue.rb 4 Feb 2004 01:45:39 -0000 1.20 *************** *** 7,10 **** --- 7,11 ---- PROCESSING = 'PROCESSING' STOPPED = 'STOPPED' + FAILED = 'FAILED' SINGLE = 'SINGLE' |