X-Git-Url: https://git.nikiroo.be/?a=blobdiff_plain;ds=sidebyside;f=src%2Fbe%2Fnikiroo%2Fgofetch%2FFetcher.java;h=6c86c136266b53f8c79e0d73cc3626fd7b9da495;hb=3e62b034c1981ae6329f06b3f8c0ee25c3683789;hp=5f81edabcb887cdb9e211c558331bab8a78339ec;hpb=136ab80122a17caa0720116d6d2552521239fbb3;p=gofetch.git diff --git a/src/be/nikiroo/gofetch/Fetcher.java b/src/be/nikiroo/gofetch/Fetcher.java index 5f81eda..6c86c13 100644 --- a/src/be/nikiroo/gofetch/Fetcher.java +++ b/src/be/nikiroo/gofetch/Fetcher.java @@ -14,7 +14,7 @@ import be.nikiroo.gofetch.output.Gopher; import be.nikiroo.gofetch.output.Html; import be.nikiroo.gofetch.output.Output; import be.nikiroo.gofetch.support.BasicSupport; -import be.nikiroo.gofetch.support.BasicSupport.Type; +import be.nikiroo.gofetch.support.Type; import be.nikiroo.utils.IOUtils; /** @@ -42,8 +42,8 @@ public class Fetcher { * the sub directory and (pre-)selector to use for the resources * (will have an impact on the files' content) * @param type - * the type of news to get (or the special keyword ALL to get all - * of the supported sources) + * the type of news to get (or NULL to get all of the supported + * sources) * @param maxStories * the maximum number of stories to show on the resume page * @param hostname @@ -81,7 +81,12 @@ public class Fetcher { BasicSupport support = BasicSupport.getSupport(type); if (type == this.type || this.type == null) { - list(support); + try { + list(support); + } catch (Exception e) { + new Exception("Failed to process support: " + type, e) + .printStackTrace(); + } } gopherBuilder.append(getLink(support.getDescription(), @@ -142,12 +147,20 @@ public class Fetcher { // Get comments (and update stories if needed): int i = 1; + List fetchedStories = new ArrayList(stories.size()); for (Story story : stories) { - System.err.println(String.format("%02d/%02d", i, stories.size()) + System.err.print(String.format("%02d/%02d", i, stories.size()) + " Fetching full story " + story.getId() + "..."); - support.fetch(story); + try { + support.fetch(story); + fetchedStories.add(story); + System.err.println(); + } catch (IOException e) { + System.err.println(" Failed to get story!"); + } i++; } + stories = fetchedStories; Output gopher = new Gopher(support.getType(), hostname, preselector, port);