Change BasicSupport to use jsoup
[nikiroo-utils.git] / src / be / nikiroo / fanfix / supported / Fanfiction.java
index 1d1f3f4a09cbbd88939c762434a9d57a0cfd342c..0feb9641be2f2ea85f896c9b21da2511c6d3a8b5 100644 (file)
@@ -1,6 +1,5 @@
 package be.nikiroo.fanfix.supported;
 
-import java.awt.image.BufferedImage;
 import java.io.IOException;
 import java.io.InputStream;
 import java.net.MalformedURLException;
@@ -15,6 +14,7 @@ import java.util.Scanner;
 import be.nikiroo.fanfix.Instance;
 import be.nikiroo.fanfix.bundles.Config;
 import be.nikiroo.fanfix.data.MetaData;
+import be.nikiroo.utils.Image;
 import be.nikiroo.utils.Progress;
 import be.nikiroo.utils.StringUtils;
 
@@ -25,7 +25,7 @@ import be.nikiroo.utils.StringUtils;
  * 
  * @author niki
  */
-class Fanfiction extends BasicSupport {
+class Fanfiction extends BasicSupport_Deprecated {
        @Override
        protected boolean isHtml() {
                return true;
@@ -74,7 +74,7 @@ class Fanfiction extends BasicSupport {
                return null;
        }
 
-       private List<String> getTags(InputStream in) throws IOException {
+       private List<String> getTags(InputStream in) {
                List<String> tags = new ArrayList<String>();
 
                String key = "title=\"Send Private Message\"";
@@ -142,7 +142,7 @@ class Fanfiction extends BasicSupport {
                        }
                }
 
-               return fixAuthor(author);
+               return BasicSupportHelper.fixAuthor(author);
        }
 
        private String getDate(InputStream in) {
@@ -161,8 +161,10 @@ class Fanfiction extends BasicSupport {
                                                return sdf
                                                                .format(new Date(1000 * Long.parseLong(line)));
                                        } catch (NumberFormatException e) {
-                                               Instance.syserr(new IOException(
-                                                               "Cannot convert publication date: " + line, e));
+                                               Instance.getTraceHandler().error(
+                                                               new IOException(
+                                                                               "Cannot convert publication date: "
+                                                                                               + line, e));
                                        }
                                }
                        }
@@ -176,7 +178,7 @@ class Fanfiction extends BasicSupport {
                return getLine(in, "title=\"Send Private Message\"", 1);
        }
 
-       private BufferedImage getCover(URL url, InputStream in) {
+       private Image getCover(URL url, InputStream in) {
                String key = "class='cimage";
                String line = getLine(in, key, 0);
                if (line != null) {
@@ -245,22 +247,27 @@ class Fanfiction extends BasicSupport {
                                                        final String chapName = name.trim();
                                                        final URL chapURL = new URL(base + i + suffix);
                                                        urls.add(new Entry<String, URL>() {
+                                                               @Override
                                                                public URL setValue(URL value) {
                                                                        return null;
                                                                }
 
+                                                               @Override
                                                                public URL getValue() {
                                                                        return chapURL;
                                                                }
 
+                                                               @Override
                                                                public String getKey() {
                                                                        return chapName;
                                                                }
                                                        });
                                                } catch (MalformedURLException e) {
-                                                       Instance.syserr(new IOException(
-                                                                       "Cannot parse chapter " + i + " url: "
-                                                                                       + (base + i + suffix), e));
+                                                       Instance.getTraceHandler()
+                                                                       .error(new IOException(
+                                                                                       "Cannot parse chapter " + i
+                                                                                                       + " url: "
+                                                                                                       + (base + i + suffix), e));
                                                }
                                        }
                                }
@@ -270,14 +277,17 @@ class Fanfiction extends BasicSupport {
                        final String chapName = getTitle(reset(in));
                        final URL chapURL = source;
                        urls.add(new Entry<String, URL>() {
+                               @Override
                                public URL setValue(URL value) {
                                        return null;
                                }
 
+                               @Override
                                public URL getValue() {
                                        return chapURL;
                                }
 
+                               @Override
                                public String getKey() {
                                        return chapName;
                                }