diff options
Diffstat (limited to 'src/provider/CompositeResultListener.java')
-rw-r--r-- | src/provider/CompositeResultListener.java | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/provider/CompositeResultListener.java b/src/provider/CompositeResultListener.java index dc4a754..64a8a0b 100644 --- a/src/provider/CompositeResultListener.java +++ b/src/provider/CompositeResultListener.java @@ -1,8 +1,12 @@ package provider; import java.io.Closeable; +import java.io.Flushable; +import java.io.IOException; import java.util.ArrayList; import java.util.List; +import java.util.logging.Level; +import java.util.logging.Logger; import org.apache.commons.io.IOUtils; import org.json.JSONObject; @@ -11,7 +15,8 @@ import org.json.JSONObject; * * @author Peter Wu */ -public class CompositeResultListener implements ResultListener, Closeable { +public class CompositeResultListener implements ResultListener, Closeable, + Flushable { private final List<ResultListener> listeners; @@ -55,4 +60,17 @@ public class CompositeResultListener implements ResultListener, Closeable { } } } + + public void flush() { + for (ResultListener rl : listeners) { + if (rl instanceof Flushable) { + try { + ((Flushable) rl).flush(); + } catch (IOException ex) { + Logger.getLogger(rl.getClass().getName()) + .log(Level.SEVERE, "flush", ex); + } + } + } + } } |