[Apt-got-cvs-commits] apt-got/src/com/debianmirror/mirror/data DebianMirror.java,1.4,1.5 DebianMirro
Status: Beta
Brought to you by:
dun3
From: Tobias H. <du...@bt...> - 2004-06-01 19:05:31
|
Update of /var/lib/cvs/apt-got/apt-got/src/com/debianmirror/mirror/data In directory btfmx2:/tmp/cvs-serv13469/src/com/debianmirror/mirror/data Modified Files: DebianMirror.java DebianMirrorFile.java DebianMirrorPurger.java XmlMirrorConf.java Log Message: Minor upgrades for the Purger. Now DebianMirrorFiles that got obsolete but still are in the FileCache get purged correctly. Index: DebianMirrorPurger.java =================================================================== RCS file: /var/lib/cvs/apt-got/apt-got/src/com/debianmirror/mirror/data/DebianMirrorPurger.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** DebianMirrorPurger.java 1 Jun 2004 18:23:44 -0000 1.1 --- DebianMirrorPurger.java 1 Jun 2004 19:05:16 -0000 1.2 *************** *** 39,43 **** while(true) { if(_mirrorStateChange) { ! _mirrorStateChange = false; // do SOMETHING ;) startSubDir(_filePool.getRootDir()); --- 39,46 ---- while(true) { if(_mirrorStateChange) { ! //TODO: Make purger an DebianMirrorObserver ! // and change the next line to false. ! //For now we just do this every 12 hours. ! _mirrorStateChange = true; // do SOMETHING ;) startSubDir(_filePool.getRootDir()); *************** *** 45,49 **** synchronized(this) { try { ! wait(24*60*60*1000); } catch(Exception e) {} } --- 48,52 ---- synchronized(this) { try { ! wait(12*60*60*1000); } catch(Exception e) {} } *************** *** 92,95 **** --- 95,112 ---- // delete file.delete(); + } + } else if(!_mirrorInfo.isDebianMirrorFile(filePath)) { + // file was in fileCache - but + // we can purge if it is a DebianMirrorFile object and + // isDebianMirrorFile returns false. + try { + ((DebianMirrorFile)_fileCache.get(filePath)).purge(); + } catch(Exception e) { + //TODO make this more finegrained? + + // We got an exception that is typically a ClassCastEx + // because it wasn't a DebianMirrorFile or + // a NullPointerEx because we lost the WeakReference. + // We can safely ignore that. } } Index: DebianMirrorFile.java =================================================================== RCS file: /var/lib/cvs/apt-got/apt-got/src/com/debianmirror/mirror/data/DebianMirrorFile.java,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** DebianMirrorFile.java 1 Jun 2004 18:23:44 -0000 1.5 --- DebianMirrorFile.java 1 Jun 2004 19:05:16 -0000 1.6 *************** *** 163,166 **** --- 163,174 ---- } public void purge() { + logger.finest("Entering;"); + // we have to synchronize all the way... + synchronized(_stateLock) { + setState(MirrorFileState.PURGED); + try { + localFile.delete(); + } catch(Exception e) {} + } } public void setState(MirrorFileState mfs) { Index: DebianMirror.java =================================================================== RCS file: /var/lib/cvs/apt-got/apt-got/src/com/debianmirror/mirror/data/DebianMirror.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** DebianMirror.java 1 Jun 2004 18:23:44 -0000 1.4 --- DebianMirror.java 1 Jun 2004 19:05:16 -0000 1.5 *************** *** 134,140 **** } } ! if(_logger.isLoggable(Level.FINEST)) { ! _logger.finest("known DebianmirrorFiles now: " + CollectionHelper.keysToString(_debianMirrorFiles)); ! } } --- 134,140 ---- } } ! //if(_logger.isLoggable(Level.FINEST)) { ! // _logger.finest("known DebianmirrorFiles now: " + CollectionHelper.keysToString(_debianMirrorFiles)); ! //} } Index: XmlMirrorConf.java =================================================================== RCS file: /var/lib/cvs/apt-got/apt-got/src/com/debianmirror/mirror/data/XmlMirrorConf.java,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 |