diff options
Diffstat (limited to 'vespajlib/src/main/java/com/yahoo/text/JavaWriterWriter.java')
-rw-r--r-- | vespajlib/src/main/java/com/yahoo/text/JavaWriterWriter.java | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/vespajlib/src/main/java/com/yahoo/text/JavaWriterWriter.java b/vespajlib/src/main/java/com/yahoo/text/JavaWriterWriter.java new file mode 100644 index 00000000000..b89092e9780 --- /dev/null +++ b/vespajlib/src/main/java/com/yahoo/text/JavaWriterWriter.java @@ -0,0 +1,49 @@ +// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.text; + +import java.io.IOException; +import java.io.Writer; + +/** + * Wraps a simple java.lang.Writer. Of course you loose the possible optimizations. + * + * @author <a href="mailto:balder@yahoo-inc.com">Henning Baldersheim</a> + * @since 5.2 + */ +public final class JavaWriterWriter extends GenericWriter { + + final Writer out; + + public JavaWriterWriter(Writer writer) { + out = writer; + } + + @Override + public void write(char[] c, int offset, int bytes) { + try { + out.write(c, offset, bytes); + } catch (IOException e) { + throw new RuntimeException("Caught exception in Java writer.write.", e); + } + } + + @Override + public void flush() { + try { + out.flush(); + } catch (IOException e) { + throw new RuntimeException("Caught exception in Java writer.flush.", e); + } + } + + @Override + public void close() { + try { + out.close(); + } catch (IOException e) { + throw new RuntimeException("Caught exception in Java writer.close.", e); + } + } + public final Writer getWriter() { return out; } + +} |