X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fnet%2Fpterodactylus%2Farachne%2Fcore%2FCore.java;h=8afe0142a932d5446dc603cdc50b75e6bb901f80;hb=53997073cbd99e3f02773c2bdf7edad04cb0dbf7;hp=9efc9607008621ecd4ae2400eca1e7bed31037ee;hpb=a637923e6ea2bd6d53180b7e843b02a191b6d6e5;p=arachne.git diff --git a/src/net/pterodactylus/arachne/core/Core.java b/src/net/pterodactylus/arachne/core/Core.java index 9efc960..8afe014 100644 --- a/src/net/pterodactylus/arachne/core/Core.java +++ b/src/net/pterodactylus/arachne/core/Core.java @@ -77,6 +77,7 @@ public class Core extends AbstractService { */ public void addPage(URL url) { Validation.begin().isNotNull("url", url).check().isEqual("url.getHost()", url.getHost(), (Object) nodeHost).isEqual("url.getPort()", url.getPort(), nodePort).check(); + addPage(Page.fromURL(url)); } /** @@ -109,7 +110,7 @@ public class Core extends AbstractService { // /** - * {@inheritdoc} + * {@inheritDoc} * * @see de.ina.util.service.AbstractService#serviceRun() */ @@ -138,11 +139,19 @@ public class Core extends AbstractService { logger.log(Level.INFO, "Skipping “" + nextPage + "”."); continue; } - URLFetcher urlFetcher; + final URLFetcher urlFetcher; try { logger.log(Level.INFO, "Fetching “" + nextURL + "”..."); urlFetcher = new URLFetcher(parserFactory, nextURL); - urlFetcherExecutor.execute(urlFetcher); + urlFetcherExecutor.execute(new Runnable() { + + public void run() { + urlFetcher.run(); + for (Page page : urlFetcher.getCollectedPages()) { + addPage(page); + } + } + }); } catch (NoSuchAlgorithmException nsae1) { logger.log(Level.SEVERE, "Could not get “SHA-256” message digest!", nsae1); }