Package com.atlassian.confluence.util.io
Class CharacterCountingWriter
- java.lang.Object
-
- java.io.Writer
-
- com.atlassian.confluence.util.io.CharacterCountingWriter
-
- All Implemented Interfaces:
Closeable
,Flushable
,Appendable
,AutoCloseable
@NotThreadSafe public class CharacterCountingWriter extends Writer
AWriter
which delegates to anotherWriter
, and counts the number of characters that gets written to the delegate.The resulting count is only reliable if no exceptions get thrown by any of the methods.
- Since:
- 5.8
-
-
Constructor Summary
Constructors Constructor Description CharacterCountingWriter(Writer delegate)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Writer
append(char c)
Writer
append(CharSequence csq)
Writer
append(CharSequence csq, int start, int end)
void
close()
void
flush()
long
getCharacterCount()
void
write(@org.checkerframework.checker.nullness.qual.NonNull char[] cbuf)
void
write(@org.checkerframework.checker.nullness.qual.NonNull char[] cbuf, int off, int len)
void
write(int c)
void
write(@NonNull String str)
void
write(@NonNull String str, int off, int len)
-
Methods inherited from class java.io.Writer
nullWriter
-
-
-
-
Constructor Detail
-
CharacterCountingWriter
public CharacterCountingWriter(Writer delegate)
-
-
Method Detail
-
getCharacterCount
public long getCharacterCount()
-
write
public void write(int c) throws IOException
- Overrides:
write
in classWriter
- Throws:
IOException
-
write
public void write(@org.checkerframework.checker.nullness.qual.NonNull char[] cbuf) throws IOException
- Overrides:
write
in classWriter
- Throws:
IOException
-
write
public void write(@org.checkerframework.checker.nullness.qual.NonNull char[] cbuf, int off, int len) throws IOException
- Specified by:
write
in classWriter
- Throws:
IOException
-
write
public void write(@NonNull String str) throws IOException
- Overrides:
write
in classWriter
- Throws:
IOException
-
write
public void write(@NonNull String str, int off, int len) throws IOException
- Overrides:
write
in classWriter
- Throws:
IOException
-
append
public Writer append(CharSequence csq) throws IOException
- Specified by:
append
in interfaceAppendable
- Overrides:
append
in classWriter
- Throws:
IOException
-
append
public Writer append(CharSequence csq, int start, int end) throws IOException
- Specified by:
append
in interfaceAppendable
- Overrides:
append
in classWriter
- Throws:
IOException
-
append
public Writer append(char c) throws IOException
- Specified by:
append
in interfaceAppendable
- Overrides:
append
in classWriter
- Throws:
IOException
-
flush
public void flush() throws IOException
- Specified by:
flush
in interfaceFlushable
- Specified by:
flush
in classWriter
- Throws:
IOException
-
close
public void close() throws IOException
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in classWriter
- Throws:
IOException
-
-