Merge branch 'subtree'
[fanfix.git] / src / be / nikiroo / fanfix / searchable / BasicSearchable.java
index a67d2f6022e47088824d7f61cbaaa341b6ce8a0c..cb0b1712ccb3fc7762354f799a04f65b45d89de8 100644 (file)
@@ -131,6 +131,20 @@ public abstract class BasicSearchable {
         */
        abstract public int searchPages(String search) throws IOException;
 
+       /**
+        * Search for the given tag and return the number of pages of results of
+        * stories satisfying this tag.
+        * 
+        * @param tag
+        *            the tag to search for
+        * 
+        * @return a number of pages
+        * 
+        * @throws IOException
+        *             in case of I/O error
+        */
+       abstract public int searchPages(SearchableTag tag) throws IOException;
+
        /**
         * Search for the given term and return a list of stories satisfying this
         * search term.
@@ -208,8 +222,7 @@ public abstract class BasicSearchable {
         *             in case of I/O error
         */
        protected Document load(URL url, boolean stable) throws IOException {
-               return DataUtil.load(Instance.getCache().open(url, support, stable),
-                               "UTF-8", url.toString());
+               return DataUtil.load(Instance.getInstance().getCache().open(url, support, stable), "UTF-8", url.toString());
        }
 
        /**
@@ -228,22 +241,22 @@ public abstract class BasicSearchable {
                if (type != null) {
                        switch (type) {
                        case FIMFICTION:
-                               // TODO
+                               // TODO searchable for FIMFICTION
                                break;
                        case FANFICTION:
                                support = new Fanfiction(type);
                                break;
-                       case MANGAFOX:
-                               // TODO
+                       case MANGAHUB:
+                               // TODO searchable for MANGAHUB
                                break;
                        case E621:
-                               // TODO
+                               // TODO searchable for E621
                                break;
                        case YIFFSTAR:
-                               // TODO
+                               // TODO searchable for YIFFSTAR
                                break;
                        case E_HENTAI:
-                               // TODO
+                               // TODO searchable for E_HENTAI
                                break;
                        case MANGA_LEL:
                                support = new MangaLel();