From: <sir...@us...> - 2003-03-09 11:49:50
|
Update of /cvsroot/btplusplus/BT++/src In directory sc8-pr-cvs1:/tmp/cvs-serv12581/src Modified Files: LoaderManager.py Loader.py Log Message: Modifed to be more independant. Index: LoaderManager.py =================================================================== RCS file: /cvsroot/btplusplus/BT++/src/LoaderManager.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** LoaderManager.py 7 Mar 2003 23:42:15 -0000 1.3 --- LoaderManager.py 9 Mar 2003 11:49:46 -0000 1.4 *************** *** 5,30 **** from BTConstants import * class LoaderManager: ! Loaders = [] ! def __init__(self, refresh = None, log = None): ! self.Log = log ! self.Refresh = refresh self.UpMeasure = GlobalMeasure( 20.0, # MAX RATE PERIOD, 5.0 ) # UPLOAD RATE FUDGE def CreateNewLoader(self, torrent): try: ! loader = Loader(torrent, self.UpMeasure, self.Refresh, self.Log) self.Loaders.append( loader ) ! try: self.Log( 'Added torrent "' + torrent + '"...', loglevel = LOG_INFO ) ! except: ! pass except: ! try: self.Log( 'Error adding torrent "' + torrent + '"...', loglevel = LOG_ERROR ) ! except: ! pass ########################################################################################################### --- 5,59 ---- from BTConstants import * + from wxPython.wx import * + class LoaderManager: ! Loaders = [] ! Log = None ! Refresh = None ! Finish = None ! UpMeasure = None ! ! DirTorrent = '' ! DirTemp = '' ! DirFilFinish = '' ! DirTorFinish = '' ! ! def __init__(self, dirs, refresh = None, log = None, finish = None): ! self.Log = log ! self.Refresh = refresh ! self.Finish = finish ! ! self.DirTorrent = dirs[0] ! self.DirTemp = dirs[1] ! self.DirFilFinish = dirs[2] ! self.DirTorFinish = dirs[3] ! self.UpMeasure = GlobalMeasure( 20.0, # MAX RATE PERIOD, 5.0 ) # UPLOAD RATE FUDGE def CreateNewLoader(self, torrent): + #wxMessageBox(torrent) try: ! loader = Loader( torrent, ! [ self.DirTorrent, ! self.DirTemp, ! self.DirFilFinish, ! self.DirTorFinish ], ! self.UpMeasure, ! self.Refresh, ! self.Log, ! self.Finish ) ! self.Loaders.append( loader ) ! if self.Log != None: self.Log( 'Added torrent "' + torrent + '"...', loglevel = LOG_INFO ) ! ! return loader except: ! if self.Log != None: self.Log( 'Error adding torrent "' + torrent + '"...', loglevel = LOG_ERROR ) ! ! return None ########################################################################################################### *************** *** 118,122 **** def UpdateList(self): # UPDATE TORRENT LIST ! tors = listdir( Config.Get('Paths', 'Torrent') ) if len(tors) == 0: return --- 147,151 ---- def UpdateList(self): # UPDATE TORRENT LIST ! tors = listdir( self.DirTorrent ) if len(tors) == 0: return *************** *** 125,129 **** FilesConf.Read('files.ini') ! order = FilesConf.GetOptions('ActiveOrder') order.sort() new = [] --- 154,158 ---- FilesConf.Read('files.ini') ! order = FilesConf.GetOptions('ActiveOrder') order.sort() new = [] *************** *** 133,137 **** con = false ! if value == '' or not path.exists( path.join(Config.Get('Paths', 'Torrent'), value) ): FilesConf.DelOption('ActiveOrder', key) for l in self.Loaders: --- 162,166 ---- con = false ! if value == '' or not path.exists( path.join(self.DirTorrent, value) ): FilesConf.DelOption('ActiveOrder', key) for l in self.Loaders: *************** *** 151,181 **** for tor in tors: ! con = false ! for loader in self.Loaders: ! if loader.Config['Tor'] == tor: ! con = true ! for key in new: ! value = FilesConf.Get('ActiveOrder',key) ! if value == tor: ! con = true ! if con == true: ! continue ! if order == []: ! nid = 0 ! else: ! nid = int(order[len(order)-1]) + 1 ! ! FilesConf.Set('ActiveOrder', '%03d' % nid, tor) ! order.append('%03d' % nid) for num in new: tor = FilesConf.Get('ActiveOrder',num) self.CreateNewLoader(tor) - - FilesConf.Save() ########################################################################################################### --- 180,212 ---- for tor in tors: ! con = false ! for loader in self.Loaders: ! if loader.Config['Tor'] == tor: ! con = true ! for key in new: ! value = FilesConf.Get('ActiveOrder',key) ! if value == tor: ! con = true ! if con == true: ! continue ! if order == []: ! nid = 0 ! else: ! nid = int(order[len(order)-1]) + 1 + new.append('%03d' % nid) + + FilesConf.Set('ActiveOrder', '%03d' % nid, tor) + FilesConf.Save() + order = FilesConf.GetOptions('ActiveOrder') + order.sort() + for num in new: tor = FilesConf.Get('ActiveOrder',num) self.CreateNewLoader(tor) ########################################################################################################### Index: Loader.py =================================================================== RCS file: /cvsroot/btplusplus/BT++/src/Loader.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Loader.py 2 Mar 2003 16:32:16 -0000 1.1 --- Loader.py 9 Mar 2003 11:49:46 -0000 1.2 *************** *** 29,36 **** class Loader: ! def __init__(self, torrent, globup, refresh = None, log = None): ! self.Refresh = refresh ! self.Log = log self.FlagEnd = Event() --- 29,41 ---- class Loader: ! Refresh = None ! Log = None ! Finish = None ! def __init__(self, torrent, dirs, globup, refresh = None, log = None, finish = None): ! ! self.Refresh = refresh ! self.Log = log ! self.Finish = finish self.FlagEnd = Event() *************** *** 47,53 **** self.Config = {} self.Obj = {} ! self.Obj['GlobalUpMeasure'] = globup if self.Init(torrent) == false: raise --- 52,63 ---- self.Config = {} self.Obj = {} ! self.Obj['GlobalUpMeasure'] = globup + self.Config['DirTorrent'] = dirs[0] + self.Config['DirTemp'] = dirs[1] + self.Config['DirFilFinish'] = dirs[2] + self.Config['DirTorFinish'] = dirs[3] + if self.Init(torrent) == false: raise *************** *** 67,71 **** self.Config['Tor'] = tor ! self.Config['TorFull'] = path.join(Config.Get('Paths', 'Torrent'), tor) try: --- 77,81 ---- self.Config['Tor'] = tor ! self.Config['TorFull'] = path.join(self.Config['DirTorrent'], tor) try: *************** *** 80,84 **** self.Config['Tracker'] = torrent['announce'] self.Config['File'] = torinfo['name'] ! self.Config['Filename'] = path.join(Config.Get('Paths', 'Temp'), torinfo['name']) self.Config['Pieces'] = torinfo['pieces'] self.Config['PiecesLen'] = torinfo['piece length'] --- 90,94 ---- self.Config['Tracker'] = torrent['announce'] self.Config['File'] = torinfo['name'] ! self.Config['Filename'] = path.join(self.Config['DirTemp'], torinfo['name']) self.Config['Pieces'] = torinfo['pieces'] self.Config['PiecesLen'] = torinfo['piece length'] *************** *** 100,104 **** self.Config['Size'] += item['length'] ! file = path.join(Config.Get('Paths', 'Temp'), self.Config['File']) for p in item['path']: file = path.join(file, p) --- 110,114 ---- self.Config['Size'] += item['length'] ! file = path.join(self.Config['DirTemp'], self.Config['File']) for p in item['path']: file = path.join(file, p) *************** *** 238,263 **** def OnFinish(self, finfunc = None, finflag = None, ann = None, storage = None, errorfunc = None): ! ! self.PauseDownload() ! self.Finished = true ! self.Hashed = true ! ! self.UpdateStatus( fractionDone = 1, ! timeEst = 0, ! downRate = 0, ! upRate = 0, ! activity = 'Done' ) ! ! try: ! self.Obj['Storage'].close() ! rename( self.Config['Filename'], path.join(Config.Get('Paths','Incoming'), self.Config['File']) ) ! except: ! self.OnError('Could not move downloaded file.') ! ! try: ! rename( self.Config['TorFull'], path.join(Config.Get('Paths','History'), self.Config['Tor']) ) ! self.OnInfo( 'Download complete' ) ! except: ! self.OnError('Could not move torrent.') def OnFail(self, reason, errorfunc = None, doneflag = None): --- 248,253 ---- def OnFinish(self, finfunc = None, finflag = None, ann = None, storage = None, errorfunc = None): ! if self.Finish != None: ! self.Finish(self) def OnFail(self, reason, errorfunc = None, doneflag = None): |