X-Git-Url: https://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Futils%2FDownloader.java;h=4191d0aea0da85511e2741c50c2a6c83806f612f;hb=601003e69e1dc81774243c6eadf7982b6b563b33;hp=7ee551ff38f4f0692d11fd35678e283c5cec359d;hpb=24604392c3aa6d9298aacd10fde7bb2df1322a10;p=fanfix.git diff --git a/src/be/nikiroo/utils/Downloader.java b/src/be/nikiroo/utils/Downloader.java index 7ee551f..4191d0a 100644 --- a/src/be/nikiroo/utils/Downloader.java +++ b/src/be/nikiroo/utils/Downloader.java @@ -30,6 +30,7 @@ public class Downloader { private CookieManager cookies; private TraceHandler tracer = new TraceHandler(); private Cache cache; + private boolean offline; /** * Create a new {@link Downloader}. @@ -38,7 +39,7 @@ public class Downloader { * the User-Agent to use to download the resources -- note that * some websites require one, some actively blacklist real UAs * like the one from wget, some whitelist a couple of browsers - * only (!) + * only (!) -- can be NULL */ public Downloader(String UA) { this(UA, null); @@ -51,7 +52,7 @@ public class Downloader { * the User-Agent to use to download the resources -- note that * some websites require one, some actively blacklist real UAs * like the one from wget, some whitelist a couple of browsers - * only (!) + * only (!) -- can be NULL * @param cache * the {@link Cache} to use for all access (can be NULL) */ @@ -63,6 +64,32 @@ public class Downloader { setCache(cache); } + + /** + * This {@link Downloader} is forbidden to try and connect to the network. + *
+ * If TRUE, it will only check the cache if any. + *
+ * Default is FALSE. + * + * @return TRUE if offline + */ + public boolean isOffline() { + return offline; + } + + /** + * This {@link Downloader} is forbidden to try and connect to the network. + *
+ * If TRUE, it will only check the cache if any. + *
+ * Default is FALSE.
+ *
+ * @param offline TRUE for offline, FALSE for online
+ */
+ public void setOffline(boolean offline) {
+ this.offline = offline;
+ }
/**
* The traces handler for this {@link Cache}.
@@ -167,7 +194,7 @@ public class Downloader {
* @return the {@link InputStream} of the opened page
*
* @throws IOException
- * in case of I/O error
+ * in case of I/O error (including offline mode + not in cache)
*/
public InputStream open(URL url, URL currentReferer,
Map