X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Ffanfix%2Freader%2FReader.java;h=3ecf2470021b4f6d259db9ee8b80eac9ff8a266a;hb=c86a4bce83fb887bc3b202be6065c5dad4bdcc64;hp=59ed024f42380a8a50f2b3e5fa199146d9092459;hpb=cebf0288417d0d556ecc2d9bf73a500efe5b6470;p=fanfix.git
diff --git a/src/be/nikiroo/fanfix/reader/Reader.java b/src/be/nikiroo/fanfix/reader/Reader.java
index 59ed024..3ecf247 100644
--- a/src/be/nikiroo/fanfix/reader/Reader.java
+++ b/src/be/nikiroo/fanfix/reader/Reader.java
@@ -71,8 +71,12 @@ public interface Reader {
* the optional progress
*
* @return the {@link Story}
+ *
+ * @throws IOException
+ * in case of I/O error
+ *
*/
- public Story getStory(Progress pg);
+ public Story getStory(Progress pg) throws IOException;
/**
* The {@link BasicLibrary} to load the stories from (by default, takes the
@@ -167,8 +171,23 @@ public interface Reader {
* @param source
* the type of {@link Story} to take into account, or NULL for
* all
+ *
+ * @throws IOException
+ * in case of I/O error
+ */
+ public void browse(String source) throws IOException;
+
+ /**
+ * Display all supports that allow search operations.
+ *
+ * @param sync
+ * execute the process synchronously (wait until it is terminated
+ * before returning)
+ *
+ * @throws IOException
+ * in case of I/O error
*/
- public void browse(String source);
+ public void search(boolean sync) throws IOException;
/**
* Search for the given terms and find stories that correspond if possible.
@@ -183,12 +202,15 @@ public interface Reader {
* @param item
* the item to select (0 = do not select a specific item but show
* all the page, items start at 1)
+ * @param sync
+ * execute the process synchronously (wait until it is terminated
+ * before returning)
*
* @throws IOException
* in case of I/O error
*/
- public void search(SupportType searchOn, String keywords, int page, int item)
- throws IOException;
+ public void search(SupportType searchOn, String keywords, int page,
+ int item, boolean sync) throws IOException;
/**
* Search based upon a hierarchy of tags, or search for (sub)tags.
@@ -208,19 +230,22 @@ public interface Reader {
* the website to search on
* @param page
* the page of results to show (0 = request the maximum number of
- * pages, pages start at 1)
+ * pages, pages start at 1)
* @param item
* the item to select (0 = do not select a specific item but show
- * all the page, items start at 1)
+ * all the page, items start at 1)
+ * @param sync
+ * execute the process synchronously (wait until it is terminated
+ * before returning)
* @param tags
- * the tags display names to search for (this is a tag
+ * the tags indices to search for (this is a tag
* hierarchy, NOT a multiple tags choice)
*
* @throws IOException
* in case of I/O error
*/
public void searchTag(SupportType searchOn, int page, int item,
- String... tags) throws IOException;
+ boolean sync, Integer... tags) throws IOException;
/**
* Open the {@link Story} with an external reader (the program should be