X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Ffanfix%2Fsupported%2FBasicSupport.java;h=d07fbcd93cdd3aa72c1bba621c1595918beb2385;hb=413bcc29038d9c46c785142332839d41fd3c10e6;hp=4337626c7fe60d96914eb9658df2b827823de539;hpb=fdc55375d1439a3d70159b8bcb0d433c74d96200;p=fanfix.git diff --git a/src/be/nikiroo/fanfix/supported/BasicSupport.java b/src/be/nikiroo/fanfix/supported/BasicSupport.java index 4337626..d07fbcd 100644 --- a/src/be/nikiroo/fanfix/supported/BasicSupport.java +++ b/src/be/nikiroo/fanfix/supported/BasicSupport.java @@ -37,13 +37,10 @@ public abstract class BasicSupport { private URL source; private SupportType type; private URL currentReferer; // with only one 'r', as in 'HTTP'... - - /** - * The name of this support class. - * - * @return the name - */ - protected abstract String getSourceName(); + + static protected BasicSupportHelper bsHelper = new BasicSupportHelper(); + static protected BasicSupportImages bsImages = new BasicSupportImages(); + static protected BasicSupportPara bsPara = new BasicSupportPara(new BasicSupportHelper(), new BasicSupportImages()); /** * Check if the given resource is supported by this {@link BasicSupport}. @@ -281,7 +278,7 @@ public abstract class BasicSupport { pg.setProgress(50); if (meta.getCover() == null) { - meta.setCover(BasicSupportHelper.getDefaultCover(meta.getSubject())); + meta.setCover(bsHelper.getDefaultCover(meta.getSubject())); } pg.setProgress(60); @@ -290,7 +287,7 @@ public abstract class BasicSupport { String descChapterName = Instance.getTrans().getString( StringId.DESCRIPTION); story.getMeta().setResume( - BasicSupportPara.makeChapter(this, source, 0, + bsPara.makeChapter(this, source, 0, descChapterName, // getDesc(), isHtml(), null)); } @@ -311,7 +308,7 @@ public abstract class BasicSupport { * @throws IOException * in case of I/O error */ - // ADD final when BasicSupport_Deprecated is gone + // TODO: ADD final when BasicSupport_Deprecated is gone public Story process(Progress pg) throws IOException { setCurrentReferer(source); login(); @@ -382,7 +379,7 @@ public abstract class BasicSupport { String content = getChapterContent(chapUrl, i, pgGetChapterContent); pgGetChapterContent.done(); - Chapter cc = BasicSupportPara.makeChapter(this, chapUrl, i, + Chapter cc = bsPara.makeChapter(this, chapUrl, i, chapName, content, isHtml(), pgMakeChapter); pgMakeChapter.done(); @@ -402,6 +399,29 @@ public abstract class BasicSupport { return story; } + /** + * Create a chapter from the given data. + * + * @param source + * the source URL for this content, which can be used to try and + * find images if images are present in the format [image-url] + * @param number + * the chapter number (0 = description) + * @param name + * the chapter name + * @param content + * the content of the chapter + * @return the {@link Chapter} + * + * @throws IOException + * in case of I/O error + */ + public Chapter makeChapter(URL source, int number, String name, + String content) throws IOException { + return bsPara.makeChapter(this, source, number, name, + content, isHtml(), null); + } + /** * Return a {@link BasicSupport} implementation supporting the given * resource if possible. @@ -441,10 +461,11 @@ public abstract class BasicSupport { * Return a {@link BasicSupport} implementation supporting the given type. * * @param type - * the type + * the type, must not be NULL * @param url * the {@link URL} to support (can be NULL to get an - * "abstract support") + * "abstract support"; if not NULL, will be used as the source + * URL) * * @return an implementation that supports it, or NULL */ @@ -472,8 +493,8 @@ public abstract class BasicSupport { case TEXT: support = new Text(); break; - case MANGAFOX: - support = new MangaFox(); + case MANGAHUB: + support = new MangaHub(); break; case E621: support = new E621();