X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Ffanfix%2Freader%2FReader.java;h=3ecf2470021b4f6d259db9ee8b80eac9ff8a266a;hb=a97f9702eae2b51ee64a163f92ec4d72a216e958;hp=fa170e44fcc64a3233ec2c09cba93fb31e84cb07;hpb=8b153400ae5ab24891446be1b3423ea17e71b49c;p=fanfix.git
diff --git a/src/be/nikiroo/fanfix/reader/Reader.java b/src/be/nikiroo/fanfix/reader/Reader.java
index fa170e4..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.
@@ -212,6 +234,9 @@ 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)
* @param tags
* the tags indices to search for (this is a tag
* hierarchy, NOT a multiple tags choice)
@@ -220,7 +245,7 @@ public interface Reader {
* in case of I/O error
*/
public void searchTag(SupportType searchOn, int page, int item,
- Integer... tags) throws IOException;
+ boolean sync, Integer... tags) throws IOException;
/**
* Open the {@link Story} with an external reader (the program should be