]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/PlainTextWriter.java
Refactor output writers
[signal-cli] / src / main / java / org / asamk / signal / PlainTextWriter.java
index 91a4dbba42573db47dba26b4ca0a9f60e1e51333..92981e49a4a21407d7c674bccc613856a97b7726 100644 (file)
@@ -1,23 +1,18 @@
 package org.asamk.signal;
 
-import java.io.IOException;
+import java.util.function.Consumer;
 
-public interface PlainTextWriter {
+public interface PlainTextWriter extends OutputWriter {
 
-    void println(String format, Object... args) throws IOException;
+    void println(String format, Object... args);
 
     PlainTextWriter indentedWriter();
 
-    default void println() throws IOException {
+    default void println() {
         println("");
     }
 
-    default void indent(final WriterConsumer subWriter) throws IOException {
-        subWriter.consume(indentedWriter());
-    }
-
-    interface WriterConsumer {
-
-        void consume(PlainTextWriter writer) throws IOException;
+    default void indent(final Consumer<PlainTextWriter> subWriter) {
+        subWriter.accept(indentedWriter());
     }
 }