X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fcore%2FSoneDownloader.java;h=a406f1b4ff44417cb35e821861a984fc2e5bc84b;hb=4d49ba7b5f6ebed20a91678ebdcda1388d470dc0;hp=ef6c10abd34e3ac8ba850c8fb8335d03e4920f7b;hpb=9f9834453e9555175e4771932d9521209bd7188c;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/core/SoneDownloader.java b/src/main/java/net/pterodactylus/sone/core/SoneDownloader.java index ef6c10a..a406f1b 100644 --- a/src/main/java/net/pterodactylus/sone/core/SoneDownloader.java +++ b/src/main/java/net/pterodactylus/sone/core/SoneDownloader.java @@ -17,6 +17,7 @@ package net.pterodactylus.sone.core; +import static java.util.logging.Level.FINER; import static net.pterodactylus.sone.data.Sone.TO_FREENET_URI; import java.io.InputStream; @@ -148,6 +149,10 @@ public class SoneDownloader extends AbstractService { /* TODO - mark Sone as bad. */ return null; } + if (shouldStop()) { + logger.log(FINER, "Sone was stopped, won’t process download."); + return null; + } logger.log(Level.FINEST, String.format("Got %d bytes back.", fetchResults.getFetchResult().size())); Sone parsedSone = parseSone(sone, fetchResults.getFetchResult(), fetchResults.getFreenetUri()); if (parsedSone != null) { @@ -203,11 +208,9 @@ public class SoneDownloader extends AbstractService { * @param soneInputStream * The input stream to parse the Sone from * @return The parsed Sone - * @throws SoneException - * if a parse error occurs, or the protocol is invalid */ - public Sone parseSone(Sone originalSone, InputStream soneInputStream) throws SoneException { - return new SoneParser(core).parseSone(originalSone, soneInputStream); + public Sone parseSone(Sone originalSone, InputStream soneInputStream) { + return new SoneParser().parseSone(core.getDatabase(), originalSone, soneInputStream); } //