1
0
Fork 0
mirror of https://github.com/geometer/FBReaderJ.git synced 2025-10-06 03:50:19 +02:00

cache control fix for OPDSLinkReader

git-svn-id: https://only.mawhrin.net/repos/FBReaderJ/trunk@1686 6a642e6f-84f6-412e-ac94-c4a38d5a04b0
This commit is contained in:
Vasiliy Bout 2010-09-02 19:26:57 +00:00
parent 880ccdb455
commit e688b18c59

View file

@ -69,6 +69,13 @@ public class OPDSLinkReader {
if (catalogsFile.exists()) {
switch (cacheMode) {
case CACHE_UPDATE:
final long diff = System.currentTimeMillis() - catalogsFile.lastModified();
final long valid = 7 * 24 * 60 * 60 * 1000; // one week in milliseconds; FIXME: hardcoded const
if (diff >= 0 && diff <= valid) {
return null;
}
/* FALLTHROUGH */
case CACHE_CLEAR:
try {
final OPDSLinkXMLReader reader = new OPDSLinkXMLReader();
reader.read(new FileInputStream(catalogsFile));
@ -77,14 +84,6 @@ public class OPDSLinkReader {
throw new RuntimeException("That's impossible!!!", e);
}
final long diff = System.currentTimeMillis() - catalogsFile.lastModified();
final long valid = 7 * 24 * 60 * 60 * 1000; // one week in milliseconds; FIXME: hardcoded const
if (diff >= 0 && diff <= valid) {
goodCache = true;
break;
}
/* FALLTHROUGH */
case CACHE_CLEAR:
oldCache = new File(dirFile, "_" + fileName);
oldCache.delete();
if (!catalogsFile.renameTo(oldCache)) {