Package hudson.util.io
Class RewindableFileOutputStream
- java.lang.Object
-
- java.io.OutputStream
-
- hudson.util.io.RewindableFileOutputStream
-
- All Implemented Interfaces:
Closeable
,Flushable
,AutoCloseable
- Direct Known Subclasses:
RewindableRotatingFileOutputStream
public class RewindableFileOutputStream extends OutputStream
OutputStream
that writes to a file.Allows the caller to rewind the stream and override previous content with fresh new data.
- Since:
- 2.18
-
-
Constructor Summary
Constructors Constructor Description RewindableFileOutputStream(File out)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
void
flush()
void
rewind()
In addition to close, ensure that the next "open" would truncate the file.void
write(byte[] b)
void
write(byte[] b, int off, int len)
void
write(int b)
-
Methods inherited from class java.io.OutputStream
nullOutputStream
-
-
-
-
Field Detail
-
out
protected final File out
-
-
Constructor Detail
-
RewindableFileOutputStream
public RewindableFileOutputStream(File out)
-
-
Method Detail
-
write
public void write(int b) throws IOException
- Specified by:
write
in classOutputStream
- Throws:
IOException
-
write
public void write(byte[] b) throws IOException
- Overrides:
write
in classOutputStream
- Throws:
IOException
-
write
public void write(byte[] b, int off, int len) throws IOException
- Overrides:
write
in classOutputStream
- Throws:
IOException
-
flush
public void flush() throws IOException
- Specified by:
flush
in interfaceFlushable
- Overrides:
flush
in classOutputStream
- Throws:
IOException
-
close
public void close() throws IOException
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Overrides:
close
in classOutputStream
- Throws:
IOException
-
rewind
public void rewind() throws IOException
In addition to close, ensure that the next "open" would truncate the file.- Throws:
IOException
-
-