X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Ffanfix%2Fsupported%2FE621.java;h=f299ee7ff8d14b00df5cd3ca12318237a37d32ef;hb=ce297a794b1b7d3aa4e9234a6511dd9fe7216656;hp=665bdd5100cb0e7ef2b10ebc972a0c0729dca607;hpb=d98a29006897a1ae31ff3a039afe9643a48e0704;p=fanfix.git diff --git a/src/be/nikiroo/fanfix/supported/E621.java b/src/be/nikiroo/fanfix/supported/E621.java index 665bdd5..f299ee7 100644 --- a/src/be/nikiroo/fanfix/supported/E621.java +++ b/src/be/nikiroo/fanfix/supported/E621.java @@ -1,9 +1,9 @@ package be.nikiroo.fanfix.supported; -import java.awt.image.BufferedImage; import java.io.IOException; import java.io.InputStream; import java.net.URL; +import java.util.AbstractMap; import java.util.ArrayList; import java.util.List; import java.util.Map.Entry; @@ -13,6 +13,8 @@ import be.nikiroo.fanfix.Instance; import be.nikiroo.fanfix.data.Chapter; import be.nikiroo.fanfix.data.MetaData; import be.nikiroo.fanfix.data.Story; +import be.nikiroo.utils.Image; +import be.nikiroo.utils.Progress; import be.nikiroo.utils.StringUtils; /** @@ -25,7 +27,7 @@ import be.nikiroo.utils.StringUtils; * * @author niki */ -class E621 extends BasicSupport { +class E621 extends BasicSupport_Deprecated { @Override public String getSourceName() { return "e621.net"; @@ -44,19 +46,20 @@ class E621 extends BasicSupport { meta.setPublisher(getSourceName()); meta.setUuid(source.toString()); meta.setLuid(""); - meta.setLang("EN"); - meta.setSubject(""); + meta.setLang("en"); + meta.setSubject("Furry"); meta.setType(getType().toString()); meta.setImageDocument(true); meta.setCover(getCover(source)); + meta.setFakeCover(true); return meta; } @Override - public Story process(URL url) throws IOException { + public Story process(URL url, Progress pg) throws IOException { // There is no chapters on e621, just pagination... - Story story = super.process(url); + Story story = super.process(url, pg); Chapter only = new Chapter(1, null); for (Chapter chap : story) { @@ -85,12 +88,12 @@ class E621 extends BasicSupport { return true; } - private BufferedImage getCover(URL source) throws IOException { + private Image getCover(URL source) throws IOException { InputStream in = Instance.getCache().open(source, this, true); String images = getChapterContent(new URL(source.toString() + "?page=" - + 1), in, 1); + + 1), in, 1, null); if (!images.isEmpty()) { - int pos = images.indexOf('\n'); + int pos = images.indexOf("
"); if (pos >= 0) { images = images.substring(1, pos - 1); return getImage(this, null, images); @@ -100,7 +103,7 @@ class E621 extends BasicSupport { return null; } - private String getAuthor(URL source, InputStream in) throws IOException { + private String getAuthor(URL source, InputStream in) { String author = getLine(in, "href=\"/post/show/", 0); if (author != null) { String key = "href=\""; @@ -142,7 +145,7 @@ class E621 extends BasicSupport { return null; } - private String getTitle(InputStream in) throws IOException { + private String getTitle(InputStream in) { String title = getLine(in, "", 0); if (title != null) { int pos = title.indexOf('>'); @@ -189,8 +192,8 @@ class E621 extends BasicSupport { } @Override - protected List<Entry<String, URL>> getChapters(URL source, InputStream in) - throws IOException { + protected List<Entry<String, URL>> getChapters(URL source, InputStream in, + Progress pg) throws IOException { List<Entry<String, URL>> urls = new ArrayList<Entry<String, URL>>(); int last = 1; // no pool/show when only one page @@ -217,29 +220,16 @@ class E621 extends BasicSupport { } for (int i = 1; i <= last; i++) { - final String key = Integer.toString(i); - final URL value = new URL(source.toString() + "?page=" + i); - urls.add(new Entry<String, URL>() { - public URL setValue(URL value) { - return null; - } - - public URL getValue() { - return value; - } - - public String getKey() { - return key; - } - }); + urls.add(new AbstractMap.SimpleEntry<String, URL>(Integer + .toString(i), new URL(source.toString() + "?page=" + i))); } return urls; } @Override - protected String getChapterContent(URL source, InputStream in, int number) - throws IOException { + protected String getChapterContent(URL source, InputStream in, int number, + Progress pg) throws IOException { StringBuilder builder = new StringBuilder(); String staticSite = "https://static1.e621.net"; if (source.getHost().contains("e926")) { @@ -266,7 +256,7 @@ class E621 extends BasicSupport { id = id.substring(0, dotPos); builder.append("["); builder.append(id); - builder.append("]\n"); + builder.append("]<br/>"); } } }